diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml
deleted file mode 100644
index 81be93137..000000000
--- a/.github/FUNDING.yml
+++ /dev/null
@@ -1,5 +0,0 @@
-# These are supported funding model platforms
-
-github: # [tangjinzhou]
-open_collective: ant-design-vue
-patreon: tangjinzhou
diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml
deleted file mode 100644
index 00c687e3b..000000000
--- a/.github/ISSUE_TEMPLATE/config.yml
+++ /dev/null
@@ -1,17 +0,0 @@
-blank_issues_enabled: true
-contact_links:
- - name: Create new issue
- url: https://vuecomponent.github.io/issue-helper/
- about: Please use the following link to create a new issue.
- - name: Patreon
- url: https://www.patreon.com/tangjinzhou
- about: Love Ant Design Vue? Please consider supporting us via Patreon.
- - name: Open Collective
- url: https://opencollective.com/ant-design-vue/donate
- about: Love Ant Design Vue? Please consider supporting us via Open Collective.
- - name: Paypal
- url: https://www.paypal.me/tangjinzhou
- about: Love Ant Design Vue? Please consider supporting us via Paypal.
- - name: 支付宝/微信 赞助
- url: https://aliyuncdn.antdv.com/alipay-and-wechat.png
- about: Ant Design Vue 的健康持续发展需要您的支持,🙏
diff --git a/.github/PULL_REQUEST_TEMPLATE/pr_cn.md b/.github/PULL_REQUEST_TEMPLATE/pr_cn.md
deleted file mode 100644
index d3b86ada6..000000000
--- a/.github/PULL_REQUEST_TEMPLATE/pr_cn.md
+++ /dev/null
@@ -1,50 +0,0 @@
-首先,感谢你的贡献! 😄
-
-新特性请提交至 feature 分支,其余可提交至 main 分支。在一个维护者审核通过后合并。请确保填写以下 pull request 的信息,谢谢!~
-
-[[English Template / 英文模板](./pr_en.md)]
-
-### 这个变动的性质是
-
-- [ ] 新特性提交
-- [ ] 日常 bug 修复
-- [ ] 站点、文档改进
-- [ ] 组件样式改进
-- [ ] TypeScript 定义更新
-- [ ] 重构
-- [ ] 代码风格优化
-- [ ] 分支合并
-- [ ] 其他改动(是关于什么的改动?)
-
-### 需求背景
-
-> 1. 描述相关需求的来源。
-> 2. 要解决的问题。
-> 3. 相关的 issue 讨论链接。
-
-### 实现方案和 API(非新功能可选)
-
-> 1. 基本的解决思路和其他可选方案。
-> 2. 列出最终的 API 实现和用法。
-> 3. 涉及 UI/交互变动需要有截图或 GIF。
-
-### 对用户的影响和可能的风险(非新功能可选)
-
-> 1. 这个改动对用户端是否有影响?影响的方面有哪些?
-> 2. 是否有可能隐含的 break change 和其他风险?
-
-### Changelog 描述(非新功能可选)
-
-> 1. 英文描述
-> 2. 中文描述(可选)
-
-### 请求合并前的自查清单
-
-- [ ] 文档已补充或无须补充
-- [ ] 代码演示已提供或无须提供
-- [ ] TypeScript 定义已补充或无须补充
-- [ ] Changelog 已提供或无须提供
-
-### 后续计划(非新功能可选)
-
-> 如果这个提交后面还有相关的其他提交和跟进信息,可以写在这里。
diff --git a/.github/PULL_REQUEST_TEMPLATE/pr_en.md b/.github/PULL_REQUEST_TEMPLATE/pr_en.md
deleted file mode 100644
index 06560cafe..000000000
--- a/.github/PULL_REQUEST_TEMPLATE/pr_en.md
+++ /dev/null
@@ -1,51 +0,0 @@
-First of all, thank you for your contribution! 😄
-
-New feature please send pull request to feature branch, and rest to main branch. Pull request will be merged after one of collaborators approve. Please makes sure that these form are filled before submitting your pull request, thank you!
-
-[[中文版模板 / Chinese template](./pr_cn.md)]
-
-### This is a ...
-
-- [ ] New feature
-- [ ] Bug fix
-- [ ] Site / document update
-- [ ] Component style update
-- [ ] TypeScript definition update
-- [ ] Refactoring
-- [ ] Code style optimization
-- [ ] Branch merge
-- [ ] Other (about what?)
-
-### What's the background?
-
-> 1. Describe the source of requirement.
-> 2. Resolve what problem.
-> 3. Related issue link.
-
-### API Realization (Optional if not new feature)
-
-> 1. Basic thought of solution and other optional proposal.
-> 2. List final API realization and usage sample.
-> 3. GIF or snapshot should be provided if includes UI/interactive modification.
-
-### What's the effect? (Optional if not new feature)
-
-> 1. Does this PR affect user? Which part will be affected?
-> 2. What will say in changelog?
-> 3. Does this PR contains potential break change or other risk?
-
-### Changelog description (Optional if not new feature)
-
-> 1. English description
-> 2. Chinese description (optional)
-
-### Self Check before Merge
-
-- [ ] Doc is updated/provided or not needed
-- [ ] Demo is updated/provided or not needed
-- [ ] TypeScript definition is updated/provided or not needed
-- [ ] Changelog is provided or not needed
-
-### Additional Plan? (Optional if not new feature)
-
-> If this PR related with other PR or following info. You can type here.
diff --git a/.github/issue-close-app.yml b/.github/issue-close-app.yml
deleted file mode 100644
index a0e728635..000000000
--- a/.github/issue-close-app.yml
+++ /dev/null
@@ -1,14 +0,0 @@
-comment: "Your issue has been closed because it does not conform to our issue requirements. Please use the [Issue Helper](https://vuecomponent.github.io/issue-helper/) to create an issue, thank you! 为了能够进行高效沟通,我们对 issue 有一定的格式要求,你的 issue 因为不符合要求而被自动关闭。你可以通过 [issue 助手](https://vuecomponent.github.io/issue-helper/) 来创建 issue 以方便我们定位错误。谢谢配合!"
-issueConfigs:
-- content:
- - ""
-- content:
- - "Version"
- - "Environment"
- - "Reproduction link"
- - "Steps to reproduce"
- - "What is expected"
- - "What is actually happening"
-- content:
- - "What problem does this feature solve"
- - "What does the proposed API look like"
diff --git a/.github/workflows/codecov.yml b/.github/workflows/codecov.yml
deleted file mode 100644
index 5938a11d3..000000000
--- a/.github/workflows/codecov.yml
+++ /dev/null
@@ -1,76 +0,0 @@
-name: codecov
-
-on: [push]
-
-jobs:
- setup:
- runs-on: ubuntu-latest
- steps:
- - name: checkout
- uses: actions/checkout@v2
-
- - name: cache package-lock.json
- uses: actions/cache@v1
- with:
- path: package-temp-dir
- key: lock-${{ github.sha }}
-
- - name: create package-lock.json
- run: npm i --package-lock-only --ignore-scripts
-
- - name: hack for singe file
- run: |
- if [ ! -d "package-temp-dir" ]; then
- mkdir package-temp-dir
- fi
- cp package-lock.json package-temp-dir
-
- - name: cache node_modules
- id: node_modules_cache_id
- uses: actions/cache@v1
- with:
- path: node_modules
- key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }}
-
- - name: install
- if: steps.node_modules_cache_id.outputs.cache-hit != 'true'
- run: npm ci
-
- node:
- runs-on: ubuntu-latest
- steps:
- - name: checkout
- uses: actions/checkout@v2
- # with:
- # token: ${{ secrets.ACCESS_TOKEN }}
- # - name: Checkout submodules
- # uses: actions/checkout@v2
- # with:
- # repository: tangjinzhou/antdv-demo
- # token: ${{ secrets.ACCESS_TOKEN }}
- # path: antdv-demo
- # submodules: true
-
- - name: restore cache from package-lock.json
- uses: actions/cache@v1
- with:
- path: package-temp-dir
- key: lock-${{ github.sha }}
-
- - name: restore cache from node_modules
- uses: actions/cache@v1
- with:
- path: node_modules
- key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }}
-
- - name: Generate coverage report
- run: npm test
- env:
- COVERAGE: "true"
-
- - name: Upload coverage to Codecov
- uses: codecov/codecov-action@v1
- with:
- token: ${{ secrets.CODECOV_TOKEN }}
-
- needs: setup
diff --git a/.github/workflows/emoji-helper.yml b/.github/workflows/emoji-helper.yml
deleted file mode 100644
index 8965a1a29..000000000
--- a/.github/workflows/emoji-helper.yml
+++ /dev/null
@@ -1,14 +0,0 @@
-name: Emoji Helper
-
-on:
- release:
- types: [published]
-
-jobs:
- emoji:
- runs-on: ubuntu-latest
- steps:
- - uses: actions-cool/emoji-helper@v1.0.0
- with:
- type: 'release'
- emoji: '+1, laugh, heart, hooray, rocket, eyes'
diff --git a/.github/workflows/issue-close-require.yml b/.github/workflows/issue-close-require.yml
deleted file mode 100644
index 5149c3824..000000000
--- a/.github/workflows/issue-close-require.yml
+++ /dev/null
@@ -1,23 +0,0 @@
-name: Issue Close Require
-
-on:
- schedule:
- - cron: "0 0 * * *"
-
-permissions:
- contents: read
-
-jobs:
- close-issues:
- runs-on: ubuntu-latest
- steps:
- - name: need reproduce
- uses: actions-cool/issues-helper@v3
- with:
- actions: 'close-issues'
- labels: '🤔 Need Reproduce'
- inactive-day: 7
- body: |
- Since the issue was labeled with `Need Reproduce`, but no response in 7 days. This issue will be closed. If you have any questions, you can comment and reply.
-
- 由于该 issue 被标记为需要复现信息,却 7 天未收到回应。现关闭 issue,若有任何问题,可评论回复。
diff --git a/.github/workflows/issue-labeled.yml b/.github/workflows/issue-labeled.yml
deleted file mode 100644
index ad5aac395..000000000
--- a/.github/workflows/issue-labeled.yml
+++ /dev/null
@@ -1,76 +0,0 @@
-name: Issue Labeled
-
-on:
- issues:
- types: [labeled]
-
-permissions:
- contents: read
-
-jobs:
- issue-labeled:
- permissions:
- issues: write # for actions-cool/issues-helper to update issues
- pull-requests: write # for actions-cool/issues-helper to update PRs
- runs-on: ubuntu-latest
- steps:
- - name: Need Reproduce
- if: github.event.label.name == '🤔 Need Reproduce'
- uses: actions-cool/issues-helper@v3
- with:
- actions: 'create-comment'
- token: ${{ secrets.GITHUB_TOKEN }}
- issue-number: ${{ github.event.issue.number }}
- body: |
- Hello @${{ github.event.issue.user.login }}. Please provide a online reproduction by forking this [link for vue2](https://codesandbox.io/s/2wpk21kzvr)、 [link for vue3](https://codesandbox.io/s/agitated-franklin-1w72v) or a minimal GitHub repository. Make sure to choose the correct version.
-
- 你好 @${{ github.event.issue.user.login }}, 我们需要你提供一个在线的重现实例以便于我们帮你排查问题。你可以通过点击 [此处 for vue2](https://codesandbox.io/s/2wpk21kzvr)、 [此处 for vue3](https://codesandbox.io/s/agitated-franklin-1w72v) 创建一个 codesandbox 或者提供一个最小化的 GitHub 仓库。请确保选择准确的版本。
-
- - name: help wanted
- if: github.event.label.name == 'help wanted'
- uses: actions-cool/issues-helper@v3
- with:
- actions: 'create-comment'
- token: ${{ secrets.GITHUB_TOKEN }}
- issue-number: ${{ github.event.issue.number }}
- body: |
- Hello @${{ github.event.issue.user.login }}. We totally like your proposal/feedback, welcome to send us a Pull Request for it. Please send your Pull Request to proper branch, fill the Pull Request Template here, provide changelog/TypeScript/documentation/test cases if needed and make sure CI passed, we will review it soon. We appreciate your effort in advance and looking forward to your contribution!
-
- 你好 @${{ github.event.issue.user.login }},我们完全同意你的提议/反馈,欢迎直接在此仓库创建一个 Pull Request 来解决这个问题。请将 Pull Request 发到正确的分支,务必填写 Pull Request 内的预设模板,提供改动所需相应的 changelog、TypeScript 定义、测试用例、文档等,并确保 CI 通过,我们会尽快进行 Review,提前感谢和期待您的贡献。
-
- - name: Usage
- if: github.event.label.name == 'Usage'
- uses: actions-cool/issues-helper@v3
- with:
- actions: 'create-comment, close-issue'
- token: ${{ secrets.GITHUB_TOKEN }}
- issue-number: ${{ github.event.issue.number }}
- body: |
- Hello @${{ github.event.issue.user.login }}, we use GitHub issues to trace bugs or discuss plans of Ant Design Vue. So, please don't ask usage questions here. You can try to open a new discussion in [antdv discussions](https://github.com/vueComponent/ant-design-vue/discussions), select `Q&A` to ask questions, also can ask questions on [Stack Overflow](http://stackoverflow.com/questions/) or [Segment Fault](https://segmentfault.com).
-
- 你好 @${{ github.event.issue.user.login }},Ant Design Vue Issue 板块是用于 bug 反馈与需求讨论的地方。请勿询问如何使用的问题,你可以试着在 [antdv discussions](https://github.com/vueComponent/ant-design-vue/discussions) 新开一个 discussion,选择 `Q&A` 类别进行提问,也可以在 [Stack Overflow](http://stackoverflow.com/questions/) 或者 [Segment Fault](https://segmentfault.com/) 中提问。
-
- - name: 1.x
- if: github.event.label.name == '1.x'
- uses: actions-cool/issues-helper@v3
- with:
- actions: 'create-comment,close-issue'
- token: ${{ secrets.GITHUB_TOKEN }}
- issue-number: ${{ github.event.issue.number }}
- body: |
- Hi @${{ github.event.issue.user.login }}. Current version (1.x) is off the maintenance period. We may not accept pull request or fix bug with it anymore. This topic will be auto closed.
-
- 你好 @${{ github.event.issue.user.login }},当前版本(1.x)已经过了维护期。我们不会再接受对其的相关 PR 与 issue。当前 topic 会被自动关闭。
-
- - name: 2.x
- if: github.event.label.name == '2.x'
- uses: actions-cool/issues-helper@v3
- with:
- actions: 'create-comment,close-issue'
- token: ${{ secrets.GITHUB_TOKEN }}
- issue-number: ${{ github.event.issue.number }}
- body: |
- Hi @${{ github.event.issue.user.login }}. Current version (2.x) is off the maintenance period. We may not accept pull request or fix bug with it anymore. This topic will be auto closed.
-
- 你好 @${{ github.event.issue.user.login }},当前版本(2.x)已经过了维护期。我们不会再接受对其的相关 PR 与 issue。当前 topic 会被自动关闭。
-
diff --git a/.github/workflows/issue-open-check.yml b/.github/workflows/issue-open-check.yml
deleted file mode 100644
index 5857f0bd1..000000000
--- a/.github/workflows/issue-open-check.yml
+++ /dev/null
@@ -1,34 +0,0 @@
-name: Issue Open Check
-
-on:
- issues:
- types: [opened]
-
-
-permissions:
- contents: read
-
-jobs:
- issue-open-check:
- permissions:
- contents: read # for visiky/dingtalk-release-notify to get latest release
- issues: write # for actions-cool/issues-helper to update issues
- pull-requests: write # for actions-cool/issues-helper to update PRs
- runs-on: ubuntu-latest
- steps:
- - uses: actions-cool/check-user-permission@v1.0.0
- id: checkUser
- with:
- require: 'write'
-
- - name: check invalid
- if: (contains(github.event.issue.body, 'issue-helper') == false) && (steps.checkUser.outputs.result == 'false')
- uses: actions-cool/issues-helper@v3
- with:
- actions: 'create-comment,add-labels,close-issue'
- issue-number: ${{ github.event.issue.number }}
- labels: 'Invalid'
- body: |
- Hello @${{ github.event.issue.user.login }}, your issue has been closed because it does not conform to our issue requirements. Please use the [Issue Helper](https://vuecomponent.github.io/issue-helper/) to create an issue, thank you!
-
- 你好 @${{ github.event.issue.user.login }},为了能够进行高效沟通,我们对 issue 有一定的格式要求,你的 issue 因为不符合要求而被自动关闭。你可以通过 [issue 助手](https://vuecomponent.github.io/issue-helper/) 来创建 issue 以方便我们定位错误。谢谢配合!
diff --git a/.github/workflows/lock-issue.yml b/.github/workflows/lock-issue.yml
deleted file mode 100644
index dfac96647..000000000
--- a/.github/workflows/lock-issue.yml
+++ /dev/null
@@ -1,23 +0,0 @@
-name: 'Lock threads'
-
-on:
- schedule:
- - cron: '0 0 * * *'
-
-jobs:
- lock:
- runs-on: ubuntu-latest
- steps:
- - uses: dessant/lock-threads@v2
- with:
- github-token: ${{ github.token }}
- issue-lock-inactive-days: '365'
- issue-lock-labels: 'outdated'
- issue-lock-comment: >
- This issue has been automatically locked since there
- has not been any recent activity after it was closed.
- Please open a new issue for related bugs.
- pr-lock-comment: >
- This pull request has been automatically locked since there
- has not been any recent activity after it was closed.
- Please open a new issue for related bugs.
\ No newline at end of file
diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml
deleted file mode 100644
index 884d3dced..000000000
--- a/.github/workflows/stale.yml
+++ /dev/null
@@ -1,19 +0,0 @@
-name: "Close stale issues"
-
-on:
- schedule:
- - cron: "30 1 * * *"
-
-jobs:
- stale:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/stale@v3
- with:
- repo-token: ${{ secrets.GITHUB_TOKEN }}
- stale-issue-message: 'This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 7 days'
- stale-pr-message: 'This PR is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 7 days'
- exempt-issue-labels: 'bug,enhancement'
- days-before-stale: 60
- days-before-close: 7
-
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
deleted file mode 100644
index a37ba8fe0..000000000
--- a/.github/workflows/test.yml
+++ /dev/null
@@ -1,115 +0,0 @@
-name: test
-
-on: [push, pull_request]
-
-jobs:
- setup:
- runs-on: ubuntu-latest
- steps:
- - name: checkout
- uses: actions/checkout@v2
-
- - name: cache package-lock.json
- uses: actions/cache@v2
- with:
- path: package-temp-dir
- key: lock-${{ github.sha }}
-
- - name: create package-lock.json
- run: npm i --package-lock-only --ignore-scripts
-
- - name: hack for singe file
- run: |
- if [ ! -d "package-temp-dir" ]; then
- mkdir package-temp-dir
- fi
- cp package-lock.json package-temp-dir
-
- - name: cache node_modules
- id: node_modules_cache_id
- uses: actions/cache@v2
- with:
- path: node_modules
- key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }}
-
- - name: install
- if: steps.node_modules_cache_id.outputs.cache-hit != 'true'
- run: npm ci
-
- compile:
- runs-on: ubuntu-latest
- steps:
- - name: checkout
- uses: actions/checkout@v2
-
- - name: restore cache from package-lock.json
- uses: actions/cache@v2
- with:
- path: package-temp-dir
- key: lock-${{ github.sha }}
-
- - name: restore cache from node_modules
- uses: actions/cache@v2
- with:
- path: node_modules
- key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }}
-
- - name: cache lib
- uses: actions/cache@v2
- with:
- path: lib
- key: lib-${{ github.sha }}
-
- - name: cache es
- uses: actions/cache@v2
- with:
- path: es
- key: es-${{ github.sha }}
-
- - name: compile
- run: npm run compile
- needs: setup
-
- lint:
- runs-on: ubuntu-latest
- steps:
- - name: checkout
- uses: actions/checkout@v2
-
- - name: restore cache from package-lock.json
- uses: actions/cache@v2
- with:
- path: package-temp-dir
- key: lock-${{ github.sha }}
-
- - name: restore cache from node_modules
- uses: actions/cache@v2
- with:
- path: node_modules
- key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }}
-
- - name: lint
- run: npm run lint
- needs: setup
-
- node:
- runs-on: ubuntu-latest
- steps:
- - name: checkout
- uses: actions/checkout@v2
-
- - name: restore cache from package-lock.json
- uses: actions/cache@v2
- with:
- path: package-temp-dir
- key: lock-${{ github.sha }}
-
- - name: restore cache from node_modules
- uses: actions/cache@v2
- with:
- path: node_modules
- key: node_modules-${{ hashFiles('**/package-temp-dir/package-lock.json') }}
-
- - name: test
- run: npm test
- needs: setup
diff --git a/.husky/.gitignore b/.husky/.gitignore
deleted file mode 100644
index 31354ec13..000000000
--- a/.husky/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-_
diff --git a/BACKERS.md b/BACKERS.md
deleted file mode 100644
index af4850a5e..000000000
--- a/BACKERS.md
+++ /dev/null
@@ -1,55 +0,0 @@
-
Sponsors & Backers
-
-
-
-企业赞助
-
-
-
-
-Sponsors
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Backers
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Patreon
-
-
-
-
-
-支付宝/微信
-
-### 使用支付宝/微信的赞助的用户,如需要添加名单,赞助后可发 github 账号到邮箱(antdv@foxmail.com)
-
-- [fastgoo](https://github.com/fastgoo)
-- [sendya](https://github.com/sendya)
-- [limichange](https://github.com/limichange)
-- [LvHang](https://github.com/184005306)
diff --git a/CHANGELOG.en-US.md b/CHANGELOG.en-US.md
deleted file mode 100644
index 84d4ffa90..000000000
--- a/CHANGELOG.en-US.md
+++ /dev/null
@@ -1,239 +0,0 @@
-# Change Log (The following content is translated by Google)
-
-`ant-design-vue` strictly follows [Semantic Versioning 2.0.0](http://semver.org/).
-
-#### Release Schedule
-
-- Weekly release: patch version at the end of every week for routine bugfix (anytime for urgent bugfix).
-- Monthly release: minor version at the end of every month for new features.
-- Major version release is not included in this schedule for breaking change and new features.
-
----
-
-## 4.2.6
-
-- 🐞 Fix Modal component aria-hidden error problem under chrome [#7823](https://github.com/vueComponent/ant-design-vue/issues/7823)
-- 🐞 Fix the problem that the built-in input method of Safari automatically fills in the decimal point when inputting Chinese [#7918](https://github.com/vueComponent/ant-design-vue/issues/7918)
-- 🐞 Fix InputNumber component disabled style problem [#7776](https://github.com/vueComponent/ant-design-vue/issues/7776)
-- 🐞 Fix Select cannot lose focus problem [#7819](https://github.com/vueComponent/ant-design-vue/issues/7819)
-
-## 4.2.5
-
-- 🐞 Fix Empty component memory leak problem
-- 🐞 Fix Image width & height property not working problem
-
-## 4.2.4
-
-- 🐞 Fix Wave memory leak problem
-
-## 4.2.3
-
-- 🌟 TourStep custom Button, support function children [#7628](https://github.com/vueComponent/ant-design-vue/pull/7628)
-- 🐞 Fix the problem that the input value is hidden in Select and Cascader search multi-select mode [#7640](https://github.com/vueComponent/ant-design-vue/issues/7640)
-
-## 4.2.2
-
-- 🐞 Fix TreeSelect placeholder slot invalid [#7545](https://github.com/vueComponent/ant-design-vue/issues/7545)
-- 🐞 Fix Tree slot responsive invalid issue [40ad45](https://github.com/vueComponent/ant-design-vue/commit/40ad45bc05b2bf9d0a2445d9f6ff365468ba90b7)
-- 🐞 Fix FloatButton target type error issue [#7576](https://github.com/vueComponent/ant-design-vue/issues/7576)
-- 🐞 Fix FormItem className error issue [#7582](https://github.com/vueComponent/ant-design-vue/issues/7582)
-- 🐞 Fix Input Cannot input problem under lazy [#7543](https://github.com/vueComponent/ant-design-vue/issues/7543)
-- 🐞 Fix the problem that placeholder is not hidden when inputting Chinese in Select [#7611](https://github.com/vueComponent/ant-design-vue/issues/7611)
-- 🐞 Fix the problem that the pop-up window flashes when clicking the preset option in DatePicker [#7550](https://github.com/vueComponent/ant-design-vue/issues/7550)
-
-## 4.2.1
-
-- 🐞 fix Input clear action error [#7523](https://github.com/vueComponent/ant-design-vue/issues/7523)
-
-## 4.2.0
-
-- 🌟 Optimize the textColor change when the layout component switches to dark mode [#7498](https://github.com/vueComponent/ant-design-vue/issues/7498)
-- 🌟 Tooltip added arrow hidden configuration [#7459](https://github.com/vueComponent/ant-design-vue/issues/7459)
-- 🌟 Optimize Table hover performance [#7451](https://github.com/vueComponent/ant-design-vue/issues/7451)
-- 🐞 Fixed the problem of changing the model during useForm verification, resulting in verification errors [#ffd4d8](https://github.com/vueComponent/ant-design-vue/commit/ffd4d8fe927f9ea40cbb6358ad997c447bd9a74e)
-- 🐞 Fix Tabs folding calculation error issue [#7491](https://github.com/vueComponent/ant-design-vue/issues/7491)
-- 🐞 Fix Qrcode missing type hint issue [#7502](https://github.com/vueComponent/ant-design-vue/issues/7502)
-- 🐞 Fix Menu rendering error under SSR [#7349](https://github.com/vueComponent/ant-design-vue/issues/7349)
-- 🐞 Fix Select and Cascader rendering errors under SSR [#7377](https://github.com/vueComponent/ant-design-vue/issues/7377)
-- 🐞 Fix AutoComplete missing option slot declaration issue [#7396](https://github.com/vueComponent/ant-design-vue/issues/7396)
-- 🐞 Fix Textarea autoSize not taking effect [#7478](https://github.com/vueComponent/ant-design-vue/issues/7478)
-- 🐞 Fix Pagination’s Enter key triggering two page turns [#7368](https://github.com/vueComponent/ant-design-vue/issues/7368)
-- 🐞 Fix the problem of Chinese input in the input box [#7391](https://github.com/vueComponent/ant-design-vue/issues/7391)[#7516](https://github.com/vueComponent/ant- design-vue/issues/7516)
-- 🐞 Fix Carousel beforeChange current parameter error issue [#7419](https://github.com/vueComponent/ant-design-vue/issues/7419)
-
-## 4.1.2
-
-- 🐞 Fix table resize error reporting under vue 3.4 [#7291](https://github.com/vueComponent/ant-design-vue/issues/7291)
-- 🐞 Fix the problem that the Segmented title attribute is not displayed [#7302](https://github.com/vueComponent/ant-design-vue/issues/7302)
-
-## 4.1.1
-
-- 🌟 QRcode adds scanned status [#7242](https://github.com/vueComponent/ant-design-vue/issues/7242)
-- 🐞 Fix css prefix issue in nuxt [#7256](https://github.com/vueComponent/ant-design-vue/issues/7256)
-- 🐞 Fix dropdown closing issue [#7246](https://github.com/vueComponent/ant-design-vue/issues/7246)
-- 🐞 Fix divider vertical dashed not display issue [#7218](https://github.com/vueComponent/ant-design-vue/issues/7218)
-- 🐞 Fix hook mode message console warning issue [#7281](https://github.com/vueComponent/ant-design-vue/issues/7281)
-- 🐞 Fix table expansion error reporting under vue 3.4 [#7265](https://github.com/vueComponent/ant-design-vue/issues/7265)
-- 🐞 Fix table group filter status error issue [#7233](https://github.com/vueComponent/ant-design-vue/issues/7233)
-
-## 4.1.0
-
-- 🐞 support vue 3.4 [#7239](https://github.com/vueComponent/ant-design-vue/issues/7239)
-
-## 4.0.8
-
-- 🐞 Fix theme responsiveness failure issue under Nuxt [#7180](https://github.com/vueComponent/ant-design-vue/issues/7180)
-- 🐞 Fix error reporting caused by Wave [#7108](https://github.com/vueComponent/ant-design-vue/issues/7108)
-- 🐞 Fix Upload disabled inheritance issue [#7110](https://github.com/vueComponent/ant-design-vue/issues/7110)
-- 🐞 Fix Tooltip popupAlign not taking effect [#7112](https://github.com/vueComponent/ant-design-vue/issues/7112)
-- 🐞 Fix Typography flashing problem [#7146](https://github.com/vueComponent/ant-design-vue/issues/7146)
-- 🐞 Fix the issue that RangePicker prevIcon nextIcon does not take effect [#7127](https://github.com/vueComponent/ant-design-vue/issues/7127)
-- 🐞 Fixed the issue of watermark not monitoring child element changes [#7149](https://github.com/vueComponent/ant-design-vue/issues/7149)
-- 🐞 Fix Menu animation missing issue [#7130](https://github.com/vueComponent/ant-design-vue/issues/7130)
-- 🐞 Fix the cursor change issue when TextArea autosize [#7121](https://github.com/vueComponent/ant-design-vue/issues/7121)
-
-## 4.0.7
-
-- 🌟 Added Flex component [#7052](https://github.com/vueComponent/ant-design-vue/issues/7052)
-- 🌟 ConfigProvider adds wave configuration [#7036](https://github.com/vueComponent/ant-design-vue/issues/7036)
-- 🌟 Watermark supports dark mode [#7067](https://github.com/vueComponent/ant-design-vue/issues/7067)
-- 🐞 Fix Space duplicate Key problem [#7048](https://github.com/vueComponent/ant-design-vue/issues/7048)
-- 🐞 Fix Upload disabled priority error issue [#7047](https://github.com/vueComponent/ant-design-vue/issues/7047)
-- 🐞 Fix Carousel rendering error in jsx [#7077](https://github.com/vueComponent/ant-design-vue/issues/7077)
-- 🐞 Fix Message offset position problem [#7093](https://github.com/vueComponent/ant-design-vue/issues/7093)
-- 🐞 Fix the problem of animation failure when using Collapse custom prefix [#7074](https://github.com/vueComponent/ant-design-vue/issues/7074)
-
-## 4.0.6
-
-- 🐞 Fix the Dropdown onVisibleChange failure issue introduced in 4.0.4 [#7031](https://github.com/vueComponent/ant-design-vue/issues/7031)
-
-## 4.0.5
-
-- 🐞 Fix cssinjs performance issue [#7023](https://github.com/vueComponent/ant-design-vue/issues/7023)
-
-## 4.0.4
-
-- 🌟 Added esm target file
-- 🌟 Added tooltip attribute to FormItem [#7014](https://github.com/vueComponent/ant-design-vue/issues/7014)
-- 🐞 Fix useMessage getContainer not taking effect [#6942](https://github.com/vueComponent/ant-design-vue/issues/6942)
-- 🐞 Fix the problem of Image triggering onPreviewVisibleChange event multiple times [#6945](https://github.com/vueComponent/ant-design-vue/issues/6945)
-- 🐞 Fix the problem that Checkbox global disabled does not take effect [#6970](https://github.com/vueComponent/ant-design-vue/issues/6970)
-- 🐞 Fix Drawer contentWrapperStyle not taking effect [#6983](https://github.com/vueComponent/ant-design-vue/issues/6983)
-- 🐞 Optimize Select Dropdown and other drop-down list scroll bar display hidden logic [#6987](https://github.com/vueComponent/ant-design-vue/issues/6987)
-- 🐞 Fix the problem of hiding when there are components such as input in the drop-down list such as Select Dropdown [#7020](https://github.com/vueComponent/ant-design-vue/issues/7020)
-
-## 4.0.3
-
-- 🐞 Fix the problem of style loss under shadow Dom [#6912](https://github.com/vueComponent/ant-design-vue/issues/6912)
-- 🐞 Upgrade Icon dependency and fix icon css missing problem under shadow Dom [#6914](https://github.com/vueComponent/ant-design-vue/issues/6914)
-
-## 4.0.2
-
-- 🐞 Fix useMessage causing body to be removed [#6880](https://github.com/vueComponent/ant-design-vue/issues/6880)
-- 🐞 Fix the problem that the water ripple effect does not disappear after Button loading is switched [#6895](https://github.com/vueComponent/ant-design-vue/issues/6895)
-- 🐞 Fixed the problem that flip does not reset after Image is closed [#6913](https://github.com/vueComponent/ant-design-vue/issues/6913)
-- 🐞 Fix ImageGroup animation effect loss problem [#6898](https://github.com/vueComponent/ant-design-vue/issues/6898)
-- 🐞 Fix Modal missing onUpdate:open attribute declaration [#6876](https://github.com/vueComponent/ant-design-vue/issues/6876)
-- 🐞 Fixed the issue of multiple clicks being triggered at the edge of Transfer's Checkbox [#6902](https://github.com/vueComponent/ant-design-vue/issues/6902)
-
-## 4.0.1
-
-- 🌟 FloatButton add Badge support [#6738](https://github.com/vueComponent/ant-design-vue/issues/6738)
-- 🌟 Image preview zoom in and out sensitivity adjustment [#6784](https://github.com/vueComponent/ant-design-vue/issues/6784)
-- 🌟 Add flip feature to Image [#6785](https://github.com/vueComponent/ant-design-vue/issues/6785)
-- 🌟 Add App component to provide context [#6735](https://github.com/vueComponent/ant-design-vue/issues/6735)
-- 🌟 Style extraction feature for SSR [#6757](https://github.com/vueComponent/ant-design-vue/issues/6757)
-- 🌟 Support px2rem [#6817](https://github.com/vueComponent/ant-design-vue/issues/6817)
-- 🌟 Tag supports borderless mode [#6819](https://github.com/vueComponent/ant-design-vue/issues/6819)
-- 🌟 Avatar group mode supports shape [#6822](https://github.com/vueComponent/ant-design-vue/issues/6822)
-- 🌟 AutoComplete supports borderless and custom clearIcon [#6829](https://github.com/vueComponent/ant-design-vue/issues/6829)
-- 🌟 InputPassword supports controlled visible [#6863](https://github.com/vueComponent/ant-design-vue/issues/6863)
-- 🐞 Fix the style misalignment problem when InputGroup is large [#6866](https://github.com/vueComponent/ant-design-vue/issues/6866)
-- 🐞 Fix the problem that Checkable Tag cannot customize class [#6854](https://github.com/vueComponent/ant-design-vue/issues/6854)
-- 🐞 Fix the rendering problem in Tabs animation mode [#6855](https://github.com/vueComponent/ant-design-vue/issues/6855)
-- 🐞 Fix the problem that the Image height attribute does not take effect [#6840](https://github.com/vueComponent/ant-design-vue/issues/6840)
-- 🐞 Fix InputNumber trigger mouseup event [#6772](https://github.com/vueComponent/ant-design-vue/issues/6772)
-- 🐞 Fix the Dropdown style problem when Tabs are collapsed [#6757](https://github.com/vueComponent/ant-design-vue/issues/6757)
-- 🐞 Fix Table expandedRowRender property does not take effect [#6783](https://github.com/vueComponent/ant-design-vue/issues/6783)
-- 🐞 Fix dayjs not packaged into dist [#6767](https://github.com/vueComponent/ant-design-vue/issues/6767)
-- 🐞 Fix clipPath browser compatibility issue [#6770](https://github.com/vueComponent/ant-design-vue/issues/6770)
-- 🐞 Fix Carousel autoplay responsive problem [#6768](https://github.com/vueComponent/ant-design-vue/issues/6768)
-- 🐞 Fix PageHeader ghost style problem [#6761](https://github.com/vueComponent/ant-design-vue/issues/6761)
-- 🐞 Fix Checkbox not triggering Form validation [#6741](https://github.com/vueComponent/ant-design-vue/issues/6741)
-- 🐞 Fix the problem that the Input prefix attribute does not take effect [#6810](https://github.com/vueComponent/ant-design-vue/issues/6810)
-- 🐞 Fix Badge style problem in Avatar [#6874](https://github.com/vueComponent/ant-design-vue/issues/6874)
-
-## 4.0
-
-### 🔥🔥🔥 4.0 official version released 🔥🔥🔥
-
-### Design specification adjustment
-
-- Basic rounded corner adjustment, changed from unified `2px` to four-level rounded corners, which are `2px` `4px` `6px` `8px` respectively, which are applied to different scenarios, for example, the rounded corners of the default size Button are adjusted to `6px`.
-- Main color adjustment, changed from `#1890ff` to `#1677ff`.
-- Overall shadow adjustment, from the original three-level shadow adjustment to two levels, which are used for resident page components (such as Card) and interactive feedback (such as Dropdown).
-- Adjust the internal spacing of some components.
-- Overall de-wireframing.
-
-### Add 5 new components
-
-- Segmented segment controller
-- WaterMark watermark
-- QrCode QR code
-- FloatButton floating button
-- Tour roaming guide
-
-### Technical adjustments
-
-- Deprecated less and adopted CSS-in-JS to better support dynamic themes.
- - All less files are removed, and less variables no longer support leaking.
- - css files are no longer included in the product. Since CSS-in-JS supports importing on demand, the original `ant-design-vue/dist/antd.css` has also been removed. If you need to reset some basic styles, please import `ant-design-vue/dist/reset .css`.
- - If you need to reset the style of the component and don't want to introduce `ant-design-vue/dist/reset.css` to pollute the global style, you can try to use [App component](/components/app), to solve the problem that native elements do not have ant-design-vue specification style.
-- Removed css variables and dynamic theme schemes built on top of it.
-- LocaleProvider has been deprecated in 3.x (use ` ` instead), we have completely removed the related directories `ant-design-vue/es/locale-provider`, `ant- design-vue/lib/locale-provider`.
-- `babel-plugin-import` is no longer supported, CSS-in-JS itself has the ability to load on demand, no longer need plug-in support.
-
-#### Component API adjustments
-
-- The classname API of the component popup is unified to `popupClassName`, and similar APIs such as `dropdownClassName` will be replaced.
-
- - AutoComplete component
- - Cascader component
- - Select component
- - TreeSelect component
- - TimePicker component
- - DatePicker component
- - Mentions component
-
-- The controlled visibility API of the component popup is unified as `open`, and `visible` and other similar APIs will be replaced.
- - Drawer component `visible` becomes `open`.
- - Modal component `visible` becomes `open`.
- - Dropdown component `visible` becomes `open`.
- - Tooltip component `visible` becomes `open`.
- - Tag component `visible` has been removed.
- - Slider component `tooltip` related API converges to `tooltip` property.
- - Table component `filterDropdownVisible` changed to `filterDropdownOpen`.
-- `getPopupContainer`: All `getPopupContainer` needs to ensure that the returned div is unique.
-- Drawer `style` and `class` are migrated to the Drawer popup area, and the original attributes are replaced by `rootClassName` and `rootStyle`.
-
-#### Component refactoring and removal
-
-- Remove the `locale-provider` directory. `LocaleProvider` has been removed in v4, please use `ConfigProvider` instead.
-
-- Remove `xxxl` breakpoint attribute in grid layout. `xxxl` attribute has been removed in v4, you can use [theme customization](/docs/vue/customize-theme) to modify `screen[XS|SM|MD|LG|XL|XXL]` to modify the break Point value achieved.
-
-- The BackTop component was deprecated in `4.0.0` and moved to the FloatButton floating button. If needed, it can be imported from FloatButton.
-
-### [Upgrade Guide](/docs/vue/migration-v4)
-
-## 3.x
-
-Visit [GitHub](https://github.com/vueComponent/ant-design-vue/blob/3.x/CHANGELOG.zh-CN.md) `3.x` Change Log。
-
-## 2.x
-
-Visit [GitHub](https://github.com/vueComponent/ant-design-vue/blob/2.x/CHANGELOG.zh-CN.md) `2.x` Change Log。
-
-## 1.x
-
-Visit [GitHub](https://github.com/vueComponent/ant-design-vue/blob/1.x/CHANGELOG.en-US.md) to read change logs from `0.x` to `1.x`.
diff --git a/CHANGELOG.zh-CN.md b/CHANGELOG.zh-CN.md
deleted file mode 100644
index c9b50d963..000000000
--- a/CHANGELOG.zh-CN.md
+++ /dev/null
@@ -1,239 +0,0 @@
-# 更新日志
-
-`ant-design-vue` 严格遵循 [Semantic Versioning 2.0.0](http://semver.org/lang/zh-CN/) 语义化版本规范。
-
-#### 发布周期
-
-- 修订版本号:每周末会进行日常 bugfix 更新。(如果有紧急的 bugfix,则任何时候都可发布)
-- 次版本号:每月发布一个带有新特性的向下兼容的版本。
-- 主版本号:含有破坏性更新和新特性,不在发布周期内。
-
----
-
-## 4.2.6
-
-- 🐞 修复 Modal 组件在 chrome 下,aria-hidden 报错问题 [#7823](https://github.com/vueComponent/ant-design-vue/issues/7823)
-- 🐞 修复 Safari 下自带输入法 input 组件输入中文时,自动填写小数点问题 [#7918](https://github.com/vueComponent/ant-design-vue/issues/7918)
-- 🐞 修复 InputNumber 组件 disabled 样式问题 [#7776](https://github.com/vueComponent/ant-design-vue/issues/7776)
-- 🐞 修复 Select 无法失焦问题 [#7819](https://github.com/vueComponent/ant-design-vue/issues/7819)
-
-## 4.2.5
-
-- 🐞 修复 Empty 组件内存泄漏问题
-- 🐞 修复 Image width & height 属性不生效问题
-
-## 4.2.4
-
-- 🐞 修复 Wave 内存泄漏问题
-
-## 4.2.3
-
-- 🌟 TourStep 自定义 Button,支持函数 children [#7628](https://github.com/vueComponent/ant-design-vue/pull/7628)
-- 🐞 修复 Select 和 Cascader 搜索多选模式下,输入值被隐藏问题 [#7640](https://github.com/vueComponent/ant-design-vue/issues/7640)
-
-## 4.2.2
-
-- 🐞 修复 TreeSelect placeholder 插槽无效 [#7545](https://github.com/vueComponent/ant-design-vue/issues/7545)
-- 🐞 修复 Tree 插槽响应式无效问题 [40ad45](https://github.com/vueComponent/ant-design-vue/commit/40ad45bc05b2bf9d0a2445d9f6ff365468ba90b7)
-- 🐞 修复 FloatButton target 类型错误问题 [#7576](https://github.com/vueComponent/ant-design-vue/issues/7576)
-- 🐞 修复 FormItem className 错误问题 [#7582](https://github.com/vueComponent/ant-design-vue/issues/7582)
-- 🐞 修复 Input lazy 下无法输入问题 [#7543](https://github.com/vueComponent/ant-design-vue/issues/7543)
-- 🐞 修复 Select 输入中文时,placeholder 未隐藏问题 [#7611](https://github.com/vueComponent/ant-design-vue/issues/7611)
-- 🐞 修复 DatePicker 点击预设选项时,弹窗闪动问题 [#7550](https://github.com/vueComponent/ant-design-vue/issues/7550)
-
-## 4.2.1
-
-- 🐞 修复 Input 清空操作才报错问题 [#7523](https://github.com/vueComponent/ant-design-vue/issues/7523)
-
-## 4.2.0
-
-- 🌟 优化 layout 组件切换 dark 模式时 textColor 变化 [#7498](https://github.com/vueComponent/ant-design-vue/issues/7498)
-- 🌟 Tooltip 新增 arrow 隐藏配置 [#7459](https://github.com/vueComponent/ant-design-vue/issues/7459)
-- 🌟 优化 Table hover 性能 [#7451](https://github.com/vueComponent/ant-design-vue/issues/7451)
-- 🐞 修复 useForm 校验时更改 model,导致校验错误问题 [#ffd4d8](https://github.com/vueComponent/ant-design-vue/commit/ffd4d8fe927f9ea40cbb6358ad997c447bd9a74e)
-- 🐞 修复 Tabs 折叠计算错误问题 [#7491](https://github.com/vueComponent/ant-design-vue/issues/7491)
-- 🐞 修复 Qrcode 缺少类型提示问题 [#7502](https://github.com/vueComponent/ant-design-vue/issues/7502)
-- 🐞 修复 Menu 在 SSR 下渲染错误问题 [#7349](https://github.com/vueComponent/ant-design-vue/issues/7349)
-- 🐞 修复 Select、Cascader 在 SSR 下渲染错误问题 [#7377](https://github.com/vueComponent/ant-design-vue/issues/7377)
-- 🐞 修复 AutoComplete 缺少 option slot 声明问题 [#7396](https://github.com/vueComponent/ant-design-vue/issues/7396)
-- 🐞 修复 Textarea autoSize 不生效问题 [#7478](https://github.com/vueComponent/ant-design-vue/issues/7478)
-- 🐞 修复 Pagination 回车键触发两次翻页问题 [#7368](https://github.com/vueComponent/ant-design-vue/issues/7368)
-- 🐞 修复输入框输入中文问题 [#7391](https://github.com/vueComponent/ant-design-vue/issues/7391)[#7516](https://github.com/vueComponent/ant-design-vue/issues/7516)
-- 🐞 修复 Carousel beforeChange current 参数错误问题 [#7419](https://github.com/vueComponent/ant-design-vue/issues/7419)
-
-## 4.1.2
-
-- 🐞 修复 table resize 在 vue 3.4 下报错问题 [#7291](https://github.com/vueComponent/ant-design-vue/issues/7291)
-- 🐞 修复 Segmented title 属性不显示问题 [#7302](https://github.com/vueComponent/ant-design-vue/issues/7302)
-
-## 4.1.1
-
-- 🌟 QRcode 新增 scanned 状态 [#7242](https://github.com/vueComponent/ant-design-vue/issues/7242)
-- 🐞 修复 css prefix 在 nuxt 问题 [#7256](https://github.com/vueComponent/ant-design-vue/issues/7256)
-- 🐞 修复 dropdown 关闭问题 [#7246](https://github.com/vueComponent/ant-design-vue/issues/7246)
-- 🐞 修复 divider vertical dashed 不显示问题 [#7218](https://github.com/vueComponent/ant-design-vue/issues/7218)
-- 🐞 修复 hook 模式 message 控制台 warning 问题 [#7281](https://github.com/vueComponent/ant-design-vue/issues/7281)
-- 🐞 修复 table 展开在 vue 3.4 下报错问题 [#7265](https://github.com/vueComponent/ant-design-vue/issues/7265)
-- 🐞 修复 table group 过滤状态错误问题 [#7233](https://github.com/vueComponent/ant-design-vue/issues/7233)
-
-## 4.1.0
-
-- 🐞 适配 vue 3.4 [#7239](https://github.com/vueComponent/ant-design-vue/issues/7239)
-
-## 4.0.8
-
-- 🐞 修复在 Nuxt 下 theme 响应式失效问题 [#7180](https://github.com/vueComponent/ant-design-vue/issues/7180)
-- 🐞 修复 Wave 引起的报错问题 [#7108](https://github.com/vueComponent/ant-design-vue/issues/7108)
-- 🐞 修复 Upload disabled 继承问题 [#7110](https://github.com/vueComponent/ant-design-vue/issues/7110)
-- 🐞 修复 Tooltip popupAlign 未生效问题 [#7112](https://github.com/vueComponent/ant-design-vue/issues/7112)
-- 🐞 修复 Typography 闪动问题 [#7146](https://github.com/vueComponent/ant-design-vue/issues/7146)
-- 🐞 修复 RangePicker prevIcon nextIcon 未生效问题 [#7127](https://github.com/vueComponent/ant-design-vue/issues/7127)
-- 🐞 修复 watermark 未监听子元素变动问题 [#7149](https://github.com/vueComponent/ant-design-vue/issues/7149)
-- 🐞 修复 Menu 动画丢失问题 [#7130](https://github.com/vueComponent/ant-design-vue/issues/7130)
-- 🐞 修复 TextArea autosize 时光标变化问题 [#7121](https://github.com/vueComponent/ant-design-vue/issues/7121)
-
-## 4.0.7
-
-- 🌟 新增 Flex 组件 [#7052](https://github.com/vueComponent/ant-design-vue/issues/7052)
-- 🌟 ConfigProvider 新增 wave 配置 [#7036](https://github.com/vueComponent/ant-design-vue/issues/7036)
-- 🌟 Watermark 支持暗黑模式 [#7067](https://github.com/vueComponent/ant-design-vue/issues/7067)
-- 🐞 修复 Space 重复 Key 问题 [#7048](https://github.com/vueComponent/ant-design-vue/issues/7048)
-- 🐞 修复 Upload disabled 优先级错误问题 [#7047](https://github.com/vueComponent/ant-design-vue/issues/7047)
-- 🐞 修复 Carousel 在 jsx 中渲染错误问题 [#7077](https://github.com/vueComponent/ant-design-vue/issues/7077)
-- 🐞 修复 Message 偏移位置问题 [#7093](https://github.com/vueComponent/ant-design-vue/issues/7093)
-- 🐞 修复 Collapse 自定义 prefix 时动画失效问题 [#7074](https://github.com/vueComponent/ant-design-vue/issues/7074)
-
-## 4.0.6
-
-- 🐞 修复 4.0.4 引入的 Dropdown onVisibleChange 失效问题 [#7031](https://github.com/vueComponent/ant-design-vue/issues/7031)
-
-## 4.0.5
-
-- 🐞 修复 cssinjs 性能问题 [#7023](https://github.com/vueComponent/ant-design-vue/issues/7023)
-
-## 4.0.4
-
-- 🌟 新增 esm 目标文件
-- 🌟 FormItem 新增 tooltip 属性 [#7014](https://github.com/vueComponent/ant-design-vue/issues/7014)
-- 🐞 修复 useMessage getContainer 不生效问题 [#6942](https://github.com/vueComponent/ant-design-vue/issues/6942)
-- 🐞 修复 Image 多次触发 onPreviewVisibleChange 事件问题 [#6945](https://github.com/vueComponent/ant-design-vue/issues/6945)
-- 🐞 修复 Checkbox 全局 disabled 不生效问题 [#6970](https://github.com/vueComponent/ant-design-vue/issues/6970)
-- 🐞 修复 Drawer contentWrapperStyle 不生效问题 [#6983](https://github.com/vueComponent/ant-design-vue/issues/6983)
-- 🐞 优化 Select Dropdown 等下拉列表滚动条显示隐藏逻辑 [#6987](https://github.com/vueComponent/ant-design-vue/issues/6987)
-- 🐞 修复 Select Dropdown 等下拉列表中有 input 等组件时,隐藏问题 [#7020](https://github.com/vueComponent/ant-design-vue/issues/7020)
-
-## 4.0.3
-
-- 🐞 修复 shadow Dom 下样式丢失问题 [#6912](https://github.com/vueComponent/ant-design-vue/issues/6912)
-- 🐞 升级 Icon 依赖,修复 shadow Dom 下 icon css 丢失问题 [#6914](https://github.com/vueComponent/ant-design-vue/issues/6914)
-
-## 4.0.2
-
-- 🐞 修复 useMessage 导致 body 被移除问题 [#6880](https://github.com/vueComponent/ant-design-vue/issues/6880)
-- 🐞 修复 Button loading 切换后,水波纹效果不消失问题 [#6895](https://github.com/vueComponent/ant-design-vue/issues/6895)
-- 🐞 修复 Image 关闭后 flip 没有重置问题 [#6913](https://github.com/vueComponent/ant-design-vue/issues/6913)
-- 🐞 修复 ImageGroup 动画效果丢失问题 [#6898](https://github.com/vueComponent/ant-design-vue/issues/6898)
-- 🐞 修复 Modal 缺少 onUpdate:open 属性声明 [#6876](https://github.com/vueComponent/ant-design-vue/issues/6876)
-- 🐞 修复 Transfer 的 Checkbox 边缘处会触发多次 click 问题 [#6902](https://github.com/vueComponent/ant-design-vue/issues/6902)
-
-## 4.0.1
-
-- 🌟 FloatButton 添加 Badge 支持 [#6738](https://github.com/vueComponent/ant-design-vue/issues/6738)
-- 🌟 Image 预览放大缩小灵敏度调整 [#6784](https://github.com/vueComponent/ant-design-vue/issues/6784)
-- 🌟 Image 新增翻转特性 [#6785](https://github.com/vueComponent/ant-design-vue/issues/6785)
-- 🌟 新增 App 组件,用于提供上下文 [#6735](https://github.com/vueComponent/ant-design-vue/issues/6735)
-- 🌟 样式抽离特性用于 SSR [#6757](https://github.com/vueComponent/ant-design-vue/issues/6757)
-- 🌟 支持 px2rem [#6817](https://github.com/vueComponent/ant-design-vue/issues/6817)
-- 🌟 Tag 支持无边框模式 [#6819](https://github.com/vueComponent/ant-design-vue/issues/6819)
-- 🌟 Avatar group 模式支持 shape [#6822](https://github.com/vueComponent/ant-design-vue/issues/6822)
-- 🌟 AutoComplete 支持无边框和自定义 clearIcon [#6829](https://github.com/vueComponent/ant-design-vue/issues/6829)
-- 🌟 InputPassword 支持受控 visible [#6863](https://github.com/vueComponent/ant-design-vue/issues/6863)
-- 🐞 修复 InputGroup 在 large 时样式错位问题 [#6866](https://github.com/vueComponent/ant-design-vue/issues/6866)
-- 🐞 修复 Checkable Tag 无法自定义 class 问题 [#6854](https://github.com/vueComponent/ant-design-vue/issues/6854)
-- 🐞 修复 Tabs 动画模式下渲染问题 [#6855](https://github.com/vueComponent/ant-design-vue/issues/6855)
-- 🐞 修复 Image height 属性不生效问题 [#6840](https://github.com/vueComponent/ant-design-vue/issues/6840)
-- 🐞 修复 InputNumber 触发 mouseup 事件问题 [#6772](https://github.com/vueComponent/ant-design-vue/issues/6772)
-- 🐞 修复 Tabs 折叠时 Dropdown 样式问题 [#6757](https://github.com/vueComponent/ant-design-vue/issues/6757)
-- 🐞 修复 Table expandedRowRender 属性不生效 [#6783](https://github.com/vueComponent/ant-design-vue/issues/6783)
-- 🐞 修复 dayjs 未打包进 dist 问题 [#6767](https://github.com/vueComponent/ant-design-vue/issues/6767)
-- 🐞 解决 clipPath 浏览器兼容问题 [#6770](https://github.com/vueComponent/ant-design-vue/issues/6770)
-- 🐞 修复 Carousel autoplay 响应式问题 [#6768](https://github.com/vueComponent/ant-design-vue/issues/6768)
-- 🐞 修复 PageHeader ghost 样式问题 [#6761](https://github.com/vueComponent/ant-design-vue/issues/6761)
-- 🐞 修复 Checkbox 没有触发 Form 校验问题 [#6741](https://github.com/vueComponent/ant-design-vue/issues/6741)
-- 🐞 修复 Input prefix 属性未生效问题 [#6810](https://github.com/vueComponent/ant-design-vue/issues/6810)
-- 🐞 修复 Badge 在 Avatar 中样式问题 [#6874](https://github.com/vueComponent/ant-design-vue/issues/6874)
-
-## 4.0
-
-### 🔥🔥🔥 4.0 正式版发布 🔥🔥🔥
-
-### 设计规范调整
-
-- 基础圆角调整,由统一的 `2px` 改为四级圆角,分别为 `2px` `4px` `6px` `8px`,分别应用于不同场景,比如默认尺寸的 Button 的圆角调整为了 `6px`。
-- 主色调整,由 `#1890ff` 改为 `#1677ff`。
-- 整体阴影调整,由原本的三级阴影调整为两级,分别用于常驻页面的组件(如 Card)和交互反馈(如 Dropdown)。
-- 部分组件内间距调整。
-- 整体去线框化。
-
-### 新增 5 个组件
-
-- Segmented 分段控制器
-- WaterMark 水印
-- QrCode 二维码
-- FloatButton 悬浮按钮
-- Tour 漫游式引导
-
-### 技术调整
-
-- 弃用 less,采用 CSS-in-JS,更好地支持动态主题。
- - 所有 less 文件全部移除,less 变量不再支持透出。
- - 产物中不再包含 css 文件。由于 CSS-in-JS 支持按需引入,原本的 `ant-design-vue/dist/antd.css` 也已经移除,如果需要重置一些基本样式请引入 `ant-design-vue/dist/reset.css`。
- - 如果需要组件重置样式,又不想引入 `ant-design-vue/dist/reset.css` 从而导致污染全局样式的话,可以尝试在应用最外层使用[App 组件](/components/app-cn),解决原生元素没有 ant-design-vue 规范样式的问题。
-- 移除 css variables 以及在此之上构筑的动态主题方案。
-- LocaleProvider 在 3.x 中已经废弃(使用 ` ` 替代),我们在 4.x 里彻底移除了相关目录 `ant-design-vue/es/locale-provider`、`ant-design-vue/lib/locale-provider`。
-- 不再支持 `babel-plugin-import`,CSS-in-JS 本身具有按需加载的能力,不再需要插件支持。
-
-#### 组件 API 调整
-
-- 组件弹框的 classname API 统一为 `popupClassName`,`dropdownClassName` 等类似 API 都会被替换。
-
- - AutoComplete 组件
- - Cascader 组件
- - Select 组件
- - TreeSelect 组件
- - TimePicker 组件
- - DatePicker 组件
- - Mentions 组件
-
-- 组件弹框的受控可见 API 统一为 `open`,`visible` 等类似 API 都会被替换。
- - Drawer 组件 `visible` 变为 `open`。
- - Modal 组件 `visible` 变为 `open`。
- - Dropdown 组件 `visible` 变为 `open`。
- - Tooltip 组件 `visible` 变为 `open`。
- - Tag 组件 `visible` 已移除。
- - Slider 组件 `tooltip` 相关 API 收敛到 `tooltip` 属性中。
- - Table 组件 `filterDropdownVisible` 变为 `filterDropdownOpen`。
-- `getPopupContainer`: 所有的 `getPopupContainer` 都需要保证返回的是唯一的 div。
-- Drawer `style` 和 `class` 迁移至 Drawer 弹层区域上,原属性替换为 `rootClassName` 和 `rootStyle`。
-
-#### 组件重构与移除
-
-- 移除 `locale-provider` 目录。`LocaleProvider` 在 v4 中已移除,请使用 `ConfigProvider` 替代。
-
-- 移除栅格布局中的`xxxl`断点属性。 `xxxl`属性已经在 v4 被移除,您可以使用 [主题定制](/docs/vue/customize-theme-cn) 修改 `screen[XS|SM|MD|LG|XL|XXL]` 来修改断点值实现。
-
-- BackTop 组件在 `4.0.0` 中废弃,移至 FloatButton 悬浮按钮中。如需使用,可以从 FloatButton 中引入。
-
-### [升级指南](/docs/vue/migration-v4-cn)
-
-## 3.x
-
-去 [GitHub](https://github.com/vueComponent/ant-design-vue/blob/3.x/CHANGELOG.zh-CN.md) 查看 `3.x` 的 Change Log。
-
-## 2.x
-
-去 [GitHub](https://github.com/vueComponent/ant-design-vue/blob/2.x/CHANGELOG.zh-CN.md) 查看 `2.x` 的 Change Log。
-
-## 1.x
-
-去 [GitHub](https://github.com/vueComponent/ant-design-vue/blob/1.x/CHANGELOG.zh-CN.md) 查看 `0.x` 到 `1.x` 的 Change Log。
diff --git a/README-zh_CN.md b/README-zh_CN.md
deleted file mode 100644
index 05a8f7030..000000000
--- a/README-zh_CN.md
+++ /dev/null
@@ -1,120 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-基于 Ant Design 和 Vue 3 的企业级 UI 组件库。
-
- [](https://codecov.io/gh/vueComponent/ant-design-vue) [](https://www.npmjs.org/package/ant-design-vue) [](http://www.npmtrends.com/ant-design-vue) [](#backers) [](#sponsors) [](https://marketplace.visualstudio.com/items?itemName=ant-design-vue.vscode-ant-design-vue-helper) [](https://github.com/actions-cool/issues-helper)
-
-
-
-[](https://www.antdv.com/)
-
-[English](./README.md) | 简体中文
-
-## 特性
-
-- 提炼自企业级中后台产品的交互语言和视觉风格。
-- 开箱即用的高质量 Vue 组件。
-- 共享 [Ant Design of React](http://ant-design.gitee.io/docs/spec/introduce-cn) 设计工具体系。
-
-## 关注我们
-
-收藏加关注,第一时间获取更新动态!
-
-
-
-## 支持环境
-
-- 现代浏览器。1.x 版本支持 IE 9+(需要 [polyfills](https://www.antdv.com/docs/vue/getting-started-cn/#兼容性))
-- 支持服务端渲染。
-- [Electron](https://electronjs.org/)
-- 支持 Vue 2 和 Vue 3
-
-| [ ](http://godban.github.io/browsers-support-badges/)IE / Edge | [ ](http://godban.github.io/browsers-support-badges/)Firefox | [ ](http://godban.github.io/browsers-support-badges/)Chrome | [ ](http://godban.github.io/browsers-support-badges/)Safari | [ ](http://godban.github.io/browsers-support-badges/)Opera | [ ](http://godban.github.io/browsers-support-badges/)Electron |
-| --- | --- | --- | --- | --- | --- |
-| Edge | last 2 versions | last 2 versions | last 2 versions | last 2 versions | last 2 versions |
-
-## 安装
-
-### 使用 npm 或 yarn 安装
-
-```bash
-$ npm install ant-design-vue --save
-```
-
-```bash
-$ yarn add ant-design-vue
-```
-
-如果你的网络环境不佳,推荐使用 [cnpm](https://github.com/cnpm/cnpm)。
-
-## 链接
-
-- [首页](https://www.antdv.com/)
-- [Vue 官方文档](https://cn.vuejs.org/)
-- [Ant Design Of React](http://ant.design/)
-
-## 生态
-
-| Project | Description |
-| --- | --- |
-| [vue-ref](https://github.com/vueComponent/vue-ref) | 您可以使用回调来获取组件的引用,类似 react |
-| [ant-design-vue-helper](https://marketplace.visualstudio.com/items?itemName=ant-design-vue.vscode-ant-design-vue-helper) | ant-design-vue 的 vscode 扩展 |
-| [vue-cli-plugin-ant-design](https://github.com/vueComponent/vue-cli-plugin-ant-design) | 使用 vue-cli3 快速使用 ant-design-vue 组件库 |
-| [vue-dash-event](https://github.com/vueComponent/vue-dash-event) | 在 DOM 模板中,您可以使用 ant-design-vue 组件的自定义事件(camelCase) |
-| [@formily/antdv](https://github.com/formilyjs/antdv) | 这是一个结合了 Formily 和 ant-design-vue 的组件库 |
-| [@ant-design-vue/nuxt](https://github.com/vueComponent/ant-design-vue-nuxt) | ant-design-vue 的 nuxt 模块扩展 |
-| [ant-design-x-vue](https://github.com/wzc520pyfm/ant-design-x-vue) | 基于 Ant Design X 设计规范的 Vue AI 界面解决方案 |
-
-## 问答
-
-> 强烈推荐阅读 [《提问的智慧》](https://github.com/ryanhanwu/How-To-Ask-Questions-The-Smart-Way)、[《如何向开源社区提问题》](https://github.com/seajs/seajs/issues/545) 和 [《如何有效地报告 Bug》](http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html)、[《如何向开源项目提交无法解答的问题》](https://zhuanlan.zhihu.com/p/25795393),更好的问题更容易获得帮助。
-
-[](https://issuehunt.io/repos/104172832)
-
-## 赞助
-
-ant-design-vue 是 MIT 协议的开源项目。为了项目能够更好的持续的发展,我们期望获得更多的[支持者](https://github.com/vueComponent/ant-design-vue/blob/master/BACKERS.md),你可以通过如下任何一种方式支持我们:
-
-- [Patreon](https://www.patreon.com/tangjinzhou)
-- [opencollective](https://opencollective.com/ant-design-vue)
-- [paypal](https://www.paypal.me/tangjinzhou)
-- [支付宝或微信](https://aliyuncdn.antdv.com/alipay-and-wechat.png)
-- ETH: 0x30cc48515d8ae9fefa20ab87226ad7e8ab9c3bc2
-
-## 赞助商
-
-成为赞助商,并在 Github 上的自述文件上获得您的徽标,并链接到您的网站。 [[成为赞助商](https://opencollective.com/ant-design-vue#sponsor)]
-
-
-
-## 支持者
-
-每月捐款支持我们,帮助我们继续我们的活动。 [[成为支持者](https://opencollective.com/ant-design-vue#backer)]
-
-
-
-## Patreon
-
-每月捐款支持我们,帮助我们继续我们的活动。 [[成为支持者](https://www.patreon.com/tangjinzhou)]
-
-
-
-## [更多赞助者 (通过 Patreon、支付宝、微信、paypal 等等)](https://github.com/vueComponent/ant-design-vue/blob/master/BACKERS.md)
-
-## 贡献者
-
-感谢所有为 ant-design-vue 做出贡献的人!
-
-
-
-
diff --git a/README.md b/README.md
index 3bc3fb0fc..2f6d44b73 100644
--- a/README.md
+++ b/README.md
@@ -1,106 +1 @@
-
-
-
-
-
-
-
-
-
-
-An enterprise-class UI components based on Ant Design and Vue.
-
- [](https://codecov.io/gh/vueComponent/ant-design-vue) [](https://www.npmjs.org/package/ant-design-vue) [](http://www.npmtrends.com/ant-design-vue) [](#backers) [](#sponsors) [](https://marketplace.visualstudio.com/items?itemName=ant-design-vue.vscode-ant-design-vue-helper) [](https://github.com/actions-cool/issues-helper)
-
-
-
-[](https://www.antdv.com/)
-
-English | [简体中文](./README-zh_CN.md)
-
-## Features
-
-- An enterprise-class UI design system for desktop applications.
-- A set of high-quality Vue components out of the box.
-- Shared [Ant Design of React](https://ant.design/docs/spec/introduce) design resources.
-
-## Getting started & staying tuned with us.
-
-Star us, and you will receive all releases notifications from GitHub without any delay!
-
-
-
-## Environment Support
-
-- Modern browsers. v1.x support Internet Explorer 9+ (with [polyfills](https://www.antdv.com/docs/vue/getting-started/#compatibility))
-- Server-side Rendering
-- Support Vue 2 & Vue 3
-- [Electron](https://electronjs.org/)
-
-| [ ](http://godban.github.io/browsers-support-badges/)IE / Edge | [ ](http://godban.github.io/browsers-support-badges/)Firefox | [ ](http://godban.github.io/browsers-support-badges/)Chrome | [ ](http://godban.github.io/browsers-support-badges/)Safari | [ ](http://godban.github.io/browsers-support-badges/)Opera | [ ](http://godban.github.io/browsers-support-badges/)Electron |
-| --- | --- | --- | --- | --- | --- |
-| Edge | last 2 versions | last 2 versions | last 2 versions | last 2 versions | last 2 versions |
-
-## Using npm or yarn
-
-**We recommend using npm or yarn to install**, it not only makes development easier, but also allow you to take advantage of the rich ecosystem of Javascript packages and tooling.
-
-```bash
-$ npm install ant-design-vue --save
-```
-
-```bash
-$ yarn add ant-design-vue
-```
-
-If you are in a bad network environment, you can try other registries and tools like [cnpm](https://github.com/cnpm/cnpm).
-
-## Links
-
-- [Home page](https://www.antdv.com/)
-- [Vue](https://vuejs.org/)
-- [Ant Design Of React](http://ant.design/)
-
-## Ecosystem
-
-| Project | Description |
-| --- | --- |
-| [vue-ref](https://github.com/vueComponent/vue-ref) | You can use the callback to get a reference like react |
-| [ant-design-vue-helper](https://marketplace.visualstudio.com/items?itemName=ant-design-vue.vscode-ant-design-vue-helper) | A vscode extension for ant-design-vue |
-| [vue-cli-plugin-ant-design](https://github.com/vueComponent/vue-cli-plugin-ant-design) | Vue-cli 3 plugin to add ant-design-vue |
-| [vue-dash-event](https://github.com/vueComponent/vue-dash-event) | The library function, implemented in the DOM template, can use the custom event of the ant-design-vue component (camelCase) |
-| [@formily/antdv](https://github.com/formilyjs/antdv) | The Library with Formily and ant-design-vue |
-| [@ant-design-vue/nuxt](https://github.com/vueComponent/ant-design-vue-nuxt) | A nuxt module for ant-design-vue |
-| [ant-design-x-vue](https://github.com/wzc520pyfm/ant-design-x-vue) | A Vue AI interface solutions base on the Ant Design X design specification |
-
-## Donation
-
-ant-design-vue is an MIT-licensed open source project. In order to achieve better and sustainable development of the project, we expect to gain more [backers](https://github.com/vueComponent/ant-design-vue/blob/master/BACKERS.md). You can support us in any of the following ways:
-
-- [Patreon](https://www.patreon.com/tangjinzhou)
-- [opencollective](https://opencollective.com/ant-design-vue)
-- [paypal](https://www.paypal.me/tangjinzhou)
-- [支付宝或微信](https://aliyuncdn.antdv.com/alipay-and-wechat.png)
-- ETH: 0x30cc48515d8ae9fefa20ab87226ad7e8ab9c3bc2
-
-## Sponsors
-
-Become a sponsor and get your logo on our README on Github with a link to your site. [[Become a sponsor](https://opencollective.com/ant-design-vue#sponsor)]
-
-
-
-## [More Sponsor (From Patreon、alipay、wechat、paypal...)](https://github.com/vueComponent/ant-design-vue/blob/master/BACKERS.md)
-
-## Contributors
-
-Thank you to all the people who already contributed to ant-design-vue!
-
-
-
-
-
-[](https://issuehunt.io/repos/104172832)
-
-This project is tested with BrowserStack.
+## And Design Vue 5.0
diff --git a/antd-tools/apiCollection.js b/antd-tools/apiCollection.js
deleted file mode 100644
index 99843601c..000000000
--- a/antd-tools/apiCollection.js
+++ /dev/null
@@ -1,68 +0,0 @@
-// Read all the api from current documents
-
-const glob = require('glob');
-const fs = require('fs');
-
-const COMPONENT_NAME = /components\/([^/]*)/;
-const PROP_NAME = /^\s*\|\s*([^\s|]*)/;
-
-const components = {};
-
-function mappingPropLine(component, line) {
- const propMatch = line.match(PROP_NAME);
- if (!propMatch) return;
-
- const propName = propMatch[1];
- if (!/^[a-z]/.test(propName)) return;
-
- components[component] = Array.from(new Set([...(components[component] || []), propName]));
-}
-
-function apiReport(entities) {
- const apis = {};
- Object.keys(entities).forEach(component => {
- const apiList = entities[component];
- apiList.forEach(api => {
- if (typeof apis[api] === 'function') {
- apis[api] = [];
- }
- apis[api] = [...(apis[api] || []), component];
- });
- });
-
- return apis;
-}
-
-function printReport(apis) {
- const apiList = Object.keys(apis).map(api => ({
- name: api,
- componentList: apis[api],
- }));
- apiList.sort((a, b) => b.componentList.length - a.componentList.length);
- // eslint-disable-next-line no-console
- console.log('| name | components | comments |');
- // eslint-disable-next-line no-console
- console.log('| ---- | ---------- | -------- |');
- apiList.forEach(({ name, componentList }) => {
- // eslint-disable-next-line no-console
- console.log('|', name, '|', componentList.join(', '), '| |');
- });
-}
-
-module.exports = () => {
- glob('components/*/*.md', (error, files) => {
- files.forEach(filePath => {
- // Read md file to parse content
- const content = fs.readFileSync(filePath, 'utf8');
- const component = filePath.match(COMPONENT_NAME)[1];
-
- // Parse lines to get API
- const lines = content.split(/[\r\n]+/);
- lines.forEach(line => {
- mappingPropLine(component, line);
- });
- });
-
- printReport(apiReport(components));
- });
-};
diff --git a/antd-tools/cli/index.js b/antd-tools/cli/index.js
deleted file mode 100644
index 6ef2ab5b2..000000000
--- a/antd-tools/cli/index.js
+++ /dev/null
@@ -1,27 +0,0 @@
-#!/usr/bin/env node
-
-'use strict';
-
-require('colorful').colorful();
-
-const program = require('commander');
-const packageInfo = require('../../package.json');
-
-program
- .version(packageInfo.version)
- .command('run [name]', 'run specified task')
- .parse(process.argv);
-
-// https://github.com/tj/commander.js/pull/260
-const proc = program.runningCommand;
-if (proc) {
- proc.on('close', process.exit.bind(process));
- proc.on('error', () => {
- process.exit(1);
- });
-}
-
-const subCmd = program.args[0];
-if (!subCmd || subCmd !== 'run') {
- program.help();
-}
diff --git a/antd-tools/cli/run.js b/antd-tools/cli/run.js
deleted file mode 100644
index e1466aa6c..000000000
--- a/antd-tools/cli/run.js
+++ /dev/null
@@ -1,51 +0,0 @@
-#!/usr/bin/env node
-/* eslint-disable no-console */
-
-'use strict';
-
-require('colorful').colorful();
-const gulp = require('gulp');
-const program = require('commander');
-
-program.option('-c --npm-tag ', 'add --npm-tag=xxx');
-
-program.on('--help', () => {
- console.log(' Usage:'.to.bold.blue.color);
- console.log();
-});
-
-program.parse(process.argv);
-
-function runTask(toRun) {
- const metadata = { task: toRun };
- // Gulp >= 4.0.0 (doesn't support events)
- const taskInstance = gulp.task(toRun);
- if (taskInstance === undefined) {
- gulp.emit('task_not_found', metadata);
- return;
- }
- const start = process.hrtime();
- gulp.emit('task_start', metadata);
- try {
- taskInstance.apply(gulp);
- metadata.hrDuration = process.hrtime(start);
- gulp.emit('task_stop', metadata);
- gulp.emit('stop');
- } catch (err) {
- err.hrDuration = process.hrtime(start);
- err.task = metadata.task;
- gulp.emit('task_err', err);
- }
-}
-
-const task = program.args[0];
-
-if (!task) {
- program.help();
-} else {
- console.log('antd-tools run', task);
-
- require('../gulpfile');
-
- runTask(task);
-}
diff --git a/antd-tools/generator-types/README.md b/antd-tools/generator-types/README.md
deleted file mode 100644
index 199c688ba..000000000
--- a/antd-tools/generator-types/README.md
+++ /dev/null
@@ -1 +0,0 @@
-fork github.com/youzan/vant packages/generator-types
diff --git a/antd-tools/generator-types/index.js b/antd-tools/generator-types/index.js
deleted file mode 100644
index 8a456e0a1..000000000
--- a/antd-tools/generator-types/index.js
+++ /dev/null
@@ -1,23 +0,0 @@
-const path = require('path');
-const pkg = require('../../package.json');
-const { parseAndWrite } = require('./lib/index.js');
-const rootPath = path.resolve(__dirname, '../../');
-
-parseAndWrite({
- version: pkg.version,
- name: 'ant-design-vue',
- path: path.resolve(rootPath, './components'),
- typingsPath: path.resolve(rootPath, './typings/global.d.ts'),
- // default match lang
- test: /en-US\.md/,
- outputDir: path.resolve(rootPath, './vetur'),
- tagPrefix: 'a-',
-})
- .then(result => {
- // eslint-disable-next-line no-console
- console.log(`generator types success: ${result} tags generated`);
- })
- .catch(error => {
- console.error('generator types error', error);
- return Promise.reject(error);
- });
diff --git a/antd-tools/generator-types/src/formatter.ts b/antd-tools/generator-types/src/formatter.ts
deleted file mode 100644
index 581ac46be..000000000
--- a/antd-tools/generator-types/src/formatter.ts
+++ /dev/null
@@ -1,128 +0,0 @@
-import type { Articals } from './parser';
-import { formatType, removeVersion, toKebabCase } from './utils';
-import type { VueTag } from './type';
-
-function getComponentName(name: string, tagPrefix: string) {
- if (name) {
- return tagPrefix + toKebabCase(name.split(' ')[0]);
- }
- return '';
-}
-
-function parserProps(tag: VueTag, line: any) {
- const [name, desc, type, defaultVal] = line;
- if (
- type &&
- (type.includes('v-slot') ||
- type.includes('slot') ||
- type.includes('slots') ||
- type.includes('slot-scoped'))
- ) {
- tag.slots!.push({
- name: removeVersion(name),
- description: desc,
- });
- }
- tag.attributes!.push({
- name: removeVersion(name),
- default: defaultVal,
- description: desc,
- value: {
- type: formatType(type || ''),
- kind: 'expression',
- },
- });
-}
-
-export function formatter(
- articals: Articals,
- componentName: string,
- kebabComponentName: string,
- tagPrefix = '',
-) {
- if (!articals.length) {
- return;
- }
-
- const tags: VueTag[] = [];
- const tag: VueTag = {
- name: kebabComponentName,
- slots: [],
- events: [],
- attributes: [],
- };
- tags.push(tag);
-
- const tables = articals.filter(artical => artical.type === 'table');
-
- tables.forEach(item => {
- const { table } = item;
- const prevIndex = articals.indexOf(item) - 1;
- const prevArtical = articals[prevIndex];
-
- if (!prevArtical || !prevArtical.content || !table || !table.body) {
- return;
- }
-
- const tableTitle = prevArtical.content;
-
- if (tableTitle.includes('API')) {
- table.body.forEach(line => {
- parserProps(tag, line);
- });
- return;
- }
-
- if (tableTitle.includes('events') && !tableTitle.includes(componentName)) {
- table.body.forEach(line => {
- const [name, desc] = line;
- tag.events!.push({
- name: removeVersion(name),
- description: desc,
- });
- });
- return;
- }
-
- // 额外的子组件
- if (
- tableTitle.includes(componentName) &&
- !tableTitle.includes('events') &&
- !tableTitle.includes('()')
- ) {
- const childTag: VueTag = {
- name: getComponentName(tableTitle.replace(/\.|\//g, ''), tagPrefix),
- slots: [],
- events: [],
- attributes: [],
- };
- table.body.forEach(line => {
- parserProps(childTag, line);
- });
- tags.push(childTag);
- return;
- }
-
- // 额外的子组件事件
- if (tableTitle.includes(componentName) && tableTitle.includes('events')) {
- const childTagName = getComponentName(
- tableTitle.replace('.', '').replace('events', ''),
- tagPrefix,
- );
- const childTag: VueTag | undefined = tags.find(item => item.name === childTagName.trim());
- if (!childTag) {
- return;
- }
- table.body.forEach(line => {
- const [name, desc] = line;
- childTag.events!.push({
- name: removeVersion(name),
- description: desc,
- });
- });
- return;
- }
- });
-
- return tags;
-}
diff --git a/antd-tools/generator-types/src/index.ts b/antd-tools/generator-types/src/index.ts
deleted file mode 100644
index aad960d39..000000000
--- a/antd-tools/generator-types/src/index.ts
+++ /dev/null
@@ -1,84 +0,0 @@
-import glob from 'fast-glob';
-import { dirname, join } from 'path';
-import { mdParser } from './parser';
-import { formatter } from './formatter';
-import { genWebTypes } from './web-types';
-import { outputFileSync, readFileSync } from 'fs-extra';
-import type { Options, VueTag } from './type';
-import { getComponentName, normalizePath, toKebabCase } from './utils';
-import { flatMap } from 'lodash';
-
-async function readMarkdown(options: Options): Promise> {
- const mdPaths = await glob(normalizePath(`${options.path}/**/*.md`));
- const data = mdPaths
- .filter(md => options.test.test(md))
- .map(path => {
- const docPath = dirname(path);
- const kebabComponentName =
- options.tagPrefix + docPath.substring(docPath.lastIndexOf('/') + 1) || '';
- const componentName = getComponentName(docPath.substring(docPath.lastIndexOf('/') + 1) || '');
- const fileContent = readFileSync(path, 'utf-8');
- return formatter(mdParser(fileContent), componentName, kebabComponentName, options.tagPrefix);
- })
- .filter(item => item) as VueTag[][];
- const tags = new Map();
- flatMap(data, item => item).forEach(mergedTag => mergeTag(tags, mergedTag));
- return tags;
-}
-
-function readTypings(options: Options): Map {
- const tags = new Map();
- const fileContent = readFileSync(options.typingsPath, 'utf-8');
- fileContent
- .split('\n')
- .filter(line => line && line.includes('typeof'))
- .map(line => {
- const l = line.trim();
- return toKebabCase(l.substring(0, l.indexOf(':')));
- })
- .forEach(tagName =>
- tags.set(tagName, {
- name: tagName,
- slots: [],
- events: [],
- attributes: [],
- }),
- );
- return tags;
-}
-
-function mergeTag(tags: Map, mergedTag: VueTag) {
- const tagName = mergedTag.name;
- const vueTag = tags.get(tagName);
- if (vueTag) {
- vueTag.slots = [...vueTag.slots, ...mergedTag.slots];
- vueTag.events = [...vueTag.events, ...mergedTag.events];
- vueTag.attributes = [...vueTag.attributes, ...mergedTag.attributes];
- } else {
- tags.set(tagName, mergedTag);
- }
-}
-
-function mergeTags(mergedTagsArr: Map[]): VueTag[] {
- if (mergedTagsArr.length === 1) return [...mergedTagsArr[0].values()];
- const tags = new Map();
- if (mergedTagsArr.length === 0) return [];
- mergedTagsArr.forEach(mergedTags => {
- mergedTags.forEach(mergedTag => mergeTag(tags, mergedTag));
- });
- return [...tags.values()];
-}
-
-export async function parseAndWrite(options: Options): Promise {
- if (!options.outputDir) {
- throw new Error('outputDir can not be empty.');
- }
- const tagsFromMarkdown = await readMarkdown(options);
- const tagsFromTypings = await readTypings(options);
- const tags = mergeTags([tagsFromMarkdown, tagsFromTypings]);
- const webTypes = genWebTypes(tags, options);
- outputFileSync(join(options.outputDir, 'web-types.json'), JSON.stringify(webTypes, null, 2));
- return tags.length;
-}
-
-export default { parseAndWrite };
diff --git a/antd-tools/generator-types/src/parser.ts b/antd-tools/generator-types/src/parser.ts
deleted file mode 100644
index bdcafb3d5..000000000
--- a/antd-tools/generator-types/src/parser.ts
+++ /dev/null
@@ -1,107 +0,0 @@
-/* eslint-disable no-cond-assign */
-const TITLE_REG = /^(#+)\s+([^\n]*)/;
-const TABLE_REG = /^\|.+\r?\n\|\s*-+/;
-const TD_REG = /\s*`[^`]+`\s*|([^|`]+)/g;
-const TABLE_SPLIT_LINE_REG = /^\|\s*-/;
-
-type TableContent = {
- head: string[];
- body: string[][];
-};
-
-export type Artical = {
- type: string;
- content?: string;
- table?: TableContent;
- level?: number;
-};
-
-export type Articals = Artical[];
-
-function readLine(input: string) {
- const end = input.indexOf('\n');
-
- return input.substring(0, end !== -1 ? end : input.length);
-}
-
-function splitTableLine(line: string) {
- line = line.replace(/\\\|/g, 'JOIN');
-
- const items = line.split('|').map(item => item.trim().replace(/JOIN/g, '|'));
-
- // remove pipe character on both sides
- items.pop();
- items.shift();
-
- return items;
-}
-
-function tableParse(input: string) {
- let start = 0;
- let isHead = true;
-
- const end = input.length;
- const table: TableContent = {
- head: [],
- body: [],
- };
-
- while (start < end) {
- const target = input.substring(start);
- const line = readLine(target);
-
- if (!/^\|/.test(target)) {
- break;
- }
-
- if (TABLE_SPLIT_LINE_REG.test(target)) {
- isHead = false;
- } else if (!isHead && line.includes('|')) {
- const matched = line.trim().match(TD_REG);
-
- if (matched) {
- table.body.push(splitTableLine(line));
- }
- }
-
- start += line.length + 1;
- }
-
- return {
- table,
- usedLength: start,
- };
-}
-
-export function mdParser(input: string): Articals {
- const artical = [];
- let start = 0;
- const end = input.length;
-
- while (start < end) {
- const target = input.substring(start);
-
- let match;
- if ((match = TITLE_REG.exec(target))) {
- artical.push({
- type: 'title',
- content: match[2].replace('\r', ''),
- level: match[1].length,
- });
-
- start += match.index + match[0].length;
- } else if ((match = TABLE_REG.exec(target))) {
- const { table, usedLength } = tableParse(target.substring(match.index));
- artical.push({
- type: 'table',
- table,
- });
-
- start += match.index + usedLength;
- } else {
- start += readLine(target).length + 1;
- }
- }
-
- return artical;
-}
diff --git a/antd-tools/generator-types/src/type.ts b/antd-tools/generator-types/src/type.ts
deleted file mode 100644
index 6be1c0ba5..000000000
--- a/antd-tools/generator-types/src/type.ts
+++ /dev/null
@@ -1,45 +0,0 @@
-import type { PathLike } from 'fs';
-
-export type VueSlot = {
- name: string;
- description: string;
-};
-
-export type VueEventArgument = {
- name: string;
- type: string;
-};
-
-export type VueEvent = {
- name: string;
- description?: string;
- arguments?: VueEventArgument[];
-};
-
-export type VueAttribute = {
- name: string;
- default: string;
- description: string;
- value: {
- kind: 'expression';
- type: string;
- };
-};
-
-export type VueTag = {
- name: string;
- slots: VueSlot[];
- events: VueEvent[];
- attributes: VueAttribute[];
- description?: string;
-};
-
-export type Options = {
- name: string;
- path: PathLike;
- typingsPath: PathLike;
- test: RegExp;
- version: string;
- outputDir?: string;
- tagPrefix?: string;
-};
diff --git a/antd-tools/generator-types/src/utils.ts b/antd-tools/generator-types/src/utils.ts
deleted file mode 100644
index 50ef2ab34..000000000
--- a/antd-tools/generator-types/src/utils.ts
+++ /dev/null
@@ -1,30 +0,0 @@
-// myName -> my-name
-export function toKebabCase(camel: string): string {
- return camel.replace(/((?<=[a-z\d])[A-Z]|(?<=[A-Z\d])[A-Z](?=[a-z]))/g, '-$1').toLowerCase();
-}
-
-// name `v2.0.0` -> name
-export function removeVersion(str: string) {
- return str.replace(/`(\w|\.)+`/g, '').trim();
-}
-
-// *boolean* -> boolean
-// _boolean_ -> boolean
-export function formatType(type: string) {
- return type
- .replace(/(^(\*|_))|((\*|_)$)/g, '')
- .replace('\\', '')
- .replace('\\', '');
-}
-
-export function getComponentName(name: string) {
- const title = name
- .split('-')
- .map(it => it.substring(0, 1) + it.substring(1))
- .join('');
- return title.substring(0, 1).toUpperCase() + title.substring(1);
-}
-
-export function normalizePath(path: string): string {
- return path.replace(/\\/g, '/');
-}
diff --git a/antd-tools/generator-types/src/web-types.ts b/antd-tools/generator-types/src/web-types.ts
deleted file mode 100644
index c2ed48d04..000000000
--- a/antd-tools/generator-types/src/web-types.ts
+++ /dev/null
@@ -1,18 +0,0 @@
-import type { VueTag, Options } from './type';
-
-// create web-types.json to provide autocomplete in JetBrains IDEs
-export function genWebTypes(tags: VueTag[], options: Options) {
- return {
- $schema: 'https://raw.githubusercontent.com/JetBrains/web-types/master/schema/web-types.json',
- framework: 'vue',
- name: options.name,
- version: options.version,
- contributions: {
- html: {
- tags,
- attributes: [],
- 'types-syntax': 'typescript',
- },
- },
- };
-}
diff --git a/antd-tools/generator-types/tsconfig.json b/antd-tools/generator-types/tsconfig.json
deleted file mode 100644
index 83790d350..000000000
--- a/antd-tools/generator-types/tsconfig.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "compilerOptions": {
- "target": "ES2017",
- "outDir": "./lib",
- "module": "commonjs",
- "strict": true,
- "declaration": true,
- "skipLibCheck": true,
- "esModuleInterop": true,
- "lib": ["esnext"]
- },
- "include": ["src/**/*"]
-}
diff --git a/antd-tools/getBabelCommonConfig.js b/antd-tools/getBabelCommonConfig.js
deleted file mode 100644
index 3232837b9..000000000
--- a/antd-tools/getBabelCommonConfig.js
+++ /dev/null
@@ -1,57 +0,0 @@
-const { resolve, isThereHaveBrowserslistConfig } = require('./utils/projectHelper');
-
-module.exports = function (modules) {
- const plugins = [
- [
- resolve('@babel/plugin-transform-typescript'),
- {
- isTSX: true,
- },
- ],
- [resolve('@vue/babel-plugin-jsx'), { mergeProps: false, enableObjectSlots: false }],
- resolve('@babel/plugin-proposal-optional-chaining'),
- resolve('@babel/plugin-transform-object-assign'),
- resolve('@babel/plugin-proposal-object-rest-spread'),
- resolve('@babel/plugin-proposal-export-default-from'),
- resolve('@babel/plugin-proposal-export-namespace-from'),
- resolve('@babel/plugin-proposal-class-properties'),
- resolve('@babel/plugin-syntax-dynamic-import'),
- [
- resolve('@babel/plugin-transform-runtime'),
- {
- useESModules: modules === false,
- version:
- require(`${process.cwd()}/package.json`).dependencies['@babel/runtime'] || '^7.10.4',
- },
- ],
- // resolve('babel-plugin-inline-import-data-uri'),
- // resolve('@babel/plugin-transform-member-expression-literals'),
- // resolve('@babel/plugin-transform-property-literals'),
- // resolve('@babel/plugin-proposal-export-default-from'),
- // resolve('@babel/plugin-transform-object-assign'),
- // resolve('@babel/plugin-transform-template-literals'),
- // resolve('@babel/plugin-proposal-object-rest-spread'),
- // resolve('@babel/plugin-proposal-class-properties'),
- ];
- return {
- presets: [
- [
- resolve('@babel/preset-env'),
- {
- modules,
- targets: isThereHaveBrowserslistConfig()
- ? undefined
- : {
- browsers: ['last 2 versions', 'Firefox ESR', '> 1%', 'ie >= 11'],
- },
- },
- ],
- ],
- plugins,
- env: {
- test: {
- plugins: [resolve('babel-plugin-istanbul')],
- },
- },
- };
-};
diff --git a/antd-tools/getNpm.js b/antd-tools/getNpm.js
deleted file mode 100644
index 52eee5011..000000000
--- a/antd-tools/getNpm.js
+++ /dev/null
@@ -1,17 +0,0 @@
-'use strict';
-
-const runCmd = require('./runCmd');
-
-module.exports = function (done) {
- if (process.env.NPM_CLI) {
- done(process.env.NPM_CLI);
- return;
- }
- runCmd('which', ['tnpm'], code => {
- let npm = 'npm';
- if (!code) {
- npm = 'tnpm';
- }
- done(npm);
- });
-};
diff --git a/antd-tools/getTSCommonConfig.js b/antd-tools/getTSCommonConfig.js
deleted file mode 100644
index fd2a33ff6..000000000
--- a/antd-tools/getTSCommonConfig.js
+++ /dev/null
@@ -1,24 +0,0 @@
-'use strict';
-
-const fs = require('fs');
-const { getProjectPath } = require('./utils/projectHelper');
-
-module.exports = function () {
- let my = {};
- if (fs.existsSync(getProjectPath('tsconfig.json'))) {
- my = require(getProjectPath('tsconfig.json'));
- }
- return Object.assign(
- {
- noUnusedParameters: true,
- noUnusedLocals: true,
- strictNullChecks: true,
- target: 'es6',
- jsx: 'preserve',
- moduleResolution: 'node',
- declaration: true,
- allowSyntheticDefaultImports: true,
- },
- my.compilerOptions,
- );
-};
diff --git a/antd-tools/getWebpackConfig.js b/antd-tools/getWebpackConfig.js
deleted file mode 100644
index a45bb011f..000000000
--- a/antd-tools/getWebpackConfig.js
+++ /dev/null
@@ -1,273 +0,0 @@
-const { getProjectPath, resolve } = require('./utils/projectHelper');
-const path = require('path');
-const webpack = require('webpack');
-const WebpackBar = require('webpackbar');
-const { merge } = require('webpack-merge');
-const TerserPlugin = require('terser-webpack-plugin');
-const MiniCssExtractPlugin = require('mini-css-extract-plugin');
-const CssMinimizerPlugin = require('css-minimizer-webpack-plugin');
-const CaseSensitivePathsPlugin = require('case-sensitive-paths-webpack-plugin');
-const CleanUpStatsPlugin = require('./utils/CleanUpStatsPlugin');
-// const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin;
-
-const distFileBaseName = 'antd';
-
-const svgRegex = /\.svg(\?v=\d+\.\d+\.\d+)?$/;
-const svgOptions = {
- limit: 10000,
- minetype: 'image/svg+xml',
-};
-
-const imageOptions = {
- limit: 10000,
-};
-
-function getWebpackConfig(modules, esm = false) {
- const pkg = require(getProjectPath('package.json'));
- const babelConfig = require('./getBabelCommonConfig')(modules || false);
-
- const pluginImportOptions = {
- style: true,
- libraryName: distFileBaseName,
- libraryDirectory: 'components',
- };
- babelConfig.plugins.push([resolve('babel-plugin-import'), pluginImportOptions]);
-
- if (modules === false) {
- babelConfig.plugins.push(require.resolve('./replaceLib'));
- }
-
- /** @type {import('webpack').Configuration} */
- const config = {
- devtool: 'source-map',
-
- output: {
- path: getProjectPath('./dist/'),
- filename: '[name].js',
- },
-
- resolve: {
- modules: ['node_modules', path.join(__dirname, '../node_modules')],
- extensions: [
- '.web.tsx',
- '.web.ts',
- '.web.jsx',
- '.web.js',
- '.ts',
- '.tsx',
- '.js',
- '.jsx',
- '.vue',
- '.md',
- '.json',
- ],
- alias: {
- '@': process.cwd(),
- },
- fallback: [
- 'child_process',
- 'cluster',
- 'dgram',
- 'dns',
- 'fs',
- 'module',
- 'net',
- 'readline',
- 'repl',
- 'tls',
- ].reduce((acc, name) => Object.assign({}, acc, { [name]: 'empty' }), {}),
- },
-
- module: {
- rules: [
- {
- test: /\.vue$/,
- exclude: /node_modules/,
- use: [
- {
- loader: 'vue-loader',
- options: {
- loaders: {
- js: [
- {
- loader: 'babel-loader',
- options: {
- presets: [resolve('@babel/preset-env')],
- plugins: [
- [
- resolve('@vue/babel-plugin-jsx'),
- { mergeProps: false, enableObjectSlots: false },
- ],
- resolve('@babel/plugin-proposal-object-rest-spread'),
- ],
- },
- },
- ],
- },
- },
- },
- ],
- },
- {
- test: /\.(js|jsx)$/,
- loader: 'babel-loader',
- exclude: /node_modules/,
- options: babelConfig,
- },
- {
- test: /\.tsx?$/,
- use: [
- {
- loader: 'babel-loader',
- options: babelConfig,
- },
- {
- loader: 'ts-loader',
- options: {
- transpileOnly: true,
- },
- },
- ],
- },
- {
- test: /\.css$/,
- use: [
- MiniCssExtractPlugin.loader,
- {
- loader: 'css-loader',
- options: {
- sourceMap: true,
- },
- },
- {
- loader: 'postcss-loader',
- options: {
- postcssOptions: {
- plugins: ['autoprefixer'],
- },
- sourceMap: true,
- },
- },
- ],
- },
- // Images
- {
- test: svgRegex,
- loader: 'url-loader',
- options: svgOptions,
- },
- {
- test: /\.(png|jpg|jpeg|gif)(\?v=\d+\.\d+\.\d+)?$/i,
- loader: 'url-loader',
- options: imageOptions,
- },
- ],
- },
-
- plugins: [
- // new BundleAnalyzerPlugin(),
- new CaseSensitivePathsPlugin(),
- new webpack.BannerPlugin(`
-${pkg.name} v${pkg.version}
-
-Copyright 2017-present, Ant Design Vue.
-All rights reserved.
- `),
- new WebpackBar({
- name: '🚚 Ant Design Vue Tools',
- color: '#2f54eb',
- }),
- new CleanUpStatsPlugin(),
- ],
- performance: {
- hints: false,
- },
- };
-
- if (process.env.RUN_ENV === 'PRODUCTION') {
- let entry = ['./index'];
- config.externals = [
- {
- vue: {
- root: 'Vue',
- commonjs2: 'vue',
- commonjs: 'vue',
- amd: 'vue',
- module: 'vue',
- },
- },
- ];
- if (esm) {
- entry = ['./index.esm'];
- config.experiments = {
- ...config.experiments,
- outputModule: true,
- };
- config.output.chunkFormat = 'module';
- config.output.library = {
- type: 'module',
- };
- config.target = 'es2019';
- } else {
- config.output.libraryTarget = 'umd';
- config.output.library = distFileBaseName;
- config.output.globalObject = 'this';
- }
-
- const entryName = esm ? `${distFileBaseName}.esm` : distFileBaseName;
-
- config.optimization = {
- minimizer: [
- new TerserPlugin({
- parallel: true,
- terserOptions: {
- warnings: false,
- },
- }),
- ],
- };
- // Development
- const uncompressedConfig = merge({}, config, {
- entry: {
- [entryName]: entry,
- },
- mode: 'development',
- plugins: [
- new MiniCssExtractPlugin({
- filename: '[name].css',
- }),
- ],
- });
-
- // Production
- const prodConfig = merge({}, config, {
- entry: {
- [`${entryName}.min`]: entry,
- },
- mode: 'production',
- plugins: [
- new webpack.LoaderOptionsPlugin({
- minimize: true,
- }),
- new MiniCssExtractPlugin({
- filename: '[name].css',
- }),
- ],
- optimization: {
- minimize: true,
- minimizer: [new CssMinimizerPlugin({})],
- },
- });
-
- return [prodConfig, uncompressedConfig];
- }
-
- return [config];
-}
-
-getWebpackConfig.webpack = webpack;
-getWebpackConfig.svgRegex = svgRegex;
-getWebpackConfig.svgOptions = svgOptions;
-getWebpackConfig.imageOptions = imageOptions;
-
-module.exports = getWebpackConfig;
diff --git a/antd-tools/gulpfile.js b/antd-tools/gulpfile.js
deleted file mode 100644
index b0353a1ee..000000000
--- a/antd-tools/gulpfile.js
+++ /dev/null
@@ -1,499 +0,0 @@
-/* eslint-disable no-console */
-const { getProjectPath, getConfig } = require('./utils/projectHelper');
-const runCmd = require('./runCmd');
-const getBabelCommonConfig = require('./getBabelCommonConfig');
-const merge2 = require('merge2');
-const { execSync } = require('child_process');
-const through2 = require('through2');
-const webpack = require('webpack');
-const babel = require('gulp-babel');
-const argv = require('minimist')(process.argv.slice(2));
-const { Octokit } = require('@octokit/rest');
-
-// const getNpm = require('./getNpm')
-// const selfPackage = require('../package.json')
-const chalk = require('chalk');
-const getNpmArgs = require('./utils/get-npm-args');
-const getChangelog = require('./utils/getChangelog');
-const path = require('path');
-// const watch = require('gulp-watch')
-const ts = require('gulp-typescript');
-const gulp = require('gulp');
-const fs = require('fs');
-const rimraf = require('rimraf');
-const stripCode = require('gulp-strip-code');
-const compareVersions = require('compare-versions');
-const getTSCommonConfig = require('./getTSCommonConfig');
-const replaceLib = require('./replaceLib');
-const sortApiTable = require('./sortApiTable');
-const { glob } = require('glob');
-
-const packageJson = require(getProjectPath('package.json'));
-const tsDefaultReporter = ts.reporter.defaultReporter();
-const cwd = process.cwd();
-const libDir = getProjectPath('lib');
-const esDir = getProjectPath('es');
-const localeDir = getProjectPath('locale');
-
-const tsConfig = getTSCommonConfig();
-
-// FIXME: hard code, not find typescript can modify the path resolution
-const localeDts = `import type { Locale } from '../lib/locale-provider';
-declare const localeValues: Locale;
-export default localeValues;`;
-
-function dist(done) {
- rimraf.sync(path.join(cwd, 'dist'));
- process.env.RUN_ENV = 'PRODUCTION';
- const webpackConfig = require(getProjectPath('webpack.build.conf.js'));
- webpack(webpackConfig, (err, stats) => {
- if (err) {
- console.error(err.stack || err);
- if (err.details) {
- console.error(err.details);
- }
- return;
- }
-
- const info = stats.toJson();
- const { dist: { finalize } = {}, bail } = getConfig();
-
- if (stats.hasErrors()) {
- (info.errors || []).forEach(error => {
- console.error(error);
- });
- // https://github.com/ant-design/ant-design/pull/31662
- if (bail) {
- process.exit(1);
- }
- }
- if (stats.hasWarnings()) {
- console.warn(info.warnings);
- }
-
- const buildInfo = stats.toString({
- colors: true,
- children: true,
- chunks: false,
- modules: false,
- chunkModules: false,
- hash: false,
- version: false,
- });
- console.log(buildInfo);
- // Additional process of dist finalize
- if (finalize) {
- console.log('[Dist] Finalization...');
- finalize();
- }
- done(0);
- });
-}
-
-const tsFiles = ['**/*.ts', '**/*.tsx', '!node_modules/**/*.*', 'typings/**/*.d.ts'];
-
-function compileTs(stream) {
- return stream
- .pipe(ts(tsConfig))
- .js.pipe(
- through2.obj(function (file, encoding, next) {
- // console.log(file.path, file.base);
- file.path = file.path.replace(/\.[jt]sx$/, '.js');
- this.push(file);
- next();
- }),
- )
- .pipe(gulp.dest(process.cwd()));
-}
-
-gulp.task('tsc', () =>
- compileTs(
- gulp.src(tsFiles, {
- base: cwd,
- }),
- ),
-);
-
-gulp.task('clean', () => {
- rimraf.sync(getProjectPath('_site'));
- rimraf.sync(getProjectPath('_data'));
-});
-
-function babelify(js, modules) {
- const babelConfig = getBabelCommonConfig(modules);
- babelConfig.babelrc = false;
- delete babelConfig.cacheDirectory;
- if (modules === false) {
- babelConfig.plugins.push(replaceLib);
- }
- const stream = js.pipe(babel(babelConfig)).pipe(
- through2.obj(function z(file, encoding, next) {
- this.push(file.clone());
- if (modules !== false) {
- const content = file.contents.toString(encoding);
- file.contents = Buffer.from(
- content
- .replace(/lodash-es/g, 'lodash')
- .replace(/@ant-design\/icons-vue/g, '@ant-design/icons-vue/lib/icons'),
- );
- this.push(file);
- }
- next();
- }),
- );
- return stream.pipe(gulp.dest(modules === false ? esDir : libDir));
-}
-
-function compile(modules) {
- const { compile: { transformTSFile, transformFile } = {} } = getConfig();
- rimraf.sync(modules !== false ? libDir : esDir);
-
- const assets = gulp
- .src(['components/**/*.@(png|svg)'])
- .pipe(gulp.dest(modules === false ? esDir : libDir));
- let error = 0;
-
- // =============================== FILE ===============================
- let transformFileStream;
-
- if (transformFile) {
- transformFileStream = gulp
- .src(['components/**/*.tsx'])
- .pipe(
- through2.obj(function (file, encoding, next) {
- let nextFile = transformFile(file) || file;
- nextFile = Array.isArray(nextFile) ? nextFile : [nextFile];
- nextFile.forEach(f => this.push(f));
- next();
- }),
- )
- .pipe(gulp.dest(modules === false ? esDir : libDir));
- }
-
- // ================================ TS ================================
- const source = [
- 'components/**/*.js',
- 'components/**/*.jsx',
- 'components/**/*.tsx',
- 'components/**/*.ts',
- 'typings/**/*.d.ts',
- '!components/*/__tests__/*',
- ];
-
- // Strip content if needed
- let sourceStream = gulp.src(source);
- if (modules === false) {
- sourceStream = sourceStream.pipe(
- stripCode({
- start_comment: '@remove-on-es-build-begin',
- end_comment: '@remove-on-es-build-end',
- }),
- );
- }
-
- if (transformTSFile) {
- sourceStream = sourceStream.pipe(
- through2.obj(function (file, encoding, next) {
- let nextFile = transformTSFile(file) || file;
- nextFile = Array.isArray(nextFile) ? nextFile : [nextFile];
- nextFile.forEach(f => this.push(f));
- next();
- }),
- );
- }
-
- const tsResult = sourceStream.pipe(
- ts(tsConfig, {
- error(e) {
- tsDefaultReporter.error(e);
- error = 1;
- },
- finish: tsDefaultReporter.finish,
- }),
- );
-
- function check() {
- if (error && !argv['ignore-error']) {
- process.exit(1);
- }
- }
-
- tsResult.on('finish', check);
- tsResult.on('end', check);
- const tsFilesStream = babelify(tsResult.js, modules);
- const tsd = tsResult.dts.pipe(gulp.dest(modules === false ? esDir : libDir));
- return merge2([tsFilesStream, tsd, assets, transformFileStream].filter(s => s));
-}
-
-function generateLocale() {
- if (!fs.existsSync(localeDir)) {
- fs.mkdirSync(localeDir);
- }
-
- const localeFiles = glob.sync('components/locale/*.ts?(x)');
- localeFiles.forEach(item => {
- const match = item.match(/components\/locale\/(.*)\.tsx?/);
- if (match) {
- const locale = match[1];
- fs.writeFileSync(
- path.join(localeDir, `${locale}.js`),
- `module.exports = require('../lib/locale/${locale}');`,
- );
- fs.writeFileSync(path.join(localeDir, `${locale}.d.ts`), localeDts);
- }
- });
-}
-
-function tag() {
- console.log('tagging');
- const { version } = packageJson;
- execSync(`git config --global user.email ${process.env.GITHUB_USER_EMAIL}`);
- execSync(`git config --global user.name ${process.env.GITHUB_USER_NAME}`);
- execSync(`git tag ${version}`);
- execSync(
- `git push https://${process.env.GITHUB_TOKEN}@github.com/vueComponent/ant-design-vue.git ${version}:${version}`,
- );
- execSync(
- `git push https://${process.env.GITHUB_TOKEN}@github.com/vueComponent/ant-design-vue.git master:master`,
- );
- console.log('tagged');
-}
-
-function githubRelease(done) {
- const changlogFiles = [
- path.join(cwd, 'CHANGELOG.en-US.md'),
- path.join(cwd, 'CHANGELOG.zh-CN.md'),
- ];
- console.log('creating release on GitHub');
- if (!process.env.GITHUB_TOKEN) {
- console.log('no GitHub token found, skip');
- return;
- }
- if (!changlogFiles.every(file => fs.existsSync(file))) {
- console.log('no changelog found, skip');
- return;
- }
- const github = new Octokit({
- auth: process.env.GITHUB_TOKEN,
- });
- const date = new Date();
- const { version } = packageJson;
- const enChangelog = getChangelog(changlogFiles[0], version);
- const cnChangelog = getChangelog(changlogFiles[1], version);
- const changelog = [
- `\`${date.getFullYear()}-${date.getMonth() + 1}-${date.getDate()}\``,
- enChangelog,
- '\n',
- '---',
- '\n',
- cnChangelog,
- ].join('\n');
- const [_, owner, repo] = execSync('git remote get-url origin') // eslint-disable-line
- .toString()
- .match(/github.com[:/](.+)\/(.+)\.git/);
- github.repos
- .createRelease({
- owner,
- repo,
- tag_name: version,
- name: version,
- body: changelog,
- })
- .then(() => {
- done();
- })
- .catch(err => {
- console.log(err);
- });
-}
-
-gulp.task(
- 'tag',
- gulp.series(done => {
- tag();
- githubRelease(done);
- }),
-);
-
-gulp.task(
- 'check-git',
- gulp.series(done => {
- runCmd('git', ['status', '--porcelain'], (code, result) => {
- if (/^\?\?/m.test(result)) {
- return done(`There are untracked files in the working tree.\n${result}
- `);
- }
- if (/^([ADRM]| [ADRM])/m.test(result)) {
- return done(`There are uncommitted changes in the working tree.\n${result}
- `);
- }
- return done();
- });
- }),
-);
-
-function publish(tagString, done) {
- let args = ['publish', '--with-antd-tools'];
- if (tagString) {
- args = args.concat(['--tag', tagString]);
- }
- const publishNpm = process.env.PUBLISH_NPM_CLI || 'npm';
- runCmd(publishNpm, args, code => {
- tag();
- githubRelease(() => {
- done(code);
- });
- });
-}
-
-function pub(done) {
- const notOk = !packageJson.version.match(/^\d+\.\d+\.\d+$/);
- let tagString;
- if (argv['npm-tag']) {
- tagString = argv['npm-tag'];
- }
- if (!tagString && notOk) {
- tagString = 'next';
- }
- if (packageJson.scripts['pre-publish']) {
- runCmd('npm', ['run', 'pre-publish'], code2 => {
- if (code2) {
- done(code2);
- return;
- }
- publish(tagString, done);
- });
- } else {
- publish(tagString, done);
- }
-}
-
-const startTime = new Date();
-gulp.task('compile-with-es', done => {
- console.log('start compile at ', startTime);
- console.log('[Parallel] Compile to es...');
- compile(false).on('finish', done);
-});
-
-gulp.task('compile-with-lib', done => {
- console.log('[Parallel] Compile to js...');
- compile().on('finish', () => {
- generateLocale();
- done();
- });
-});
-
-gulp.task('compile-finalize', done => {
- // Additional process of compile finalize
- const { compile: { finalize } = {} } = getConfig();
- if (finalize) {
- console.log('[Compile] Finalization...');
- finalize();
- }
- done();
-});
-
-gulp.task(
- 'compile',
- gulp.series(gulp.parallel('compile-with-es', 'compile-with-lib'), 'compile-finalize', done => {
- console.log('end compile at ', new Date());
- console.log('compile time ', (new Date() - startTime) / 1000, 's');
- done();
- }),
-);
-
-gulp.task(
- 'dist',
- gulp.series(done => {
- dist(done);
- }),
-);
-
-gulp.task(
- 'pub',
- gulp.series('check-git', 'compile', 'dist', done => {
- // if (!process.env.GITHUB_TOKEN) {
- // console.log('no GitHub token found, skip');
- // } else {
- // pub(done);
- // }
- pub(done);
- }),
-);
-
-gulp.task(
- 'pub-with-ci',
- gulp.series(done => {
- if (!process.env.NPM_TOKEN) {
- console.log('no NPM token found, skip');
- } else {
- const github = new Octokit({
- auth: process.env.GITHUB_TOKEN,
- });
- const [_, owner, repo] = execSync('git remote get-url origin') // eslint-disable-line
- .toString()
- .match(/github.com[:/](.+)\/(.+)\.git/);
- const getLatestRelease = github.repos.getLatestRelease({
- owner,
- repo,
- });
- const listCommits = github.repos.listCommits({
- owner,
- repo,
- per_page: 1,
- });
- Promise.all([getLatestRelease, listCommits]).then(([latestRelease, commits]) => {
- const preVersion = latestRelease.data.tag_name;
- const { version } = packageJson;
- const [_, newVersion] = commits.data[0].commit.message.trim().match(/bump (.+)/) || []; // eslint-disable-line
- if (
- compareVersions(version, preVersion) === 1 &&
- newVersion &&
- newVersion.trim() === version
- ) {
- // eslint-disable-next-line no-unused-vars
- runCmd('npm', ['run', 'pub'], _code => {
- done();
- });
- } else {
- console.log('donot need publish' + version);
- }
- });
- }
- }),
-);
-
-gulp.task(
- 'guard',
- gulp.series(done => {
- function reportError() {
- console.log(chalk.bgRed('!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!'));
- console.log(chalk.bgRed('!! `npm publish` is forbidden for this package. !!'));
- console.log(chalk.bgRed('!! Use `npm run pub` instead. !!'));
- console.log(chalk.bgRed('!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!'));
- }
- const npmArgs = getNpmArgs();
- if (npmArgs) {
- for (let arg = npmArgs.shift(); arg; arg = npmArgs.shift()) {
- if (
- /^pu(b(l(i(sh?)?)?)?)?$/.test(arg) &&
- npmArgs.indexOf('--with-antd-tools') < 0 &&
- !process.env.npm_config_with_antd_tools
- ) {
- reportError();
- done(1);
- return;
- }
- }
- }
- done();
- }),
-);
-
-gulp.task(
- 'sort-api-table',
- gulp.series(done => {
- sortApiTable();
- done();
- }),
-);
diff --git a/antd-tools/replaceLib.js b/antd-tools/replaceLib.js
deleted file mode 100644
index e9da6e86c..000000000
--- a/antd-tools/replaceLib.js
+++ /dev/null
@@ -1,39 +0,0 @@
-'use strict';
-
-const { dirname } = require('path');
-const fs = require('fs');
-const { getProjectPath } = require('./utils/projectHelper');
-
-function replacePath(path) {
- if (path.node.source && /\/lib\//.test(path.node.source.value)) {
- const esModule = path.node.source.value.replace('/lib/', '/es/');
- const esPath = dirname(getProjectPath('node_modules', esModule));
- if (fs.existsSync(esPath)) {
- path.node.source.value = esModule;
- }
- }
-
- // @ant-design/icons-vue/xxx => @ant-design/icons-vue/es/icons/xxx
- const antdIconMatcher = /@ant-design\/icons-vue\/([^/]*)$/;
- if (path.node.source && antdIconMatcher.test(path.node.source.value)) {
- const esModule = path.node.source.value.replace(
- antdIconMatcher,
- (_, iconName) => `@ant-design/icons-vue/es/icons/${iconName}`,
- );
- const esPath = dirname(getProjectPath('node_modules', esModule));
- if (fs.existsSync(esPath)) {
- path.node.source.value = esModule;
- }
- }
-}
-
-function replaceLib() {
- return {
- visitor: {
- ImportDeclaration: replacePath,
- ExportNamedDeclaration: replacePath,
- },
- };
-}
-
-module.exports = replaceLib;
diff --git a/antd-tools/runCmd.js b/antd-tools/runCmd.js
deleted file mode 100644
index b25ca5711..000000000
--- a/antd-tools/runCmd.js
+++ /dev/null
@@ -1,28 +0,0 @@
-'use strict';
-
-const isWindows = require('is-windows');
-const getRunCmdEnv = require('./utils/getRunCmdEnv');
-
-function runCmd(cmd, _args, fn) {
- const args = _args || [];
-
- if (isWindows()) {
- args.unshift(cmd);
- args.unshift('/c');
- cmd = process.env.ComSpec;
- }
-
- const runner = require('child_process').spawn(cmd, args, {
- // keep color
- stdio: 'inherit',
- env: getRunCmdEnv(),
- });
-
- runner.on('close', code => {
- if (fn) {
- fn(code);
- }
- });
-}
-
-module.exports = runCmd;
diff --git a/antd-tools/sortApiTable.js b/antd-tools/sortApiTable.js
deleted file mode 100644
index 56a2bd21b..000000000
--- a/antd-tools/sortApiTable.js
+++ /dev/null
@@ -1,165 +0,0 @@
-const program = require('commander');
-const majo = require('majo');
-const fs = require('fs');
-const path = require('path');
-const chalk = require('chalk');
-
-const unified = require('unified');
-const parse = require('remark-parse');
-const stringify = require('remark-stringify');
-
-const yamlConfig = require('remark-yaml-config');
-const frontmatter = require('remark-frontmatter');
-
-let fileAPIs = {};
-const remarkWithYaml = unified()
- .use(parse)
- .use(stringify, {
- paddedTable: false,
- listItemIndent: 1,
- stringLength: () => 3,
- })
- .use(frontmatter)
- .use(yamlConfig);
-
-const stream = majo.majo();
-
-function getCellValue(node) {
- return node.children[0].children[0].value;
-}
-
-// from small to large
-const sizeBreakPoints = ['xs', 'sm', 'md', 'lg', 'xl', 'xxl'];
-
-const whiteMethodList = ['afterChange', 'beforeChange'];
-
-const groups = {
- isDynamic: val => /^on[A-Z]/.test(val) || whiteMethodList.indexOf(val) > -1,
- isSize: val => sizeBreakPoints.indexOf(val) > -1,
-};
-
-function asciiSort(prev, next) {
- if (prev > next) {
- return 1;
- }
-
- if (prev < next) {
- return -1;
- }
-
- return 0;
-}
-
-// follow the alphabet order
-function alphabetSort(nodes) {
- // use toLowerCase to keep `case insensitive`
- return nodes.sort((...comparison) =>
- asciiSort(...comparison.map(val => getCellValue(val).toLowerCase())),
- );
-}
-
-function sizeSort(nodes) {
- return nodes.sort((...comparison) =>
- asciiSort(...comparison.map(val => sizeBreakPoints.indexOf(getCellValue(val).toLowerCase()))),
- );
-}
-
-function sort(ast, filename) {
- const nameMatch = filename.match(/^components\/([^/]*)\//);
- const componentName = nameMatch[1];
- fileAPIs[componentName] = fileAPIs[componentName] || {
- static: new Set(),
- size: new Set(),
- dynamic: new Set(),
- };
-
- ast.children.forEach(child => {
- const staticProps = [];
- // prefix with `on`
- const dynamicProps = [];
- // one of ['xs', 'sm', 'md', 'lg', 'xl']
- const sizeProps = [];
-
- // find table markdown type
- if (child.type === 'table') {
- // slice will create new array, so sort can affect the original array.
- // slice(1) cut down the thead
- child.children.slice(1).forEach(node => {
- const value = getCellValue(node);
- if (groups.isDynamic(value)) {
- dynamicProps.push(node);
- fileAPIs[componentName].dynamic.add(value);
- } else if (groups.isSize(value)) {
- sizeProps.push(node);
- fileAPIs[componentName].size.add(value);
- } else {
- staticProps.push(node);
- fileAPIs[componentName].static.add(value);
- }
- });
-
- // eslint-disable-next-line
- child.children = [
- child.children[0],
- ...alphabetSort(staticProps),
- ...sizeSort(sizeProps),
- ...alphabetSort(dynamicProps),
- ];
- }
- });
-
- return ast;
-}
-
-function sortAPI(md, filename) {
- return remarkWithYaml.stringify(sort(remarkWithYaml.parse(md), filename));
-}
-
-function sortMiddleware(ctx) {
- Object.keys(ctx.files).forEach(filename => {
- const content = ctx.fileContents(filename);
- ctx.writeContents(filename, sortAPI(content, filename));
- });
-}
-
-module.exports = () => {
- fileAPIs = {};
-
- program
- .version('0.1.0')
- .option(
- '-f, --file [file]',
- 'Specify which file to be transformed',
- // default value
- 'components/**/index.+(zh-CN|en-US).md',
- )
- .option('-o, --output [output]', 'Specify component api output path', '~component-api.json')
- .parse(process.argv);
- // Get the markdown file all need to be transformed
-
- /* eslint-disable no-console */
- stream
- .source(program.file)
- .use(sortMiddleware)
- .dest('.')
- .then(() => {
- if (program.output) {
- const data = {};
- Object.keys(fileAPIs).forEach(componentName => {
- data[componentName] = {
- static: [...fileAPIs[componentName].static],
- size: [...fileAPIs[componentName].size],
- dynamic: [...fileAPIs[componentName].dynamic],
- };
- });
-
- const reportPath = path.resolve(program.output);
- fs.writeFileSync(reportPath, JSON.stringify(data, null, 2), 'utf8');
- console.log(chalk.cyan(`API list file: ${reportPath}`));
- }
- })
- .then(() => {
- console.log(chalk.green(`sort ant-design-vue api successfully!`));
- });
- /* eslint-enable no-console */
-};
diff --git a/antd-tools/utils/CleanUpStatsPlugin.js b/antd-tools/utils/CleanUpStatsPlugin.js
deleted file mode 100644
index 300168c4f..000000000
--- a/antd-tools/utils/CleanUpStatsPlugin.js
+++ /dev/null
@@ -1,38 +0,0 @@
-// We should use `stats` props of webpack. But it not work in v4.
-class CleanUpStatsPlugin {
- constructor(option) {
- this.option = {
- MiniCSSExtractPlugin: true,
- tsLoader: true,
- ...option,
- };
- }
-
- shouldPickStatChild(child) {
- const { MiniCSSExtractPlugin } = this.option;
- if (MiniCSSExtractPlugin && child.name.includes('mini-css-extract-plugin')) return false;
- return true;
- }
-
- shouldPickWarning(message) {
- const { tsLoader } = this.option;
- if (tsLoader && /export .* was not found in .*/.test(message)) {
- return false;
- }
- return true;
- }
-
- apply(compiler) {
- compiler.hooks.done.tap('CleanUpStatsPlugin', stats => {
- const { children, warnings } = stats.compilation;
- if (Array.isArray(children)) {
- stats.compilation.children = children.filter(child => this.shouldPickStatChild(child));
- }
- if (Array.isArray(warnings)) {
- stats.compilation.warnings = warnings.filter(message => this.shouldPickWarning(message));
- }
- });
- }
-}
-
-module.exports = CleanUpStatsPlugin;
diff --git a/antd-tools/utils/get-npm-args.js b/antd-tools/utils/get-npm-args.js
deleted file mode 100644
index 2e11613cc..000000000
--- a/antd-tools/utils/get-npm-args.js
+++ /dev/null
@@ -1,23 +0,0 @@
-'use strict';
-
-// NOTE: the following code was partially adopted from https://github.com/iarna/in-publish
-module.exports = function getNpmArgs() {
- // https://github.com/iarna/in-publish/pull/14
- if (process.env.npm_command) {
- return [process.env.npm_command];
- }
-
- let npmArgv = null;
-
- try {
- npmArgv = JSON.parse(process.env.npm_config_argv);
- } catch (err) {
- return null;
- }
-
- if (typeof npmArgv !== 'object' || !npmArgv.cooked || !Array.isArray(npmArgv.cooked)) {
- return null;
- }
-
- return npmArgv.cooked;
-};
diff --git a/antd-tools/utils/getChangelog.js b/antd-tools/utils/getChangelog.js
deleted file mode 100644
index b22396784..000000000
--- a/antd-tools/utils/getChangelog.js
+++ /dev/null
@@ -1,23 +0,0 @@
-const fs = require('fs');
-
-module.exports = function getChangelog(file, version) {
- const lines = fs.readFileSync(file).toString().split('\n');
- const changeLog = [];
- const startPattern = new RegExp(`^## ${version}`);
- const stopPattern = /^## /; // 前一个版本
- const skipPattern = /^`/; // 日期
- let begin = false;
- for (let i = 0; i < lines.length; i += 1) {
- const line = lines[i];
- if (begin && stopPattern.test(line)) {
- break;
- }
- if (begin && line && !skipPattern.test(line)) {
- changeLog.push(line);
- }
- if (!begin) {
- begin = startPattern.test(line);
- }
- }
- return changeLog.join('\n');
-};
diff --git a/antd-tools/utils/getRunCmdEnv.js b/antd-tools/utils/getRunCmdEnv.js
deleted file mode 100644
index 12e326050..000000000
--- a/antd-tools/utils/getRunCmdEnv.js
+++ /dev/null
@@ -1,23 +0,0 @@
-'use strict';
-
-const path = require('path');
-const isWindows = require('is-windows');
-
-module.exports = function getRunCmdEnv() {
- const env = {};
- Object.keys(process.env).forEach(key => {
- env[key] = process.env[key];
- });
- // make sure `antd-tools/node_modules/.bin` in the PATH env
- const nodeModulesBinDir = path.join(__dirname, '../../node_modules/.bin');
-
- Object.entries(env)
- .filter(v => v.slice(0, 1).pop().toLowerCase() === 'path')
- .forEach(v => {
- const key = v.slice(0, 1).pop();
- env[key] = env[key]
- ? `${nodeModulesBinDir}${isWindows() ? ';' : ':'}${env[key]}`
- : nodeModulesBinDir;
- });
- return env;
-};
diff --git a/antd-tools/utils/projectHelper.js b/antd-tools/utils/projectHelper.js
deleted file mode 100644
index 9ade6c777..000000000
--- a/antd-tools/utils/projectHelper.js
+++ /dev/null
@@ -1,80 +0,0 @@
-const fs = require('fs');
-const path = require('path');
-
-const cwd = process.cwd();
-
-function getProjectPath(...filePath) {
- return path.join(cwd, ...filePath);
-}
-
-function resolve(moduleName) {
- return require.resolve(moduleName);
-}
-
-// We need hack the require to ensure use package module first
-// For example, `typescript` is required by `gulp-typescript` but provided by `antd`
-// we do not need for ant-design-vue
-let injected = false;
-function injectRequire() {
- if (injected) return;
-
- const Module = require('module');
-
- const oriRequire = Module.prototype.require;
- Module.prototype.require = function (...args) {
- const moduleName = args[0];
- try {
- return oriRequire.apply(this, args);
- } catch (err) {
- const newArgs = [...args];
- if (moduleName[0] !== '/') {
- newArgs[0] = getProjectPath('node_modules', moduleName);
- }
- return oriRequire.apply(this, newArgs);
- }
- };
-
- injected = true;
-}
-
-function getConfig() {
- const configPath = getProjectPath('.antd-tools.config.js');
- if (fs.existsSync(configPath)) {
- return require(configPath);
- }
-
- return {};
-}
-
-/**
- * 是否存在可用的browserslist config
- * https://github.com/browserslist/browserslist#queries
- * @returns
- */
-function isThereHaveBrowserslistConfig() {
- try {
- const packageJson = require(getProjectPath('package.json'));
- if (packageJson.browserslist) {
- return true;
- }
- } catch (e) {
- //
- }
- if (fs.existsSync(getProjectPath('.browserslistrc'))) {
- return true;
- }
- if (fs.existsSync(getProjectPath('browserslist'))) {
- return true;
- }
- // parent项目的配置支持,需要再补充
- // ROWSERSLIST ROWSERSLIST_ENV 变量的形式,需要再补充。
- return false;
-}
-
-module.exports = {
- getProjectPath,
- resolve,
- injectRequire,
- getConfig,
- isThereHaveBrowserslistConfig,
-};
diff --git a/logo.png b/apps/playground/assets/logo.png
similarity index 100%
rename from logo.png
rename to apps/playground/assets/logo.png
diff --git a/apps/playground/package.json b/apps/playground/package.json
index cb2a4ca9d..4dba3629d 100644
--- a/apps/playground/package.json
+++ b/apps/playground/package.json
@@ -13,7 +13,7 @@
"dependencies": {
"@floating-ui/vue": "^1.1.5",
"@heroicons/vue": "^2.1.5",
- "@ant-design-vue/ui": "*",
+ "@ant-design-vue/ui": "workspace:*",
"@simonwep/pickr": "^1.9.1",
"@trpc/client": "^11.0.0",
"@trpc/server": "^11.0.0",
@@ -25,11 +25,11 @@
"vue-router": "^4.4.0"
},
"devDependencies": {
- "@ant-design-vue/eslint-config": "*",
- "@ant-design-vue/prettier-config": "*",
- "@ant-design-vue/typescript-config": "*",
- "@ant-design-vue/vite-config": "*",
- "@ant-design-vue/tailwind-config": "*",
+ "@ant-design-vue/eslint-config": "workspace:*",
+ "@ant-design-vue/prettier-config": "workspace:*",
+ "@ant-design-vue/typescript-config": "workspace:*",
+ "@ant-design-vue/vite-config": "workspace:*",
+ "@ant-design-vue/tailwind-config": "workspace:*",
"@tailwindcss/vite": "^4.1.3",
"@types/cookies": "^0.9.0",
"@types/node": "^20.0.0",
diff --git a/components/__tests__/util/domHook.js b/components/__tests__/util/domHook.js
deleted file mode 100644
index dddc3ffc2..000000000
--- a/components/__tests__/util/domHook.js
+++ /dev/null
@@ -1,58 +0,0 @@
-const __NULL__ = { notExist: true };
-
-export function spyElementPrototypes(Element, properties) {
- const propNames = Object.keys(properties);
- const originDescriptors = {};
-
- propNames.forEach(propName => {
- const originDescriptor = Object.getOwnPropertyDescriptor(Element.prototype, propName);
- originDescriptors[propName] = originDescriptor || __NULL__;
-
- const spyProp = properties[propName];
-
- if (typeof spyProp === 'function') {
- // If is a function
- Element.prototype[propName] = function spyFunc(...args) {
- return spyProp.call(this, originDescriptor, ...args);
- };
- } else {
- // Otherwise tread as a property
- Object.defineProperty(Element.prototype, propName, {
- ...spyProp,
- set(value) {
- if (spyProp.set) {
- return spyProp.set.call(this, originDescriptor, value);
- }
- return originDescriptor.set(value);
- },
- get() {
- if (spyProp.get) {
- return spyProp.get.call(this, originDescriptor);
- }
- return originDescriptor.get();
- },
- });
- }
- });
-
- return {
- mockRestore() {
- propNames.forEach(propName => {
- const originDescriptor = originDescriptors[propName];
- if (originDescriptor === __NULL__) {
- delete Element.prototype[propName];
- } else if (typeof originDescriptor === 'function') {
- Element.prototype[propName] = originDescriptor;
- } else {
- Object.defineProperty(Element.prototype, propName, originDescriptor);
- }
- });
- },
- };
-}
-
-export function spyElementPrototype(Element, propName, property) {
- return spyElementPrototypes(Element, {
- [propName]: property,
- });
-}
diff --git a/components/_util/ActionButton.tsx b/components/_util/ActionButton.tsx
deleted file mode 100644
index 0958d2404..000000000
--- a/components/_util/ActionButton.tsx
+++ /dev/null
@@ -1,123 +0,0 @@
-import type { ExtractPropTypes, PropType } from 'vue';
-import { shallowRef, onMounted, defineComponent, onBeforeUnmount } from 'vue';
-import Button from '../button';
-import type { ButtonProps } from '../button';
-import type { LegacyButtonType } from '../button/buttonTypes';
-import { convertLegacyProps } from '../button/buttonTypes';
-import useDestroyed from './hooks/useDestroyed';
-import { objectType } from './type';
-import { findDOMNode } from './props-util';
-
-const actionButtonProps = {
- type: {
- type: String as PropType,
- },
- actionFn: Function as PropType<(...args: any[]) => any | PromiseLike>,
- close: Function,
- autofocus: Boolean,
- prefixCls: String,
- buttonProps: objectType(),
- emitEvent: Boolean,
- quitOnNullishReturnValue: Boolean,
-};
-
-export type ActionButtonProps = ExtractPropTypes;
-
-function isThenable(thing?: PromiseLike): boolean {
- return !!(thing && thing.then);
-}
-
-export default defineComponent({
- compatConfig: { MODE: 3 },
- name: 'ActionButton',
- props: actionButtonProps,
- setup(props, { slots }) {
- const clickedRef = shallowRef(false);
- const buttonRef = shallowRef();
- const loading = shallowRef(false);
- let timeoutId: any;
- const isDestroyed = useDestroyed();
- onMounted(() => {
- if (props.autofocus) {
- timeoutId = setTimeout(() => findDOMNode(buttonRef.value)?.focus?.());
- }
- });
- onBeforeUnmount(() => {
- clearTimeout(timeoutId);
- });
-
- const onInternalClose = (...args: any[]) => {
- props.close?.(...args);
- };
-
- const handlePromiseOnOk = (returnValueOfOnOk?: PromiseLike) => {
- if (!isThenable(returnValueOfOnOk)) {
- return;
- }
- loading.value = true;
- returnValueOfOnOk!.then(
- (...args: any[]) => {
- if (!isDestroyed.value) {
- loading.value = false;
- }
- onInternalClose(...args);
- clickedRef.value = false;
- },
- (e: Error) => {
- // See: https://github.com/ant-design/ant-design/issues/6183
- if (!isDestroyed.value) {
- loading.value = false;
- }
- clickedRef.value = false;
- return Promise.reject(e);
- },
- );
- };
-
- const onClick = (e: MouseEvent) => {
- const { actionFn } = props;
- if (clickedRef.value) {
- return;
- }
- clickedRef.value = true;
- if (!actionFn) {
- onInternalClose();
- return;
- }
- let returnValueOfOnOk: PromiseLike;
- if (props.emitEvent) {
- returnValueOfOnOk = actionFn(e);
- if (props.quitOnNullishReturnValue && !isThenable(returnValueOfOnOk)) {
- clickedRef.value = false;
- onInternalClose(e);
- return;
- }
- } else if (actionFn.length) {
- returnValueOfOnOk = actionFn(props.close);
- // https://github.com/ant-design/ant-design/issues/23358
- clickedRef.value = false;
- } else {
- returnValueOfOnOk = actionFn();
- if (!returnValueOfOnOk) {
- onInternalClose();
- return;
- }
- }
- handlePromiseOnOk(returnValueOfOnOk);
- };
- return () => {
- const { type, prefixCls, buttonProps } = props;
- return (
-
- );
- };
- },
-});
diff --git a/components/_util/BaseInput.tsx b/components/_util/BaseInput.tsx
deleted file mode 100644
index e6bc9d708..000000000
--- a/components/_util/BaseInput.tsx
+++ /dev/null
@@ -1,168 +0,0 @@
-import type { PropType } from 'vue';
-import { computed, defineComponent, shallowRef, ref, watch } from 'vue';
-import PropTypes from './vue-types';
-import type { BaseInputInnerExpose } from './BaseInputInner';
-import BaseInputInner from './BaseInputInner';
-import { styleObjectToString } from '../vc-util/Dom/css';
-
-export interface BaseInputExpose {
- focus: () => void;
- blur: () => void;
- input: HTMLInputElement | HTMLTextAreaElement | null;
- setSelectionRange: (
- start: number,
- end: number,
- direction?: 'forward' | 'backward' | 'none',
- ) => void;
- select: () => void;
- getSelectionStart: () => number | null;
- getSelectionEnd: () => number | null;
- getScrollTop: () => number | null;
- setScrollTop: (scrollTop: number) => void;
-}
-const BaseInput = defineComponent({
- compatConfig: { MODE: 3 },
- inheritAttrs: false,
- props: {
- disabled: PropTypes.looseBool,
- type: PropTypes.string,
- value: PropTypes.any,
- lazy: PropTypes.bool.def(true),
- tag: {
- type: String as PropType<'input' | 'textarea'>,
- default: 'input',
- },
- size: PropTypes.string,
- style: PropTypes.oneOfType([String, Object]),
- class: PropTypes.string,
- },
- emits: [
- 'change',
- 'input',
- 'blur',
- 'keydown',
- 'focus',
- 'compositionstart',
- 'compositionend',
- 'keyup',
- 'paste',
- 'mousedown',
- ],
- setup(props, { emit, attrs, expose }) {
- const inputRef = shallowRef(null);
- const renderValue = ref();
- const isComposing = ref(false);
- watch(
- [() => props.value, isComposing],
- () => {
- if (isComposing.value) return;
- renderValue.value = props.value;
- },
- { immediate: true },
- );
- const handleChange = (e: Event) => {
- emit('change', e);
- };
- const onCompositionstart = (e: CompositionEvent) => {
- isComposing.value = true;
- (e.target as any).composing = true;
- emit('compositionstart', e);
- };
- const onCompositionend = (e: CompositionEvent) => {
- isComposing.value = false;
- (e.target as any).composing = false;
- emit('compositionend', e);
- const event = document.createEvent('HTMLEvents');
- event.initEvent('input', true, true);
- e.target.dispatchEvent(event);
- handleChange(e);
- };
- const handleInput = (e: Event) => {
- if (isComposing.value && props.lazy) {
- renderValue.value = (e.target as HTMLInputElement).value;
- return;
- }
- emit('input', e);
- };
-
- const handleBlur = (e: Event) => {
- emit('blur', e);
- };
- const handleFocus = (e: Event) => {
- emit('focus', e);
- };
-
- const focus = () => {
- if (inputRef.value) {
- inputRef.value.focus();
- }
- };
- const blur = () => {
- if (inputRef.value) {
- inputRef.value.blur();
- }
- };
- const handleKeyDown = (e: KeyboardEvent) => {
- emit('keydown', e);
- };
- const handleKeyUp = (e: KeyboardEvent) => {
- emit('keyup', e);
- };
- const setSelectionRange = (
- start: number,
- end: number,
- direction?: 'forward' | 'backward' | 'none',
- ) => {
- inputRef.value?.setSelectionRange(start, end, direction);
- };
-
- const select = () => {
- inputRef.value?.select();
- };
- expose({
- focus,
- blur,
- input: computed(() => inputRef.value?.input),
- setSelectionRange,
- select,
- getSelectionStart: () => inputRef.value?.getSelectionStart(),
- getSelectionEnd: () => inputRef.value?.getSelectionEnd(),
- getScrollTop: () => inputRef.value?.getScrollTop(),
- });
- const handleMousedown = (e: MouseEvent) => {
- emit('mousedown', e);
- };
- const handlePaste = (e: ClipboardEvent) => {
- emit('paste', e);
- };
- const styleString = computed(() => {
- return props.style && typeof props.style !== 'string'
- ? styleObjectToString(props.style)
- : props.style;
- });
- return () => {
- const { style, lazy, ...restProps } = props;
- return (
-
- );
- };
- },
-});
-
-export default BaseInput;
diff --git a/components/_util/BaseInputInner.tsx b/components/_util/BaseInputInner.tsx
deleted file mode 100644
index 10423d7a4..000000000
--- a/components/_util/BaseInputInner.tsx
+++ /dev/null
@@ -1,96 +0,0 @@
-import type { PropType } from 'vue';
-import { defineComponent, shallowRef } from 'vue';
-import PropTypes from './vue-types';
-
-export interface BaseInputInnerExpose {
- focus: () => void;
- blur: () => void;
- input: HTMLInputElement | HTMLTextAreaElement | null;
- setSelectionRange: (
- start: number,
- end: number,
- direction?: 'forward' | 'backward' | 'none',
- ) => void;
- select: () => void;
- getSelectionStart: () => number | null;
- getSelectionEnd: () => number | null;
- getScrollTop: () => number | null;
- setScrollTop: (scrollTop: number) => void;
-}
-const BaseInputInner = defineComponent({
- compatConfig: { MODE: 3 },
- // inheritAttrs: false,
- props: {
- disabled: PropTypes.looseBool,
- type: PropTypes.string,
- value: PropTypes.any,
- tag: {
- type: String as PropType<'input' | 'textarea'>,
- default: 'input',
- },
- size: PropTypes.string,
- onChange: Function as PropType<(e: Event) => void>,
- onInput: Function as PropType<(e: Event) => void>,
- onBlur: Function as PropType<(e: Event) => void>,
- onFocus: Function as PropType<(e: Event) => void>,
- onKeydown: Function as PropType<(e: Event) => void>,
- onCompositionstart: Function as PropType<(e: Event) => void>,
- onCompositionend: Function as PropType<(e: Event) => void>,
- onKeyup: Function as PropType<(e: Event) => void>,
- onPaste: Function as PropType<(e: Event) => void>,
- onMousedown: Function as PropType<(e: Event) => void>,
- },
- emits: [
- 'change',
- 'input',
- 'blur',
- 'keydown',
- 'focus',
- 'compositionstart',
- 'compositionend',
- 'keyup',
- 'paste',
- 'mousedown',
- ],
- setup(props, { expose }) {
- const inputRef = shallowRef(null);
-
- const focus = () => {
- if (inputRef.value) {
- inputRef.value.focus();
- }
- };
- const blur = () => {
- if (inputRef.value) {
- inputRef.value.blur();
- }
- };
- const setSelectionRange = (
- start: number,
- end: number,
- direction?: 'forward' | 'backward' | 'none',
- ) => {
- inputRef.value?.setSelectionRange(start, end, direction);
- };
-
- const select = () => {
- inputRef.value?.select();
- };
- expose({
- focus,
- blur,
- input: inputRef,
- setSelectionRange,
- select,
- getSelectionStart: () => inputRef.value?.selectionStart,
- getSelectionEnd: () => inputRef.value?.selectionEnd,
- getScrollTop: () => inputRef.value?.scrollTop,
- });
- return () => {
- const { tag: Tag, value, ...restProps } = props;
- return ;
- };
- },
-});
-
-export default BaseInputInner;
diff --git a/components/_util/BaseMixin.ts b/components/_util/BaseMixin.ts
deleted file mode 100644
index 33831b9fa..000000000
--- a/components/_util/BaseMixin.ts
+++ /dev/null
@@ -1,45 +0,0 @@
-import { nextTick } from 'vue';
-import { getOptionProps } from './props-util';
-
-export default {
- methods: {
- setState(state = {}, callback: () => any) {
- let newState = typeof state === 'function' ? state(this.$data, this.$props) : state;
- if (this.getDerivedStateFromProps) {
- const s = this.getDerivedStateFromProps(getOptionProps(this), {
- ...this.$data,
- ...newState,
- });
- if (s === null) {
- return;
- } else {
- newState = { ...newState, ...(s || {}) };
- }
- }
- Object.assign(this.$data, newState);
- if (this._.isMounted) {
- this.$forceUpdate();
- }
- nextTick(() => {
- callback && callback();
- });
- },
- __emit() {
- // 直接调用事件,底层组件不需要vueTool记录events
- // eslint-disable-next-line prefer-rest-params
- const args = [].slice.call(arguments, 0);
- let eventName = args[0];
- eventName = `on${eventName[0].toUpperCase()}${eventName.substring(1)}`;
- const event = this.$props[eventName] || this.$attrs[eventName];
- if (args.length && event) {
- if (Array.isArray(event)) {
- for (let i = 0, l = event.length; i < l; i++) {
- event[i](...args.slice(1));
- }
- } else {
- event(...args.slice(1));
- }
- }
- },
- },
-};
diff --git a/components/_util/EventInterface.ts b/components/_util/EventInterface.ts
deleted file mode 100644
index b72777cf5..000000000
--- a/components/_util/EventInterface.ts
+++ /dev/null
@@ -1,19 +0,0 @@
-export type FocusEventHandler = (e: FocusEvent) => void;
-export type MouseEventHandler = (e: MouseEvent) => void;
-export type KeyboardEventHandler = (e: KeyboardEvent) => void;
-export type CompositionEventHandler = (e: CompositionEvent) => void;
-export type ClipboardEventHandler = (e: ClipboardEvent) => void;
-export type ChangeEventHandler = (e: ChangeEvent) => void;
-export type WheelEventHandler = (e: WheelEvent) => void;
-export type ChangeEvent = Event & {
- target: {
- value?: string | undefined;
- };
-};
-export type CheckboxChangeEvent = Event & {
- target: {
- checked?: boolean;
- };
-};
-
-export type EventHandler = (...args: any[]) => void;
diff --git a/components/_util/KeyCode.ts b/components/_util/KeyCode.ts
deleted file mode 100644
index 2746f9e9a..000000000
--- a/components/_util/KeyCode.ts
+++ /dev/null
@@ -1,522 +0,0 @@
-/**
- * @ignore
- * some key-codes definition and utils from closure-library
- * @author yiminghe@gmail.com
- */
-
-const KeyCode = {
- /**
- * MAC_ENTER
- */
- MAC_ENTER: 3,
- /**
- * BACKSPACE
- */
- BACKSPACE: 8,
- /**
- * TAB
- */
- TAB: 9,
- /**
- * NUMLOCK on FF/Safari Mac
- */
- NUM_CENTER: 12, // NUMLOCK on FF/Safari Mac
- /**
- * ENTER
- */
- ENTER: 13,
- /**
- * SHIFT
- */
- SHIFT: 16,
- /**
- * CTRL
- */
- CTRL: 17,
- /**
- * ALT
- */
- ALT: 18,
- /**
- * PAUSE
- */
- PAUSE: 19,
- /**
- * CAPS_LOCK
- */
- CAPS_LOCK: 20,
- /**
- * ESC
- */
- ESC: 27,
- /**
- * SPACE
- */
- SPACE: 32,
- /**
- * PAGE_UP
- */
- PAGE_UP: 33, // also NUM_NORTH_EAST
- /**
- * PAGE_DOWN
- */
- PAGE_DOWN: 34, // also NUM_SOUTH_EAST
- /**
- * END
- */
- END: 35, // also NUM_SOUTH_WEST
- /**
- * HOME
- */
- HOME: 36, // also NUM_NORTH_WEST
- /**
- * LEFT
- */
- LEFT: 37, // also NUM_WEST
- /**
- * UP
- */
- UP: 38, // also NUM_NORTH
- /**
- * RIGHT
- */
- RIGHT: 39, // also NUM_EAST
- /**
- * DOWN
- */
- DOWN: 40, // also NUM_SOUTH
- /**
- * PRINT_SCREEN
- */
- PRINT_SCREEN: 44,
- /**
- * INSERT
- */
- INSERT: 45, // also NUM_INSERT
- /**
- * DELETE
- */
- DELETE: 46, // also NUM_DELETE
- /**
- * ZERO
- */
- ZERO: 48,
- /**
- * ONE
- */
- ONE: 49,
- /**
- * TWO
- */
- TWO: 50,
- /**
- * THREE
- */
- THREE: 51,
- /**
- * FOUR
- */
- FOUR: 52,
- /**
- * FIVE
- */
- FIVE: 53,
- /**
- * SIX
- */
- SIX: 54,
- /**
- * SEVEN
- */
- SEVEN: 55,
- /**
- * EIGHT
- */
- EIGHT: 56,
- /**
- * NINE
- */
- NINE: 57,
- /**
- * QUESTION_MARK
- */
- QUESTION_MARK: 63, // needs localization
- /**
- * A
- */
- A: 65,
- /**
- * B
- */
- B: 66,
- /**
- * C
- */
- C: 67,
- /**
- * D
- */
- D: 68,
- /**
- * E
- */
- E: 69,
- /**
- * F
- */
- F: 70,
- /**
- * G
- */
- G: 71,
- /**
- * H
- */
- H: 72,
- /**
- * I
- */
- I: 73,
- /**
- * J
- */
- J: 74,
- /**
- * K
- */
- K: 75,
- /**
- * L
- */
- L: 76,
- /**
- * M
- */
- M: 77,
- /**
- * N
- */
- N: 78,
- /**
- * O
- */
- O: 79,
- /**
- * P
- */
- P: 80,
- /**
- * Q
- */
- Q: 81,
- /**
- * R
- */
- R: 82,
- /**
- * S
- */
- S: 83,
- /**
- * T
- */
- T: 84,
- /**
- * U
- */
- U: 85,
- /**
- * V
- */
- V: 86,
- /**
- * W
- */
- W: 87,
- /**
- * X
- */
- X: 88,
- /**
- * Y
- */
- Y: 89,
- /**
- * Z
- */
- Z: 90,
- /**
- * META
- */
- META: 91, // WIN_KEY_LEFT
- /**
- * WIN_KEY_RIGHT
- */
- WIN_KEY_RIGHT: 92,
- /**
- * CONTEXT_MENU
- */
- CONTEXT_MENU: 93,
- /**
- * NUM_ZERO
- */
- NUM_ZERO: 96,
- /**
- * NUM_ONE
- */
- NUM_ONE: 97,
- /**
- * NUM_TWO
- */
- NUM_TWO: 98,
- /**
- * NUM_THREE
- */
- NUM_THREE: 99,
- /**
- * NUM_FOUR
- */
- NUM_FOUR: 100,
- /**
- * NUM_FIVE
- */
- NUM_FIVE: 101,
- /**
- * NUM_SIX
- */
- NUM_SIX: 102,
- /**
- * NUM_SEVEN
- */
- NUM_SEVEN: 103,
- /**
- * NUM_EIGHT
- */
- NUM_EIGHT: 104,
- /**
- * NUM_NINE
- */
- NUM_NINE: 105,
- /**
- * NUM_MULTIPLY
- */
- NUM_MULTIPLY: 106,
- /**
- * NUM_PLUS
- */
- NUM_PLUS: 107,
- /**
- * NUM_MINUS
- */
- NUM_MINUS: 109,
- /**
- * NUM_PERIOD
- */
- NUM_PERIOD: 110,
- /**
- * NUM_DIVISION
- */
- NUM_DIVISION: 111,
- /**
- * F1
- */
- F1: 112,
- /**
- * F2
- */
- F2: 113,
- /**
- * F3
- */
- F3: 114,
- /**
- * F4
- */
- F4: 115,
- /**
- * F5
- */
- F5: 116,
- /**
- * F6
- */
- F6: 117,
- /**
- * F7
- */
- F7: 118,
- /**
- * F8
- */
- F8: 119,
- /**
- * F9
- */
- F9: 120,
- /**
- * F10
- */
- F10: 121,
- /**
- * F11
- */
- F11: 122,
- /**
- * F12
- */
- F12: 123,
- /**
- * NUMLOCK
- */
- NUMLOCK: 144,
- /**
- * SEMICOLON
- */
- SEMICOLON: 186, // needs localization
- /**
- * DASH
- */
- DASH: 189, // needs localization
- /**
- * EQUALS
- */
- EQUALS: 187, // needs localization
- /**
- * COMMA
- */
- COMMA: 188, // needs localization
- /**
- * PERIOD
- */
- PERIOD: 190, // needs localization
- /**
- * SLASH
- */
- SLASH: 191, // needs localization
- /**
- * APOSTROPHE
- */
- APOSTROPHE: 192, // needs localization
- /**
- * SINGLE_QUOTE
- */
- SINGLE_QUOTE: 222, // needs localization
- /**
- * OPEN_SQUARE_BRACKET
- */
- OPEN_SQUARE_BRACKET: 219, // needs localization
- /**
- * BACKSLASH
- */
- BACKSLASH: 220, // needs localization
- /**
- * CLOSE_SQUARE_BRACKET
- */
- CLOSE_SQUARE_BRACKET: 221, // needs localization
- /**
- * WIN_KEY
- */
- WIN_KEY: 224,
- /**
- * MAC_FF_META
- */
- MAC_FF_META: 224, // Firefox (Gecko) fires this for the meta key instead of 91
- /**
- * WIN_IME
- */
- WIN_IME: 229,
-
- // ======================== Function ========================
- /**
- * whether text and modified key is entered at the same time.
- */
- isTextModifyingKeyEvent: function isTextModifyingKeyEvent(e: KeyboardEvent) {
- const { keyCode } = e;
- if (
- (e.altKey && !e.ctrlKey) ||
- e.metaKey ||
- // Function keys don't generate text
- (keyCode >= KeyCode.F1 && keyCode <= KeyCode.F12)
- ) {
- return false;
- }
-
- // The following keys are quite harmless, even in combination with
- // CTRL, ALT or SHIFT.
- switch (keyCode) {
- case KeyCode.ALT:
- case KeyCode.CAPS_LOCK:
- case KeyCode.CONTEXT_MENU:
- case KeyCode.CTRL:
- case KeyCode.DOWN:
- case KeyCode.END:
- case KeyCode.ESC:
- case KeyCode.HOME:
- case KeyCode.INSERT:
- case KeyCode.LEFT:
- case KeyCode.MAC_FF_META:
- case KeyCode.META:
- case KeyCode.NUMLOCK:
- case KeyCode.NUM_CENTER:
- case KeyCode.PAGE_DOWN:
- case KeyCode.PAGE_UP:
- case KeyCode.PAUSE:
- case KeyCode.PRINT_SCREEN:
- case KeyCode.RIGHT:
- case KeyCode.SHIFT:
- case KeyCode.UP:
- case KeyCode.WIN_KEY:
- case KeyCode.WIN_KEY_RIGHT:
- return false;
- default:
- return true;
- }
- },
-
- /**
- * whether character is entered.
- */
- isCharacterKey: function isCharacterKey(keyCode: number) {
- if (keyCode >= KeyCode.ZERO && keyCode <= KeyCode.NINE) {
- return true;
- }
-
- if (keyCode >= KeyCode.NUM_ZERO && keyCode <= KeyCode.NUM_MULTIPLY) {
- return true;
- }
-
- if (keyCode >= KeyCode.A && keyCode <= KeyCode.Z) {
- return true;
- }
-
- // Safari sends zero key code for non-latin characters.
- if (window.navigator.userAgent.indexOf('WebKit') !== -1 && keyCode === 0) {
- return true;
- }
-
- switch (keyCode) {
- case KeyCode.SPACE:
- case KeyCode.QUESTION_MARK:
- case KeyCode.NUM_PLUS:
- case KeyCode.NUM_MINUS:
- case KeyCode.NUM_PERIOD:
- case KeyCode.NUM_DIVISION:
- case KeyCode.SEMICOLON:
- case KeyCode.DASH:
- case KeyCode.EQUALS:
- case KeyCode.COMMA:
- case KeyCode.PERIOD:
- case KeyCode.SLASH:
- case KeyCode.APOSTROPHE:
- case KeyCode.SINGLE_QUOTE:
- case KeyCode.OPEN_SQUARE_BRACKET:
- case KeyCode.BACKSLASH:
- case KeyCode.CLOSE_SQUARE_BRACKET:
- return true;
- default:
- return false;
- }
- },
-};
-
-export default KeyCode;
diff --git a/components/_util/Portal.tsx b/components/_util/Portal.tsx
deleted file mode 100644
index caba27b22..000000000
--- a/components/_util/Portal.tsx
+++ /dev/null
@@ -1,72 +0,0 @@
-import PropTypes from './vue-types';
-import {
- defineComponent,
- nextTick,
- onBeforeMount,
- onMounted,
- onUpdated,
- Teleport,
- watch,
-} from 'vue';
-import { useInjectPortal } from '../vc-trigger/context';
-
-export default defineComponent({
- compatConfig: { MODE: 3 },
- name: 'Portal',
- inheritAttrs: false,
- props: {
- getContainer: PropTypes.func.isRequired,
- didUpdate: Function,
- },
- setup(props, { slots }) {
- let isSSR = true;
- // getContainer 不会改变,不用响应式
- let container: HTMLElement;
- const { shouldRender } = useInjectPortal();
-
- function setContainer() {
- if (shouldRender.value) {
- container = props.getContainer();
- }
- }
-
- onBeforeMount(() => {
- isSSR = false;
- // drawer
- setContainer();
- });
- onMounted(() => {
- if (container) return;
- // https://github.com/vueComponent/ant-design-vue/issues/6937
- setContainer();
- });
-
- const stopWatch = watch(shouldRender, () => {
- if (shouldRender.value && !container) {
- container = props.getContainer();
- }
- if (container) {
- stopWatch();
- }
- });
- onUpdated(() => {
- nextTick(() => {
- if (shouldRender.value) {
- props.didUpdate?.(props);
- }
- });
- });
- // onBeforeUnmount(() => {
- // if (container && container.parentNode) {
- // container.parentNode.removeChild(container);
- // }
- // });
- return () => {
- if (!shouldRender.value) return null;
- if (isSSR) {
- return slots.default?.();
- }
- return container ? : null;
- };
- },
-});
diff --git a/components/_util/PortalWrapper.tsx b/components/_util/PortalWrapper.tsx
deleted file mode 100644
index 91561990b..000000000
--- a/components/_util/PortalWrapper.tsx
+++ /dev/null
@@ -1,191 +0,0 @@
-import PropTypes from './vue-types';
-import Portal from './Portal';
-import {
- defineComponent,
- shallowRef,
- watch,
- onMounted,
- onBeforeUnmount,
- onUpdated,
- nextTick,
- computed,
-} from 'vue';
-import canUseDom from './canUseDom';
-import raf from './raf';
-import { booleanType } from './type';
-import useScrollLocker from './hooks/useScrollLocker';
-
-let openCount = 0;
-const supportDom = canUseDom();
-
-/** @private Test usage only */
-export function getOpenCount() {
- return process.env.NODE_ENV === 'test' ? openCount : 0;
-}
-
-const getParent = (getContainer: GetContainer) => {
- if (!supportDom) {
- return null;
- }
- if (getContainer) {
- if (typeof getContainer === 'string') {
- return document.querySelectorAll(getContainer)[0] as HTMLElement;
- }
- if (typeof getContainer === 'function') {
- return getContainer();
- }
- if (typeof getContainer === 'object' && getContainer instanceof window.HTMLElement) {
- return getContainer;
- }
- }
- return document.body;
-};
-
-export type GetContainer = string | HTMLElement | (() => HTMLElement);
-
-export default defineComponent({
- compatConfig: { MODE: 3 },
- name: 'PortalWrapper',
- inheritAttrs: false,
- props: {
- wrapperClassName: String,
- forceRender: { type: Boolean, default: undefined },
- getContainer: PropTypes.any,
- visible: { type: Boolean, default: undefined },
- autoLock: booleanType(),
- didUpdate: Function,
- },
-
- setup(props, { slots }) {
- const container = shallowRef();
- const componentRef = shallowRef();
- const rafId = shallowRef();
- const triggerUpdate = shallowRef(1);
- const defaultContainer = canUseDom() && document.createElement('div');
- const removeCurrentContainer = () => {
- // Portal will remove from `parentNode`.
- // Let's handle this again to avoid refactor issue.
- if (container.value === defaultContainer) {
- container.value?.parentNode?.removeChild(container.value);
- }
- container.value = null;
- };
- let parent: HTMLElement = null;
- const attachToParent = (force = false) => {
- if (force || (container.value && !container.value.parentNode)) {
- parent = getParent(props.getContainer);
- if (parent) {
- parent.appendChild(container.value);
- return true;
- }
-
- return false;
- }
-
- return true;
- };
- const getContainer = () => {
- if (!supportDom) {
- return null;
- }
- if (!container.value) {
- container.value = defaultContainer;
- attachToParent(true);
- }
- setWrapperClassName();
- return container.value;
- };
- const setWrapperClassName = () => {
- const { wrapperClassName } = props;
- if (container.value && wrapperClassName && wrapperClassName !== container.value.className) {
- container.value.className = wrapperClassName;
- }
- };
- onUpdated(() => {
- setWrapperClassName();
- attachToParent();
- });
-
- useScrollLocker(
- computed(() => {
- return (
- props.autoLock &&
- props.visible &&
- canUseDom() &&
- (container.value === document.body || container.value === defaultContainer)
- );
- }),
- );
- onMounted(() => {
- let init = false;
- watch(
- [() => props.visible, () => props.getContainer],
- ([visible, getContainer], [prevVisible, prevGetContainer]) => {
- // Update count
- if (supportDom) {
- parent = getParent(props.getContainer);
- if (parent === document.body) {
- if (visible && !prevVisible) {
- openCount += 1;
- } else if (init) {
- openCount -= 1;
- }
- }
- }
-
- if (init) {
- // Clean up container if needed
- const getContainerIsFunc =
- typeof getContainer === 'function' && typeof prevGetContainer === 'function';
- if (
- getContainerIsFunc
- ? getContainer.toString() !== prevGetContainer.toString()
- : getContainer !== prevGetContainer
- ) {
- removeCurrentContainer();
- }
- }
- init = true;
- },
- { immediate: true, flush: 'post' },
- );
-
- nextTick(() => {
- if (!attachToParent()) {
- rafId.value = raf(() => {
- triggerUpdate.value += 1;
- });
- }
- });
- });
-
- onBeforeUnmount(() => {
- const { visible } = props;
- if (supportDom && parent === document.body) {
- // 离开时不会 render, 导到离开时数值不变,改用 func 。。
- openCount = visible && openCount ? openCount - 1 : openCount;
- }
- removeCurrentContainer();
- raf.cancel(rafId.value);
- });
- return () => {
- const { forceRender, visible } = props;
- let portal = null;
- const childProps = {
- getOpenCount: () => openCount,
- getContainer,
- };
- if (triggerUpdate.value && (forceRender || visible || componentRef.value)) {
- portal = (
- slots.default?.(childProps) }}
- >
- );
- }
- return portal;
- };
- },
-});
diff --git a/components/_util/__mocks__/Portal.tsx b/components/_util/__mocks__/Portal.tsx
deleted file mode 100644
index d71306396..000000000
--- a/components/_util/__mocks__/Portal.tsx
+++ /dev/null
@@ -1,13 +0,0 @@
-import { defineComponent } from 'vue';
-
-export default defineComponent({
- compatConfig: { MODE: 3 },
- name: 'Portal',
- inheritAttrs: false,
- props: ['getContainer'],
- setup(_props, { slots }) {
- return () => {
- return slots.default?.();
- };
- },
-});
diff --git a/components/_util/__mocks__/RenderSlot.tsx b/components/_util/__mocks__/RenderSlot.tsx
deleted file mode 100644
index 42e40ee0a..000000000
--- a/components/_util/__mocks__/RenderSlot.tsx
+++ /dev/null
@@ -1,11 +0,0 @@
-import { defineComponent } from 'vue';
-import { customRenderSlot } from '../vnode';
-
-export default defineComponent({
- name: 'RenderSlot',
- setup(_props, { slots }) {
- return () => {
- return customRenderSlot(slots, 'default', {}, () => ['default value']);
- };
- },
-});
diff --git a/components/_util/__tests__/easings.test.js b/components/_util/__tests__/easings.test.js
deleted file mode 100644
index d32e0dd7f..000000000
--- a/components/_util/__tests__/easings.test.js
+++ /dev/null
@@ -1,13 +0,0 @@
-import { easeInOutCubic } from '../easings';
-
-describe('Test easings', () => {
- it('easeInOutCubic return value', () => {
- const nums = [];
- // eslint-disable-next-line no-plusplus
- for (let index = 0; index < 5; index++) {
- nums.push(easeInOutCubic(index, 1, 5, 4));
- }
-
- expect(nums).toEqual([1, 1.25, 3, 4.75, 5]);
- });
-});
diff --git a/components/_util/__tests__/scrollTo.test.js b/components/_util/__tests__/scrollTo.test.js
deleted file mode 100644
index 3e41a60ee..000000000
--- a/components/_util/__tests__/scrollTo.test.js
+++ /dev/null
@@ -1,56 +0,0 @@
-import scrollTo from '../scrollTo';
-
-describe('Test ScrollTo function', () => {
- let dateNowMock;
-
- beforeAll(() => {
- jest.useFakeTimers();
- });
-
- afterAll(() => {
- jest.useRealTimers();
- });
-
- beforeEach(() => {
- dateNowMock = jest
- .spyOn(Date, 'now')
- .mockImplementationOnce(() => 0)
- .mockImplementationOnce(() => 1000);
- });
-
- afterEach(() => {
- dateNowMock.mockRestore();
- });
-
- it('test scrollTo', async () => {
- const scrollToSpy = jest.spyOn(window, 'scrollTo').mockImplementation((x, y) => {
- window.scrollY = y;
- window.pageYOffset = y;
- });
-
- scrollTo(1000);
-
- jest.runAllTimers();
- expect(window.pageYOffset).toBe(1000);
-
- scrollToSpy.mockRestore();
- });
-
- it('test callback - option', async () => {
- const cbMock = jest.fn();
- scrollTo(1000, {
- callback: cbMock,
- });
- jest.runAllTimers();
- expect(cbMock).toHaveBeenCalledTimes(1);
- });
-
- it('test getContainer - option', async () => {
- const div = document.createElement('div');
- scrollTo(1000, {
- getContainer: () => div,
- });
- jest.runAllTimers();
- expect(div.scrollTop).toBe(1000);
- });
-});
diff --git a/components/_util/__tests__/unreachableException.test.js b/components/_util/__tests__/unreachableException.test.js
deleted file mode 100644
index 4019e4fed..000000000
--- a/components/_util/__tests__/unreachableException.test.js
+++ /dev/null
@@ -1,8 +0,0 @@
-import UnreachableException from '../unreachableException';
-
-describe('UnreachableException', () => {
- it('error thrown matches snapshot', () => {
- const exception = new UnreachableException('some value');
- expect(exception.error.message).toMatchInlineSnapshot(`"unreachable case: \\"some value\\""`);
- });
-});
diff --git a/components/_util/__tests__/vNode.test.js b/components/_util/__tests__/vNode.test.js
deleted file mode 100644
index 4bfc7e8fa..000000000
--- a/components/_util/__tests__/vNode.test.js
+++ /dev/null
@@ -1,26 +0,0 @@
-import RenderSlot from '../__mocks__/RenderSlot';
-import { mount } from '@vue/test-utils';
-import { nextTick } from 'vue';
-
-describe('render slot content', () => {
- it('renders slot content', () => {
- const wrapper = mount(RenderSlot, {
- slots: {
- default: () => 'This is slot content',
- },
- });
-
- expect(wrapper.html()).toContain('This is slot content');
- });
-
- it('render default value when slot is fragment', async () => {
- const wrapper = mount(RenderSlot, {
- slots: {
- default: () => <>>,
- },
- });
-
- await nextTick();
- expect(wrapper.html()).toContain('default value');
- });
-});
diff --git a/components/_util/canUseDom.ts b/components/_util/canUseDom.ts
deleted file mode 100644
index 39705dc74..000000000
--- a/components/_util/canUseDom.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-function canUseDom() {
- return !!(typeof window !== 'undefined' && window.document && window.document.createElement);
-}
-
-export default canUseDom;
diff --git a/components/_util/classNames.ts b/components/_util/classNames.ts
deleted file mode 100644
index b5832326f..000000000
--- a/components/_util/classNames.ts
+++ /dev/null
@@ -1,27 +0,0 @@
-import { isArray, isString, isObject } from './util';
-function classNames(...args: any[]) {
- const classes = [];
- for (let i = 0; i < args.length; i++) {
- const value = args[i];
- if (!value) continue;
- if (isString(value)) {
- classes.push(value);
- } else if (isArray(value)) {
- for (let i = 0; i < value.length; i++) {
- const inner = classNames(value[i]);
- if (inner) {
- classes.push(inner);
- }
- }
- } else if (isObject(value)) {
- for (const name in value) {
- if (value[name]) {
- classes.push(name);
- }
- }
- }
- }
- return classes.join(' ');
-}
-
-export default classNames;
diff --git a/components/_util/collapseMotion.tsx b/components/_util/collapseMotion.tsx
deleted file mode 100644
index 6af29a463..000000000
--- a/components/_util/collapseMotion.tsx
+++ /dev/null
@@ -1,50 +0,0 @@
-import { nextTick } from 'vue';
-import { addClass, removeClass } from '../vc-util/Dom/class';
-import type { CSSMotionProps } from './transition';
-
-const collapseMotion = (name = 'ant-motion-collapse', appear = true): CSSMotionProps => {
- return {
- name,
- appear,
- css: true,
- onBeforeEnter: (node: HTMLDivElement) => {
- node.style.height = '0px';
- node.style.opacity = '0';
- addClass(node, name);
- },
- onEnter: (node: HTMLDivElement) => {
- nextTick(() => {
- node.style.height = `${node.scrollHeight}px`;
- node.style.opacity = '1';
- });
- },
- onAfterEnter: (node: HTMLDivElement) => {
- if (node) {
- removeClass(node, name);
- node.style.height = null;
- node.style.opacity = null;
- }
- },
- onBeforeLeave: (node: HTMLDivElement) => {
- addClass(node, name);
- node.style.height = `${node.offsetHeight}px`;
- node.style.opacity = null;
- },
- onLeave: (node: HTMLDivElement) => {
- setTimeout(() => {
- node.style.height = '0px';
- node.style.opacity = '0';
- });
- },
- onAfterLeave: (node: HTMLDivElement) => {
- if (node) {
- removeClass(node, name);
- if (node.style) {
- node.style.height = null;
- node.style.opacity = null;
- }
- }
- },
- };
-};
-export default collapseMotion;
diff --git a/components/_util/colors.ts b/components/_util/colors.ts
deleted file mode 100644
index 8bb5a90ab..000000000
--- a/components/_util/colors.ts
+++ /dev/null
@@ -1,34 +0,0 @@
-import type { PresetColorKey } from '../theme/interface';
-import { PresetColors } from '../theme/interface';
-
-type InverseColor = `${PresetColorKey}-inverse`;
-const inverseColors = PresetColors.map(color => `${color}-inverse`);
-
-export const PresetStatusColorTypes = [
- 'success',
- 'processing',
- 'error',
- 'default',
- 'warning',
-] as const;
-
-export type PresetColorType = PresetColorKey | InverseColor;
-
-export type PresetStatusColorType = (typeof PresetStatusColorTypes)[number];
-
-/**
- * determine if the color keyword belongs to the `Ant Design` {@link PresetColors}.
- * @param color color to be judged
- * @param includeInverse whether to include reversed colors
- */
-export function isPresetColor(color?: any, includeInverse = true) {
- if (includeInverse) {
- return [...inverseColors, ...PresetColors].includes(color);
- }
-
- return PresetColors.includes(color);
-}
-
-export function isPresetStatusColor(color?: any): color is PresetStatusColorType {
- return PresetStatusColorTypes.includes(color);
-}
diff --git a/components/_util/component-classes.ts b/components/_util/component-classes.ts
deleted file mode 100644
index fc854ec05..000000000
--- a/components/_util/component-classes.ts
+++ /dev/null
@@ -1,168 +0,0 @@
-/**
- * source by `component-classes`
- * https://github.com/component/classes.git
- */
-
-import indexOf from 'lodash-es/indexOf';
-
-/**
- * Whitespace regexp.
- */
-const re = /\s+/;
-
-export class ClassList {
- el: Element;
- list: DOMTokenList;
-
- constructor(el: Element) {
- if (!el || !el.nodeType) {
- throw new Error('A DOM element reference is required');
- }
- this.el = el;
- this.list = el.classList;
- }
-
- array() {
- const className = this.el.getAttribute('class') || '';
- const str = className.replace(/^\s+|\s+$/g, '');
- const arr = str.split(re);
- if ('' === arr[0]) arr.shift();
- return arr;
- }
-
- /**
- * Add class `name` if not already present.
- *
- * @param {String} name
- * @return {ClassList}
- * @api public
- */
- add(name: string): ClassList {
- // classList
- if (this.list) {
- this.list.add(name);
- return this;
- }
-
- // fallback
- const arr = this.array();
- const i = indexOf(arr, name);
- if (!~i) arr.push(name);
- this.el.className = arr.join(' ');
- return this;
- }
- /**
- * Remove class `name` when present, or
- * pass a regular expression to remove
- * any which match.
- *
- * @param {String|RegExp} name
- * @return {ClassList}
- * @api public
- */
- remove(name: string | RegExp): ClassList {
- if ('[object RegExp]' === toString.call(name)) {
- return this._removeMatching(name as RegExp);
- }
-
- // classList
- if (this.list) {
- this.list.remove(name as string);
- return this;
- }
-
- // fallback
- const arr = this.array();
- const i = indexOf(arr, name);
- if (~i) arr.splice(i, 1);
- this.el.className = arr.join(' ');
- return this;
- }
- /**
- * Remove all classes matching `re`.
- *
- * @param {RegExp} re
- * @return {ClassList}
- * @api private
- */
- _removeMatching(re: RegExp): ClassList {
- const arr = this.array();
- for (let i = 0; i < arr.length; i++) {
- if (re.test(arr[i])) {
- this.remove(arr[i]);
- }
- }
- return this;
- }
-
- /**
- * Toggle class `name`, can force state via `force`.
- *
- * For browsers that support classList, but do not support `force` yet,
- * the mistake will be detected and corrected.
- *
- * @param {String} name
- * @param {Boolean} force
- * @return {ClassList}
- * @api public
- */
- toggle(name: string, force: boolean): ClassList {
- // classList
- if (this.list) {
- if ('undefined' !== typeof force) {
- if (force !== this.list.toggle(name, force)) {
- this.list.toggle(name); // toggle again to correct
- }
- } else {
- this.list.toggle(name);
- }
- return this;
- }
-
- // fallback
- if ('undefined' !== typeof force) {
- if (!force) {
- this.remove(name);
- } else {
- this.add(name);
- }
- } else {
- if (this.has(name)) {
- this.remove(name);
- } else {
- this.add(name);
- }
- }
-
- return this;
- }
- /**
- * Check if class `name` is present.
- *
- * @param {String} name
- * @api public
- */
- has(name: string) {
- return this.list ? this.list.contains(name) : !!~indexOf(this.array(), name);
- }
- /**
- * Check if class `name` is present.
- *
- * @param {String} name
- * @api public
- */
- contains(name: string) {
- return this.has(name);
- }
-}
-
-/**
- * Wrap `el` in a `ClassList`.
- *
- * @param {Element} el
- * @return {ClassList}
- * @api public
- */
-export default function (el: Element): ClassList {
- return new ClassList(el);
-}
diff --git a/components/_util/copy-to-clipboard/index.ts b/components/_util/copy-to-clipboard/index.ts
deleted file mode 100644
index bc69aae33..000000000
--- a/components/_util/copy-to-clipboard/index.ts
+++ /dev/null
@@ -1,120 +0,0 @@
-import deselectCurrent from './toggle-selection';
-
-interface Options {
- debug?: boolean;
- message?: string;
- format?: string; // MIME type
- onCopy?: (clipboardData: object) => void;
-}
-
-const clipboardToIE11Formatting = {
- 'text/plain': 'Text',
- 'text/html': 'Url',
- default: 'Text',
-};
-
-const defaultMessage = 'Copy to clipboard: #{key}, Enter';
-
-function format(message: string) {
- const copyKey = (/mac os x/i.test(navigator.userAgent) ? '⌘' : 'Ctrl') + '+C';
- return message.replace(/#{\s*key\s*}/g, copyKey);
-}
-
-function copy(text: string, options?: Options): boolean {
- let message,
- reselectPrevious,
- range,
- selection,
- mark,
- success = false;
- if (!options) {
- options = {};
- }
- const debug = options.debug || false;
- try {
- reselectPrevious = deselectCurrent();
-
- range = document.createRange();
- selection = document.getSelection();
-
- mark = document.createElement('span');
- mark.textContent = text;
- // reset user styles for span element
- mark.style.all = 'unset';
- // prevents scrolling to the end of the page
- mark.style.position = 'fixed';
- mark.style.top = 0;
- mark.style.clip = 'rect(0, 0, 0, 0)';
- // used to preserve spaces and line breaks
- mark.style.whiteSpace = 'pre';
- // do not inherit user-select (it may be `none`)
- mark.style.webkitUserSelect = 'text';
- mark.style.MozUserSelect = 'text';
- mark.style.msUserSelect = 'text';
- mark.style.userSelect = 'text';
- mark.addEventListener('copy', function (e) {
- e.stopPropagation();
- if (options.format) {
- e.preventDefault();
- if (typeof e.clipboardData === 'undefined') {
- // IE 11
- debug && console.warn('unable to use e.clipboardData');
- debug && console.warn('trying IE specific stuff');
- (window as any).clipboardData.clearData();
- const format =
- clipboardToIE11Formatting[options.format] || clipboardToIE11Formatting['default'];
- (window as any).clipboardData.setData(format, text);
- } else {
- // all other browsers
- e.clipboardData.clearData();
- e.clipboardData.setData(options.format, text);
- }
- }
- if (options.onCopy) {
- e.preventDefault();
- options.onCopy(e.clipboardData);
- }
- });
-
- document.body.appendChild(mark);
-
- range.selectNodeContents(mark);
- selection.addRange(range);
-
- const successful = document.execCommand('copy');
- if (!successful) {
- throw new Error('copy command was unsuccessful');
- }
- success = true;
- } catch (err) {
- debug && console.error('unable to copy using execCommand: ', err);
- debug && console.warn('trying IE specific stuff');
- try {
- (window as any).clipboardData.setData(options.format || 'text', text);
- options.onCopy && options.onCopy((window as any).clipboardData);
- success = true;
- } catch (err) {
- debug && console.error('unable to copy using clipboardData: ', err);
- debug && console.error('falling back to prompt');
- message = format('message' in options ? options.message : defaultMessage);
- window.prompt(message, text);
- }
- } finally {
- if (selection) {
- if (typeof selection.removeRange == 'function') {
- selection.removeRange(range);
- } else {
- selection.removeAllRanges();
- }
- }
-
- if (mark) {
- document.body.removeChild(mark);
- }
- reselectPrevious();
- }
-
- return success;
-}
-
-export default copy;
diff --git a/components/_util/copy-to-clipboard/toggle-selection.ts b/components/_util/copy-to-clipboard/toggle-selection.ts
deleted file mode 100644
index e422d1efa..000000000
--- a/components/_util/copy-to-clipboard/toggle-selection.ts
+++ /dev/null
@@ -1,41 +0,0 @@
-// copy from https://github.com/sudodoki/toggle-selection
-// refactor to esm
-const deselectCurrent = (): (() => void) => {
- const selection = document.getSelection();
- if (!selection.rangeCount) {
- return function () {};
- }
- let active = document.activeElement as any;
-
- const ranges = [];
- for (let i = 0; i < selection.rangeCount; i++) {
- ranges.push(selection.getRangeAt(i));
- }
-
- switch (
- active.tagName.toUpperCase() // .toUpperCase handles XHTML
- ) {
- case 'INPUT':
- case 'TEXTAREA':
- active.blur();
- break;
-
- default:
- active = null;
- break;
- }
-
- selection.removeAllRanges();
- return function () {
- selection.type === 'Caret' && selection.removeAllRanges();
-
- if (!selection.rangeCount) {
- ranges.forEach(function (range) {
- selection.addRange(range);
- });
- }
-
- active && active.focus();
- };
-};
-export default deselectCurrent;
diff --git a/components/_util/createContext.ts b/components/_util/createContext.ts
deleted file mode 100644
index 2a666d3f6..000000000
--- a/components/_util/createContext.ts
+++ /dev/null
@@ -1,22 +0,0 @@
-import { inject, provide, reactive, watchEffect } from 'vue';
-
-function createContext>(defaultValue?: T) {
- const contextKey = Symbol('contextKey');
- const useProvide = (props: T, newProps?: T) => {
- const mergedProps = reactive({} as T);
- provide(contextKey, mergedProps);
- watchEffect(() => {
- Object.assign(mergedProps, props, newProps || {});
- });
- return mergedProps;
- };
- const useInject = () => {
- return inject(contextKey, defaultValue as T) || ({} as T);
- };
- return {
- useProvide,
- useInject,
- };
-}
-
-export default createContext;
diff --git a/components/_util/createRef.ts b/components/_util/createRef.ts
deleted file mode 100644
index a13c5a8e1..000000000
--- a/components/_util/createRef.ts
+++ /dev/null
@@ -1,31 +0,0 @@
-export interface RefObject extends Function {
- current?: any;
-}
-
-function createRef(): any {
- const func: RefObject = (node: any) => {
- func.current = node;
- };
- return func;
-}
-
-export function fillRef(ref, node: T) {
- if (typeof ref === 'function') {
- ref(node);
- } else if (typeof ref === 'object' && ref && 'current' in ref) {
- (ref as any).current = node;
- }
-}
-
-/**
- * Merge refs into one ref function to support ref passing.
- */
-export function composeRef(...refs: any[]) {
- return (node: T) => {
- refs.forEach(ref => {
- fillRef(ref, node);
- });
- };
-}
-
-export default createRef;
diff --git a/components/_util/cssinjs/Cache.ts b/components/_util/cssinjs/Cache.ts
deleted file mode 100644
index cff14b475..000000000
--- a/components/_util/cssinjs/Cache.ts
+++ /dev/null
@@ -1,32 +0,0 @@
-export type KeyType = string | number;
-type ValueType = [number, any]; // [times, realValue]
-
-const SPLIT = '%';
-
-class Entity {
- instanceId: string;
- constructor(instanceId: string) {
- this.instanceId = instanceId;
- }
-
- /** @private Internal cache map. Do not access this directly */
- cache = new Map();
-
- get(keys: KeyType[] | string): ValueType | null {
- return this.cache.get(Array.isArray(keys) ? keys.join(SPLIT) : keys) || null;
- }
-
- update(keys: KeyType[] | string, valueFn: (origin: ValueType | null) => ValueType | null) {
- const path = Array.isArray(keys) ? keys.join(SPLIT) : keys;
- const prevValue = this.cache.get(path)!;
- const nextValue = valueFn(prevValue);
-
- if (nextValue === null) {
- this.cache.delete(path);
- } else {
- this.cache.set(path, nextValue);
- }
- }
-}
-
-export default Entity;
diff --git a/components/_util/cssinjs/Keyframes.ts b/components/_util/cssinjs/Keyframes.ts
deleted file mode 100644
index 64b99e27c..000000000
--- a/components/_util/cssinjs/Keyframes.ts
+++ /dev/null
@@ -1,19 +0,0 @@
-import type { CSSInterpolation } from './hooks/useStyleRegister';
-
-class Keyframe {
- private name: string;
- style: CSSInterpolation;
-
- constructor(name: string, style: CSSInterpolation) {
- this.name = name;
- this.style = style;
- }
-
- getName(hashId = ''): string {
- return hashId ? `${hashId}-${this.name}` : this.name;
- }
-
- _keyframe = true;
-}
-
-export default Keyframe;
diff --git a/components/_util/cssinjs/StyleContext.tsx b/components/_util/cssinjs/StyleContext.tsx
deleted file mode 100644
index 6d062eece..000000000
--- a/components/_util/cssinjs/StyleContext.tsx
+++ /dev/null
@@ -1,194 +0,0 @@
-import type { ShallowRef, ExtractPropTypes, InjectionKey, Ref } from 'vue';
-import {
- provide,
- defineComponent,
- unref,
- inject,
- watch,
- shallowRef,
- getCurrentInstance,
-} from 'vue';
-import CacheEntity from './Cache';
-import type { Linter } from './linters/interface';
-import type { Transformer } from './transformers/interface';
-import { arrayType, booleanType, objectType, someType, stringType, withInstall } from '../type';
-export const ATTR_TOKEN = 'data-token-hash';
-export const ATTR_MARK = 'data-css-hash';
-export const ATTR_CACHE_PATH = 'data-cache-path';
-
-// Mark css-in-js instance in style element
-export const CSS_IN_JS_INSTANCE = '__cssinjs_instance__';
-
-export function createCache() {
- const cssinjsInstanceId = Math.random().toString(12).slice(2);
-
- // Tricky SSR: Move all inline style to the head.
- // PS: We do not recommend tricky mode.
- if (typeof document !== 'undefined' && document.head && document.body) {
- const styles = document.body.querySelectorAll(`style[${ATTR_MARK}]`) || [];
- const { firstChild } = document.head;
-
- Array.from(styles).forEach(style => {
- (style as any)[CSS_IN_JS_INSTANCE] = (style as any)[CSS_IN_JS_INSTANCE] || cssinjsInstanceId;
-
- // Not force move if no head
- if ((style as any)[CSS_IN_JS_INSTANCE] === cssinjsInstanceId) {
- document.head.insertBefore(style, firstChild);
- }
- });
-
- // Deduplicate of moved styles
- const styleHash: Record = {};
- Array.from(document.querySelectorAll(`style[${ATTR_MARK}]`)).forEach(style => {
- const hash = style.getAttribute(ATTR_MARK)!;
- if (styleHash[hash]) {
- if ((style as any)[CSS_IN_JS_INSTANCE] === cssinjsInstanceId) {
- style.parentNode?.removeChild(style);
- }
- } else {
- styleHash[hash] = true;
- }
- });
- }
-
- return new CacheEntity(cssinjsInstanceId);
-}
-
-export type HashPriority = 'low' | 'high';
-
-export interface StyleContextProps {
- autoClear?: boolean;
- /** @private Test only. Not work in production. */
- mock?: 'server' | 'client';
- /**
- * Only set when you need ssr to extract style on you own.
- * If not provided, it will auto create on the end of Provider in server side.
- */
- cache: CacheEntity;
- /** Tell children that this context is default generated context */
- defaultCache: boolean;
- /** Use `:where` selector to reduce hashId css selector priority */
- hashPriority?: HashPriority;
- /** Tell cssinjs where to inject style in */
- container?: Element | ShadowRoot;
- /** Component wil render inline `` for fallback in SSR. Not recommend. */
- ssrInline?: boolean;
- /** Transform css before inject in document. Please note that `transformers` do not support dynamic update */
- transformers?: Transformer[];
- /**
- * Linters to lint css before inject in document.
- * Styles will be linted after transforming.
- * Please note that `linters` do not support dynamic update.
- */
- linters?: Linter[];
-}
-
-const StyleContextKey: InjectionKey>> =
- Symbol('StyleContextKey');
-
-export type UseStyleProviderProps = Partial | Ref>;
-
-// fix: https://github.com/vueComponent/ant-design-vue/issues/7023
-const getCache = () => {
- const instance = getCurrentInstance();
- let cache: CacheEntity;
- if (instance && instance.appContext) {
- const globalCache = instance.appContext?.config?.globalProperties?.__ANTDV_CSSINJS_CACHE__;
- if (globalCache) {
- cache = globalCache;
- } else {
- cache = createCache();
- if (instance.appContext.config.globalProperties) {
- instance.appContext.config.globalProperties.__ANTDV_CSSINJS_CACHE__ = cache;
- }
- }
- } else {
- cache = createCache();
- }
- return cache;
-};
-
-const defaultStyleContext: StyleContextProps = {
- cache: createCache(),
- defaultCache: true,
- hashPriority: 'low',
-};
-// fix: https://github.com/vueComponent/ant-design-vue/issues/6912
-export const useStyleInject = () => {
- const cache = getCache();
- return inject(StyleContextKey, shallowRef({ ...defaultStyleContext, cache }));
-};
-export const useStyleProvider = (props: UseStyleProviderProps) => {
- const parentContext = useStyleInject();
- const context = shallowRef>({
- ...defaultStyleContext,
- cache: createCache(),
- });
- watch(
- [() => unref(props), parentContext],
- () => {
- const mergedContext: Partial = {
- ...parentContext.value,
- };
- const propsValue = unref(props);
- Object.keys(propsValue).forEach(key => {
- const value = propsValue[key];
- if (propsValue[key] !== undefined) {
- mergedContext[key] = value;
- }
- });
-
- const { cache } = propsValue;
- mergedContext.cache = mergedContext.cache || createCache();
- mergedContext.defaultCache = !cache && parentContext.value.defaultCache;
- context.value = mergedContext;
- },
- { immediate: true },
- );
- provide(StyleContextKey, context);
- return context;
-};
-export const styleProviderProps = () => ({
- autoClear: booleanType(),
- /** @private Test only. Not work in production. */
- mock: stringType<'server' | 'client'>(),
- /**
- * Only set when you need ssr to extract style on you own.
- * If not provided, it will auto create on the end of Provider in server side.
- */
- cache: objectType(),
- /** Tell children that this context is default generated context */
- defaultCache: booleanType(),
- /** Use `:where` selector to reduce hashId css selector priority */
- hashPriority: stringType(),
- /** Tell cssinjs where to inject style in */
- container: someType(),
- /** Component wil render inline `` for fallback in SSR. Not recommend. */
- ssrInline: booleanType(),
- /** Transform css before inject in document. Please note that `transformers` do not support dynamic update */
- transformers: arrayType(),
- /**
- * Linters to lint css before inject in document.
- * Styles will be linted after transforming.
- * Please note that `linters` do not support dynamic update.
- */
- linters: arrayType(),
-});
-export type StyleProviderProps = Partial>>;
-export const StyleProvider = withInstall(
- defineComponent({
- name: 'AStyleProvider',
- inheritAttrs: false,
- props: styleProviderProps(),
- setup(props, { slots }) {
- useStyleProvider(props);
- return () => slots.default?.();
- },
- }),
-);
-
-export default {
- useStyleInject,
- useStyleProvider,
- StyleProvider,
-};
diff --git a/components/_util/cssinjs/extractStyle.ts b/components/_util/cssinjs/extractStyle.ts
deleted file mode 100644
index 3fa3411cd..000000000
--- a/components/_util/cssinjs/extractStyle.ts
+++ /dev/null
@@ -1,82 +0,0 @@
-import type Cache from './Cache';
-import { extract as tokenExtractStyle, TOKEN_PREFIX } from './hooks/useCacheToken';
-import { CSS_VAR_PREFIX, extract as cssVarExtractStyle } from './hooks/useCSSVarRegister';
-import { extract as styleExtractStyle, STYLE_PREFIX } from './hooks/useStyleRegister';
-import { toStyleStr } from './util';
-import { ATTR_CACHE_MAP, serialize as serializeCacheMap } from './util/cacheMapUtil';
-
-const ExtractStyleFns = {
- [STYLE_PREFIX]: styleExtractStyle,
- [TOKEN_PREFIX]: tokenExtractStyle,
- [CSS_VAR_PREFIX]: cssVarExtractStyle,
-};
-
-type ExtractStyleType = keyof typeof ExtractStyleFns;
-
-function isNotNull(value: T | null): value is T {
- return value !== null;
-}
-
-export default function extractStyle(
- cache: Cache,
- options?:
- | boolean
- | {
- plain?: boolean;
- types?: ExtractStyleType | ExtractStyleType[];
- },
-) {
- const { plain = false, types = ['style', 'token', 'cssVar'] } =
- typeof options === 'boolean' ? { plain: options } : options || {};
-
- const matchPrefixRegexp = new RegExp(
- `^(${(typeof types === 'string' ? [types] : types).join('|')})%`,
- );
-
- // prefix with `style` is used for `useStyleRegister` to cache style context
- const styleKeys = Array.from(cache.cache.keys()).filter(key => matchPrefixRegexp.test(key));
-
- // Common effect styles like animation
- const effectStyles: Record = {};
-
- // Mapping of cachePath to style hash
- const cachePathMap: Record = {};
-
- let styleText = '';
-
- styleKeys
- .map<[number, string] | null>(key => {
- const cachePath = key.replace(matchPrefixRegexp, '').replace(/%/g, '|');
- const [prefix] = key.split('%');
- const extractFn = ExtractStyleFns[prefix as keyof typeof ExtractStyleFns];
- const extractedStyle = extractFn(cache.cache.get(key)![1], effectStyles, {
- plain,
- });
- if (!extractedStyle) {
- return null;
- }
- const [order, styleId, styleStr] = extractedStyle;
- if (key.startsWith('style')) {
- cachePathMap[cachePath] = styleId;
- }
- return [order, styleStr];
- })
- .filter(isNotNull)
- .sort(([o1], [o2]) => o1 - o2)
- .forEach(([, style]) => {
- styleText += style;
- });
-
- // ==================== Fill Cache Path ====================
- styleText += toStyleStr(
- `.${ATTR_CACHE_MAP}{content:"${serializeCacheMap(cachePathMap)}";}`,
- undefined,
- undefined,
- {
- [ATTR_CACHE_MAP]: ATTR_CACHE_MAP,
- },
- plain,
- );
-
- return styleText;
-}
diff --git a/components/_util/cssinjs/hooks/useCSSVarRegister.ts b/components/_util/cssinjs/hooks/useCSSVarRegister.ts
deleted file mode 100644
index e2b5d4d76..000000000
--- a/components/_util/cssinjs/hooks/useCSSVarRegister.ts
+++ /dev/null
@@ -1,108 +0,0 @@
-import { removeCSS, updateCSS } from '../../../vc-util/Dom/dynamicCSS';
-import { ATTR_MARK, ATTR_TOKEN, CSS_IN_JS_INSTANCE, useStyleInject } from '../StyleContext';
-import { isClientSide, toStyleStr } from '../util';
-import type { TokenWithCSSVar } from '../util/css-variables';
-import { transformToken } from '../util/css-variables';
-import type { ExtractStyle } from './useGlobalCache';
-import useGlobalCache from './useGlobalCache';
-import { uniqueHash } from './useStyleRegister';
-import type { ComputedRef } from 'vue';
-import { computed } from 'vue';
-
-export const CSS_VAR_PREFIX = 'cssVar';
-
-type CSSVarCacheValue = Record> = [
- cssVarToken: TokenWithCSSVar,
- cssVarStr: string,
- styleId: string,
- cssVarKey: string,
-];
-
-const useCSSVarRegister = >(
- config: ComputedRef<{
- path: string[];
- key: string;
- prefix?: string;
- unitless?: Record;
- ignore?: Record;
- scope?: string;
- token: any;
- }>,
- fn: () => T,
-) => {
- const styleContext = useStyleInject();
-
- const stylePath = computed(() => {
- return [
- ...config.value.path,
- config.value.key,
- config.value.scope || '',
- config.value.token?._tokenKey,
- ];
- });
-
- const cache = useGlobalCache>(
- CSS_VAR_PREFIX,
- stylePath,
- () => {
- const originToken = fn();
- const [mergedToken, cssVarsStr] = transformToken(originToken, config.value.key, {
- prefix: config.value.prefix,
- unitless: config.value.unitless,
- ignore: config.value.ignore,
- scope: config.value.scope || '',
- });
-
- const styleId = uniqueHash(stylePath.value, cssVarsStr);
- return [mergedToken, cssVarsStr, styleId, config.value.key];
- },
- ([, , styleId]) => {
- if (isClientSide) {
- removeCSS(styleId, { mark: ATTR_MARK });
- }
- },
- ([, cssVarsStr, styleId]) => {
- if (!cssVarsStr) {
- return;
- }
-
- const style = updateCSS(cssVarsStr, styleId, {
- mark: ATTR_MARK,
- prepend: 'queue',
- attachTo: styleContext.value.container,
- priority: -999,
- });
-
- (style as any)[CSS_IN_JS_INSTANCE] = styleContext.value.cache?.instanceId;
-
- // Used for `useCacheToken` to remove on batch when token removed
- style.setAttribute(ATTR_TOKEN, config.value.key);
- },
- );
-
- return cache;
-};
-
-export const extract: ExtractStyle> = (cache, _effectStyles, options) => {
- const [, styleStr, styleId, cssVarKey] = cache;
- const { plain } = options || {};
-
- if (!styleStr) {
- return null;
- }
-
- const order = -999;
-
- // ====================== Style ======================
- // Used for rc-util
- const sharedAttrs = {
- 'data-vc-order': 'prependQueue',
- 'data-vc-priority': `${order}`,
- };
-
- const styleText = toStyleStr(styleStr, cssVarKey, styleId, sharedAttrs, plain);
-
- return [order, styleId, styleText];
-};
-
-export default useCSSVarRegister;
diff --git a/components/_util/cssinjs/hooks/useCacheToken.tsx b/components/_util/cssinjs/hooks/useCacheToken.tsx
deleted file mode 100644
index 6067cdd62..000000000
--- a/components/_util/cssinjs/hooks/useCacheToken.tsx
+++ /dev/null
@@ -1,254 +0,0 @@
-import hash from '@emotion/hash';
-import { updateCSS } from '../../../vc-util/Dom/dynamicCSS';
-import { ATTR_MARK, ATTR_TOKEN, CSS_IN_JS_INSTANCE, useStyleInject } from '../StyleContext';
-import type Theme from '../theme/Theme';
-import { flattenToken, memoResult, token2key, toStyleStr } from '../util';
-import { transformToken } from '../util/css-variables';
-import type { ExtractStyle } from './useGlobalCache';
-import useGlobalCache from './useGlobalCache';
-import type { Ref } from 'vue';
-import { ref, computed } from 'vue';
-
-const EMPTY_OVERRIDE = {};
-
-// Generate different prefix to make user selector break in production env.
-// This helps developer not to do style override directly on the hash id.
-const hashPrefix = process.env.NODE_ENV !== 'production' ? 'css-dev-only-do-not-override' : 'css';
-
-export interface Option {
- /**
- * Generate token with salt.
- * This is used to generate different hashId even same derivative token for different version.
- */
- salt?: string;
- override?: object;
- /**
- * Format token as you need. Such as:
- *
- * - rename token
- * - merge token
- * - delete token
- *
- * This should always be the same since it's one time process.
- * It's ok to useMemo outside but this has better cache strategy.
- */
- formatToken?: (mergedToken: any) => DerivativeToken;
- /**
- * Get final token with origin token, override token and theme.
- * The parameters do not contain formatToken since it's passed by user.
- * @param origin The original token.
- * @param override Extra tokens to override.
- * @param theme Theme instance. Could get derivative token by `theme.getDerivativeToken`
- */
- getComputedToken?: (
- origin: DesignToken,
- override: object,
- theme: Theme,
- ) => DerivativeToken;
-
- /**
- * Transform token to css variables.
- */
- cssVar?: {
- /** Prefix for css variables */
- prefix?: string;
- /** Tokens that should not be appended with unit */
- unitless?: Record;
- /** Tokens that should not be transformed to css variables */
- ignore?: Record;
- /** Tokens that preserves origin value */
- preserve?: Record;
- /** Key for current theme. Useful for customizing and should be unique */
- key?: string;
- };
-}
-
-const tokenKeys = new Map();
-function recordCleanToken(tokenKey: string) {
- tokenKeys.set(tokenKey, (tokenKeys.get(tokenKey) || 0) + 1);
-}
-
-function removeStyleTags(key: string, instanceId: string) {
- if (typeof document !== 'undefined') {
- const styles = document.querySelectorAll(`style[${ATTR_TOKEN}="${key}"]`);
-
- styles.forEach(style => {
- if ((style as any)[CSS_IN_JS_INSTANCE] === instanceId) {
- style.parentNode?.removeChild(style);
- }
- });
- }
-}
-
-const TOKEN_THRESHOLD = 0;
-
-// Remove will check current keys first
-function cleanTokenStyle(tokenKey: string, instanceId: string) {
- tokenKeys.set(tokenKey, (tokenKeys.get(tokenKey) || 0) - 1);
-
- const tokenKeyList = Array.from(tokenKeys.keys());
- const cleanableKeyList = tokenKeyList.filter(key => {
- const count = tokenKeys.get(key) || 0;
-
- return count <= 0;
- });
-
- // Should keep tokens under threshold for not to insert style too often
- if (tokenKeyList.length - cleanableKeyList.length > TOKEN_THRESHOLD) {
- cleanableKeyList.forEach(key => {
- removeStyleTags(key, instanceId);
- tokenKeys.delete(key);
- });
- }
-}
-
-export const getComputedToken = (
- originToken: DesignToken,
- overrideToken: object,
- theme: Theme,
- format?: (token: DesignToken) => DerivativeToken,
-) => {
- const derivativeToken = theme.getDerivativeToken(originToken);
-
- // Merge with override
- let mergedDerivativeToken = {
- ...derivativeToken,
- ...overrideToken,
- };
-
- // Format if needed
- if (format) {
- mergedDerivativeToken = format(mergedDerivativeToken);
- }
-
- return mergedDerivativeToken;
-};
-
-export const TOKEN_PREFIX = 'token';
-
-type TokenCacheValue = [
- token: DerivativeToken & { _tokenKey: string; _themeKey: string },
- hashId: string,
- realToken: DerivativeToken & { _tokenKey: string },
- cssVarStr: string,
- cssVarKey: string,
-];
-
-/**
- * Cache theme derivative token as global shared one
- * @param theme Theme entity
- * @param tokens List of tokens, used for cache. Please do not dynamic generate object directly
- * @param option Additional config
- * @returns Call Theme.getDerivativeToken(tokenObject) to get token
- */
-export default function useCacheToken(
- theme: Ref>,
- tokens: Ref[]>,
- option: Ref> = ref({}),
-): Ref> {
- const styleContext = useStyleInject();
-
- // Basic - We do basic cache here
- const mergedToken = computed(() =>
- memoResult(() => Object.assign({}, ...tokens.value), tokens.value),
- );
-
- const tokenStr = computed(() => flattenToken(mergedToken.value));
- const overrideTokenStr = computed(() => flattenToken(option.value.override ?? EMPTY_OVERRIDE));
-
- const cssVarStr = computed(() => (option.value.cssVar ? flattenToken(option.value.cssVar) : ''));
-
- const cachedToken = useGlobalCache>(
- TOKEN_PREFIX,
- computed(() => [
- option.value.salt ?? '',
- theme.value?.id,
- tokenStr.value,
- overrideTokenStr.value,
- cssVarStr.value,
- ]),
- () => {
- const {
- salt = '',
- override = EMPTY_OVERRIDE,
- formatToken,
- getComputedToken: compute,
- cssVar,
- } = option.value;
- let mergedDerivativeToken = compute
- ? compute(mergedToken.value, override, theme.value)
- : getComputedToken(mergedToken.value, override, theme.value, formatToken);
-
- // Replace token value with css variables
- const actualToken = { ...mergedDerivativeToken };
- let cssVarsStr = '';
- if (!!cssVar) {
- [mergedDerivativeToken, cssVarsStr] = transformToken(mergedDerivativeToken, cssVar.key!, {
- prefix: cssVar.prefix,
- ignore: cssVar.ignore,
- unitless: cssVar.unitless,
- preserve: cssVar.preserve,
- });
- }
-
- // Optimize for `useStyleRegister` performance
- const tokenKey = token2key(mergedDerivativeToken, salt);
- mergedDerivativeToken._tokenKey = tokenKey;
- actualToken._tokenKey = token2key(actualToken, salt);
-
- const themeKey = cssVar?.key ?? tokenKey;
- mergedDerivativeToken._themeKey = themeKey;
- recordCleanToken(themeKey);
-
- const hashId = `${hashPrefix}-${hash(tokenKey)}`;
- mergedDerivativeToken._hashId = hashId; // Not used
-
- return [mergedDerivativeToken, hashId, actualToken, cssVarsStr, cssVar?.key || ''];
- },
- cache => {
- // Remove token will remove all related style
- cleanTokenStyle(cache[0]._themeKey, styleContext.value?.cache?.instanceId);
- },
- ([token, , , cssVarsStr]) => {
- const { cssVar } = option.value;
- if (cssVar && cssVarsStr) {
- const style = updateCSS(cssVarsStr, hash(`css-variables-${token._themeKey}`), {
- mark: ATTR_MARK,
- prepend: 'queue',
- attachTo: styleContext.value?.container,
- priority: -999,
- });
-
- (style as any)[CSS_IN_JS_INSTANCE] = styleContext.value?.cache?.instanceId;
-
- // Used for `useCacheToken` to remove on batch when token removed
- style.setAttribute(ATTR_TOKEN, token._themeKey);
- }
- },
- );
-
- return cachedToken;
-}
-
-export const extract: ExtractStyle> = (cache, _effectStyles, options) => {
- const [, , realToken, styleStr, cssVarKey] = cache;
- const { plain } = options || {};
-
- if (!styleStr) {
- return null;
- }
-
- const styleId = realToken._tokenKey;
- const order = -999;
-
- // ====================== Style ======================
- // Used for rc-util
- const sharedAttrs = {
- 'data-vc-order': 'prependQueue',
- 'data-vc-priority': `${order}`,
- };
-
- const styleText = toStyleStr(styleStr, cssVarKey, styleId, sharedAttrs, plain);
-
- return [order, styleId, styleText];
-};
diff --git a/components/_util/cssinjs/hooks/useCompatibleInsertionEffect.tsx b/components/_util/cssinjs/hooks/useCompatibleInsertionEffect.tsx
deleted file mode 100644
index e3ac2e794..000000000
--- a/components/_util/cssinjs/hooks/useCompatibleInsertionEffect.tsx
+++ /dev/null
@@ -1,30 +0,0 @@
-// import canUseDom from 'rc-util/lib/Dom/canUseDom';
-import useLayoutEffect from '../../../_util/hooks/useLayoutEffect';
-import type { ShallowRef, WatchCallback } from 'vue';
-import { watch } from 'vue';
-
-type UseCompatibleInsertionEffect = (
- renderEffect: WatchCallback,
- effect: (polyfill?: boolean) => ReturnType,
- deps: ShallowRef,
-) => void;
-
-/**
- * Polyfill `useInsertionEffect` for React < 18
- * @param renderEffect will be executed in `useMemo`, and do not have callback
- * @param effect will be executed in `useLayoutEffect`
- * @param deps
- */
-const useInsertionEffectPolyfill: UseCompatibleInsertionEffect = (renderEffect, effect, deps) => {
- watch(deps, renderEffect, { immediate: true });
- useLayoutEffect(() => effect(true), deps);
-};
-
-/**
- * Compatible `useInsertionEffect`
- * will use `useInsertionEffect` if React version >= 18,
- * otherwise use `useInsertionEffectPolyfill`.
- */
-const useCompatibleInsertionEffect: UseCompatibleInsertionEffect = useInsertionEffectPolyfill;
-
-export default useCompatibleInsertionEffect;
diff --git a/components/_util/cssinjs/hooks/useEffectCleanupRegister.ts b/components/_util/cssinjs/hooks/useEffectCleanupRegister.ts
deleted file mode 100644
index c557e5896..000000000
--- a/components/_util/cssinjs/hooks/useEffectCleanupRegister.ts
+++ /dev/null
@@ -1,8 +0,0 @@
-const useRun = () => {
- return function (fn: () => void) {
- fn();
- };
-};
-const useEffectCleanupRegister = useRun;
-
-export default useEffectCleanupRegister;
diff --git a/components/_util/cssinjs/hooks/useGlobalCache.tsx b/components/_util/cssinjs/hooks/useGlobalCache.tsx
deleted file mode 100644
index de2e70755..000000000
--- a/components/_util/cssinjs/hooks/useGlobalCache.tsx
+++ /dev/null
@@ -1,115 +0,0 @@
-import { useStyleInject } from '../StyleContext';
-import type { KeyType } from '../Cache';
-import useCompatibleInsertionEffect from './useCompatibleInsertionEffect';
-import useHMR from './useHMR';
-import type { ShallowRef, Ref } from 'vue';
-import { onBeforeUnmount, watch, computed } from 'vue';
-
-export type ExtractStyle = (
- cache: CacheValue,
- effectStyles: Record,
- options?: {
- plain?: boolean;
- },
-) => [order: number, styleId: string, style: string] | null;
-
-export default function useGlobalCache(
- prefix: string,
- keyPath: Ref,
- cacheFn: () => CacheType,
- onCacheRemove?: (cache: CacheType, fromHMR: boolean) => void,
- // Add additional effect trigger by `useInsertionEffect`
- onCacheEffect?: (cachedValue: CacheType) => void,
-): ShallowRef {
- const styleContext = useStyleInject();
- const globalCache = computed(() => styleContext.value?.cache);
- const deps = computed(() => [prefix, ...keyPath.value].join('%'));
-
- const HMRUpdate = useHMR();
-
- type UpdaterArgs = [times: number, cache: CacheType];
-
- const buildCache = (updater?: (data: UpdaterArgs) => UpdaterArgs) => {
- globalCache.value.update(deps.value, prevCache => {
- const [times = 0, cache] = prevCache || [undefined, undefined];
-
- // HMR should always ignore cache since developer may change it
- let tmpCache = cache;
- if (process.env.NODE_ENV !== 'production' && cache && HMRUpdate) {
- onCacheRemove?.(tmpCache, HMRUpdate);
- tmpCache = null;
- }
-
- const mergedCache = tmpCache || cacheFn();
-
- const data: UpdaterArgs = [times, mergedCache];
-
- // Call updater if need additional logic
- return updater ? updater(data) : data;
- });
- };
-
- watch(
- deps,
- () => {
- buildCache();
- },
- { immediate: true },
- );
-
- let cacheEntity = globalCache.value.get(deps.value);
-
- // HMR clean the cache but not trigger `useMemo` again
- // Let's fallback of this
- // ref https://github.com/ant-design/cssinjs/issues/127
- if (process.env.NODE_ENV !== 'production' && !cacheEntity) {
- buildCache();
- cacheEntity = globalCache.value.get(deps.value);
- }
-
- const cacheContent = computed(
- () =>
- (globalCache.value.get(deps.value) && globalCache.value.get(deps.value)![1]) ||
- cacheEntity![1],
- );
-
- // Remove if no need anymore
- useCompatibleInsertionEffect(
- () => {
- onCacheEffect?.(cacheContent.value);
- },
- polyfill => {
- // It's bad to call build again in effect.
- // But we have to do this since StrictMode will call effect twice
- // which will clear cache on the first time.
- buildCache(([times, cache]) => {
- if (polyfill && times === 0) {
- onCacheEffect?.(cacheContent.value);
- }
- return [times + 1, cache];
- });
-
- return () => {
- globalCache.value.update(deps.value, prevCache => {
- const [times = 0, cache] = prevCache || [];
- const nextCount = times - 1;
- if (nextCount <= 0) {
- if (polyfill || !globalCache.value.get(deps.value)) {
- onCacheRemove?.(cache, false);
- }
- return null;
- }
-
- return [times - 1, cache];
- });
- };
- },
- deps,
- );
-
- onBeforeUnmount(() => {
- buildCache();
- });
-
- return cacheContent;
-}
diff --git a/components/_util/cssinjs/hooks/useHMR.ts b/components/_util/cssinjs/hooks/useHMR.ts
deleted file mode 100644
index ff54518b8..000000000
--- a/components/_util/cssinjs/hooks/useHMR.ts
+++ /dev/null
@@ -1,34 +0,0 @@
-function useProdHMR() {
- return false;
-}
-
-let webpackHMR = false;
-
-function useDevHMR() {
- return webpackHMR;
-}
-
-export default process.env.NODE_ENV === 'production' ? useProdHMR : useDevHMR;
-
-// Webpack `module.hot.accept` do not support any deps update trigger
-// We have to hack handler to force mark as HRM
-if (
- process.env.NODE_ENV !== 'production' &&
- typeof module !== 'undefined' &&
- module &&
- (module as any).hot &&
- typeof window !== 'undefined'
-) {
- const win = window as any;
- if (typeof win.webpackHotUpdate === 'function') {
- const originWebpackHotUpdate = win.webpackHotUpdate;
-
- win.webpackHotUpdate = (...args: any[]) => {
- webpackHMR = true;
- setTimeout(() => {
- webpackHMR = false;
- }, 0);
- return originWebpackHotUpdate(...args);
- };
- }
-}
diff --git a/components/_util/cssinjs/hooks/useStyleRegister.tsx b/components/_util/cssinjs/hooks/useStyleRegister.tsx
deleted file mode 100644
index 0a39abbad..000000000
--- a/components/_util/cssinjs/hooks/useStyleRegister.tsx
+++ /dev/null
@@ -1,484 +0,0 @@
-import hash from '@emotion/hash';
-import type * as CSS from 'csstype';
-// @ts-ignore
-import unitless from '@emotion/unitless';
-import { compile, serialize, stringify } from 'stylis';
-import type { Theme, Transformer } from '..';
-import type Keyframes from '../Keyframes';
-import type { Linter } from '../linters';
-import { contentQuotesLinter, hashedAnimationLinter } from '../linters';
-import type { HashPriority } from '../StyleContext';
-import {
- useStyleInject,
- ATTR_CACHE_PATH,
- ATTR_MARK,
- ATTR_TOKEN,
- CSS_IN_JS_INSTANCE,
-} from '../StyleContext';
-import { isClientSide, supportLayer, toStyleStr } from '../util';
-import { CSS_FILE_STYLE, existPath, getStyleAndHash } from '../util/cacheMapUtil';
-import type { ExtractStyle } from './useGlobalCache';
-import useGlobalCache from './useGlobalCache';
-import { removeCSS, updateCSS } from '../../../vc-util/Dom/dynamicCSS';
-import type { Ref } from 'vue';
-import { computed } from 'vue';
-import type { VueNode } from '../../type';
-
-const SKIP_CHECK = '_skip_check_';
-const MULTI_VALUE = '_multi_value_';
-
-export type CSSProperties = Omit, 'animationName'> & {
- animationName?: CSS.PropertiesFallback['animationName'] | Keyframes;
-};
-
-export type CSSPropertiesWithMultiValues = {
- [K in keyof CSSProperties]:
- | CSSProperties[K]
- | readonly Extract[]
- | {
- [SKIP_CHECK]?: boolean;
- [MULTI_VALUE]?: boolean;
- value: CSSProperties[K] | CSSProperties[K][];
- };
-};
-
-export type CSSPseudos = { [K in CSS.Pseudos]?: CSSObject };
-
-type ArrayCSSInterpolation = readonly CSSInterpolation[];
-
-export type InterpolationPrimitive = null | undefined | boolean | number | string | CSSObject;
-
-export type CSSInterpolation = InterpolationPrimitive | ArrayCSSInterpolation | Keyframes;
-
-export type CSSOthersObject = Record;
-
-// @ts-ignore
-export interface CSSObject extends CSSPropertiesWithMultiValues, CSSPseudos, CSSOthersObject {}
-
-// ============================================================================
-// == Parser ==
-// ============================================================================
-// Preprocessor style content to browser support one
-export function normalizeStyle(styleStr: string): string {
- const serialized = serialize(compile(styleStr), stringify);
- return serialized.replace(/\{%%%\:[^;];}/g, ';');
-}
-
-function isCompoundCSSProperty(value: CSSObject[string]) {
- return typeof value === 'object' && value && (SKIP_CHECK in value || MULTI_VALUE in value);
-}
-
-// 注入 hash 值
-function injectSelectorHash(key: string, hashId: string, hashPriority?: HashPriority) {
- if (!hashId) {
- return key;
- }
-
- const hashClassName = `.${hashId}`;
- const hashSelector = hashPriority === 'low' ? `:where(${hashClassName})` : hashClassName;
-
- // 注入 hashId
- const keys = key.split(',').map(k => {
- const fullPath = k.trim().split(/\s+/);
-
- // 如果 Selector 第一个是 HTML Element,那我们就插到它的后面。反之,就插到最前面。
- let firstPath = fullPath[0] || '';
- const htmlElement = firstPath.match(/^\w+/)?.[0] || '';
-
- firstPath = `${htmlElement}${hashSelector}${firstPath.slice(htmlElement.length)}`;
-
- return [firstPath, ...fullPath.slice(1)].join(' ');
- });
- return keys.join(',');
-}
-
-export interface ParseConfig {
- hashId?: string;
- hashPriority?: HashPriority;
- layer?: string;
- path?: string;
- transformers?: Transformer[];
- linters?: Linter[];
-}
-
-export interface ParseInfo {
- root?: boolean;
- injectHash?: boolean;
- parentSelectors: string[];
-}
-
-// Parse CSSObject to style content
-export const parseStyle = (
- interpolation: CSSInterpolation,
- config: ParseConfig = {},
- { root, injectHash, parentSelectors }: ParseInfo = {
- root: true,
- parentSelectors: [],
- },
-): [
- parsedStr: string,
- // Style content which should be unique on all of the style (e.g. Keyframes).
- // Firefox will flick with same animation name when exist multiple same keyframes.
- effectStyle: Record,
-] => {
- const { hashId, layer, path, hashPriority, transformers = [], linters = [] } = config;
- let styleStr = '';
- let effectStyle: Record = {};
-
- function parseKeyframes(keyframes: Keyframes) {
- const animationName = keyframes.getName(hashId);
- if (!effectStyle[animationName]) {
- const [parsedStr] = parseStyle(keyframes.style, config, {
- root: false,
- parentSelectors,
- });
-
- effectStyle[animationName] = `@keyframes ${keyframes.getName(hashId)}${parsedStr}`;
- }
- }
-
- function flattenList(list: ArrayCSSInterpolation, fullList: CSSObject[] = []) {
- list.forEach(item => {
- if (Array.isArray(item)) {
- flattenList(item, fullList);
- } else if (item) {
- fullList.push(item as CSSObject);
- }
- });
-
- return fullList;
- }
-
- const flattenStyleList = flattenList(
- Array.isArray(interpolation) ? interpolation : [interpolation],
- );
-
- flattenStyleList.forEach(originStyle => {
- // Only root level can use raw string
- const style: CSSObject = typeof originStyle === 'string' && !root ? {} : originStyle;
-
- if (typeof style === 'string') {
- styleStr += `${style}\n`;
- } else if ((style as any)._keyframe) {
- // Keyframe
- parseKeyframes(style as unknown as Keyframes);
- } else {
- const mergedStyle = transformers.reduce((prev, trans) => trans?.visit?.(prev) || prev, style);
-
- // Normal CSSObject
- Object.keys(mergedStyle).forEach(key => {
- const value = mergedStyle[key];
-
- if (
- typeof value === 'object' &&
- value &&
- (key !== 'animationName' || !(value as Keyframes)._keyframe) &&
- !isCompoundCSSProperty(value)
- ) {
- let subInjectHash = false;
-
- // 当成嵌套对象来处理
- let mergedKey = key.trim();
- // Whether treat child as root. In most case it is false.
- let nextRoot = false;
-
- // 拆分多个选择器
- if ((root || injectHash) && hashId) {
- if (mergedKey.startsWith('@')) {
- // 略过媒体查询,交给子节点继续插入 hashId
- subInjectHash = true;
- } else {
- // 注入 hashId
- mergedKey = injectSelectorHash(key, hashId, hashPriority);
- }
- } else if (root && !hashId && (mergedKey === '&' || mergedKey === '')) {
- // In case of `{ '&': { a: { color: 'red' } } }` or `{ '': { a: { color: 'red' } } }` without hashId,
- // we will get `&{a:{color:red;}}` or `{a:{color:red;}}` string for stylis to compile.
- // But it does not conform to stylis syntax,
- // and finally we will get `{color:red;}` as css, which is wrong.
- // So we need to remove key in root, and treat child `{ a: { color: 'red' } }` as root.
- mergedKey = '';
- nextRoot = true;
- }
-
- const [parsedStr, childEffectStyle] = parseStyle(value as any, config, {
- root: nextRoot,
- injectHash: subInjectHash,
- parentSelectors: [...parentSelectors, mergedKey],
- });
-
- effectStyle = {
- ...effectStyle,
- ...childEffectStyle,
- };
-
- styleStr += `${mergedKey}${parsedStr}`;
- } else {
- function appendStyle(cssKey: string, cssValue: any) {
- if (
- process.env.NODE_ENV !== 'production' &&
- (typeof value !== 'object' || !(value as any)?.[SKIP_CHECK])
- ) {
- [contentQuotesLinter, hashedAnimationLinter, ...linters].forEach(linter =>
- linter(cssKey, cssValue, { path, hashId, parentSelectors }),
- );
- }
-
- // 如果是样式则直接插入
- const styleName = cssKey.replace(/[A-Z]/g, match => `-${match.toLowerCase()}`);
-
- // Auto suffix with px
- let formatValue = cssValue;
- if (!unitless[cssKey] && typeof formatValue === 'number' && formatValue !== 0) {
- formatValue = `${formatValue}px`;
- }
-
- // handle animationName & Keyframe value
- if (cssKey === 'animationName' && (cssValue as Keyframes)?._keyframe) {
- parseKeyframes(cssValue as Keyframes);
- formatValue = (cssValue as Keyframes).getName(hashId);
- }
-
- styleStr += `${styleName}:${formatValue};`;
- }
-
- const actualValue = (value as any)?.value ?? value;
- if (
- typeof value === 'object' &&
- (value as any)?.[MULTI_VALUE] &&
- Array.isArray(actualValue)
- ) {
- actualValue.forEach(item => {
- appendStyle(key, item);
- });
- } else {
- appendStyle(key, actualValue);
- }
- }
- });
- }
- });
-
- if (!root) {
- styleStr = `{${styleStr}}`;
- } else if (layer && supportLayer()) {
- const layerCells = layer.split(',');
- const layerName = layerCells[layerCells.length - 1].trim();
- styleStr = `@layer ${layerName} {${styleStr}}`;
-
- // Order of layer if needed
- if (layerCells.length > 1) {
- // zombieJ: stylis do not support layer order, so we need to handle it manually.
- styleStr = `@layer ${layer}{%%%:%}${styleStr}`;
- }
- }
-
- return [styleStr, effectStyle];
-};
-
-// ============================================================================
-// == Register ==
-// ============================================================================
-export function uniqueHash(path: (string | number)[], styleStr: string) {
- return hash(`${path.join('%')}${styleStr}`);
-}
-
-// function Empty() {
-// return null;
-// }
-
-export const STYLE_PREFIX = 'style';
-
-type StyleCacheValue = [
- styleStr: string,
- tokenKey: string,
- styleId: string,
- effectStyle: Record,
- clientOnly: boolean | undefined,
- order: number,
-];
-
-/**
- * Register a style to the global style sheet.
- */
-export default function useStyleRegister(
- info: Ref<{
- theme: Theme;
- token: any;
- path: string[];
- hashId?: string;
- layer?: string;
- nonce?: string | (() => string);
- clientOnly?: boolean;
- /**
- * Tell cssinjs the insert order of style.
- * It's useful when you need to insert style
- * before other style to overwrite for the same selector priority.
- */
- order?: number;
- }>,
- styleFn: () => CSSInterpolation,
-) {
- const styleContext = useStyleInject();
-
- const tokenKey = computed(() => info.value.token._tokenKey as string);
-
- const fullPath = computed(() => [tokenKey.value, ...info.value.path]);
-
- // Check if need insert style
- let isMergedClientSide = isClientSide;
- if (process.env.NODE_ENV !== 'production' && styleContext.value.mock !== undefined) {
- isMergedClientSide = styleContext.value.mock === 'client';
- }
-
- // const [cacheStyle[0], cacheStyle[1], cacheStyle[2]]
- useGlobalCache(
- STYLE_PREFIX,
- fullPath,
- // Create cache if needed
- () => {
- const { path, hashId, layer, clientOnly, order = 0 } = info.value;
- const cachePath = fullPath.value.join('|');
-
- // Get style from SSR inline style directly
- if (existPath(cachePath)) {
- const [inlineCacheStyleStr, styleHash] = getStyleAndHash(cachePath);
- if (inlineCacheStyleStr) {
- return [inlineCacheStyleStr, tokenKey.value, styleHash, {}, clientOnly, order];
- }
- }
-
- // Generate style
- const styleObj = styleFn();
- const { hashPriority, transformers, linters } = styleContext.value;
-
- const [parsedStyle, effectStyle] = parseStyle(styleObj, {
- hashId,
- hashPriority,
- layer,
- path: path.join('-'),
- transformers,
- linters,
- });
-
- const styleStr = normalizeStyle(parsedStyle);
- const styleId = uniqueHash(fullPath.value, styleStr);
-
- return [styleStr, tokenKey.value, styleId, effectStyle, clientOnly, order];
- },
-
- // Remove cache if no need
- ([, , styleId], fromHMR) => {
- if ((fromHMR || styleContext.value.autoClear) && isClientSide) {
- removeCSS(styleId, { mark: ATTR_MARK });
- }
- },
-
- // Effect: Inject style here
- ([styleStr, , styleId, effectStyle]) => {
- if (isMergedClientSide && styleStr !== CSS_FILE_STYLE) {
- const mergedCSSConfig: Parameters[2] = {
- mark: ATTR_MARK,
- prepend: 'queue',
- attachTo: styleContext.value.container,
- priority: info.value.order,
- };
-
- const nonceStr =
- typeof info.value.nonce === 'function' ? info.value.nonce() : info.value.nonce;
-
- if (nonceStr) {
- mergedCSSConfig.csp = { nonce: nonceStr };
- }
-
- const style = updateCSS(styleStr, styleId, mergedCSSConfig);
-
- (style as any)[CSS_IN_JS_INSTANCE] = styleContext.value.cache.instanceId;
-
- // Used for `useCacheToken` to remove on batch when token removed
- style.setAttribute(ATTR_TOKEN, tokenKey.value);
-
- // Debug usage. Dev only
- if (process.env.NODE_ENV !== 'production') {
- style.setAttribute(ATTR_CACHE_PATH, fullPath.value.join('|'));
- }
-
- // Inject client side effect style
- Object.keys(effectStyle).forEach(effectKey => {
- updateCSS(
- normalizeStyle(effectStyle[effectKey]),
- `_effect-${effectKey}`,
- mergedCSSConfig,
- );
- });
- }
- },
- );
-
- return (node: VueNode) => {
- return node;
- // let styleNode: VueNode;
-
- // if (!styleContext.value.ssrInline || isMergedClientSide || !styleContext.value.defaultCache) {
- // styleNode = ;
- // } else {
- // styleNode = (
- //
- // );
- // }
-
- // return (
- // <>
- // {styleNode}
- // {node}
- // >
- // );
- };
-}
-
-export const extract: ExtractStyle = (cache, effectStyles, options) => {
- const [styleStr, tokenKey, styleId, effectStyle, clientOnly, order]: StyleCacheValue = cache;
- const { plain } = options || {};
-
- // Skip client only style
- if (clientOnly) {
- return null;
- }
-
- let keyStyleText = styleStr;
-
- // ====================== Style ======================
- // Used for rc-util
- const sharedAttrs = {
- 'data-vc-order': 'prependQueue',
- 'data-vc-priority': `${order}`,
- };
-
- keyStyleText = toStyleStr(styleStr, tokenKey, styleId, sharedAttrs, plain);
-
- // =============== Create effect style ===============
- if (effectStyle) {
- Object.keys(effectStyle).forEach(effectKey => {
- // Effect style can be reused
- if (!effectStyles[effectKey]) {
- effectStyles[effectKey] = true;
- const effectStyleStr = normalizeStyle(effectStyle[effectKey]);
- keyStyleText += toStyleStr(
- effectStyleStr,
- tokenKey,
- `_effect-${effectKey}`,
- sharedAttrs,
- plain,
- );
- }
- });
- }
-
- return [order, styleId, keyStyleText];
-};
diff --git a/components/_util/cssinjs/index.ts b/components/_util/cssinjs/index.ts
deleted file mode 100644
index 5dc10a654..000000000
--- a/components/_util/cssinjs/index.ts
+++ /dev/null
@@ -1,62 +0,0 @@
-import extractStyle from './extractStyle';
-import useCacheToken, { getComputedToken } from './hooks/useCacheToken';
-import useCSSVarRegister from './hooks/useCSSVarRegister';
-import type { CSSInterpolation, CSSObject } from './hooks/useStyleRegister';
-import useStyleRegister from './hooks/useStyleRegister';
-import Keyframes from './Keyframes';
-import type { Linter } from './linters';
-import {
- legacyNotSelectorLinter,
- logicalPropertiesLinter,
- NaNLinter,
- parentSelectorLinter,
-} from './linters';
-import type { StyleProviderProps } from './StyleContext';
-import { createCache, StyleProvider } from './StyleContext';
-import type { DerivativeFunc, TokenType } from './theme';
-import { createTheme, Theme } from './theme';
-import type { Transformer } from './transformers/interface';
-import legacyLogicalPropertiesTransformer from './transformers/legacyLogicalProperties';
-import px2remTransformer from './transformers/px2rem';
-import { supportLogicProps, supportWhere, unit } from './util';
-import { token2CSSVar } from './util/css-variables';
-
-export {
- Theme,
- createTheme,
- useStyleRegister,
- useCSSVarRegister,
- useCacheToken,
- createCache,
- StyleProvider,
- Keyframes,
- extractStyle,
- getComputedToken,
-
- // Transformer
- legacyLogicalPropertiesTransformer,
- px2remTransformer,
-
- // Linters
- logicalPropertiesLinter,
- legacyNotSelectorLinter,
- parentSelectorLinter,
- NaNLinter,
-
- // util
- token2CSSVar,
- unit,
-};
-export type {
- TokenType,
- CSSObject,
- CSSInterpolation,
- DerivativeFunc,
- Transformer,
- Linter,
- StyleProviderProps,
-};
-
-export const _experimental = {
- supportModernCSS: () => supportWhere() && supportLogicProps(),
-};
diff --git a/components/_util/cssinjs/linters/NaNLinter.ts b/components/_util/cssinjs/linters/NaNLinter.ts
deleted file mode 100644
index 72bded76c..000000000
--- a/components/_util/cssinjs/linters/NaNLinter.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-import type { Linter } from './interface';
-import { lintWarning } from './utils';
-
-const linter: Linter = (key, value, info) => {
- if ((typeof value === 'string' && /NaN/g.test(value)) || Number.isNaN(value)) {
- lintWarning(`Unexpected 'NaN' in property '${key}: ${value}'.`, info);
- }
-};
-
-export default linter;
diff --git a/components/_util/cssinjs/linters/contentQuotesLinter.ts b/components/_util/cssinjs/linters/contentQuotesLinter.ts
deleted file mode 100644
index b1e60f08c..000000000
--- a/components/_util/cssinjs/linters/contentQuotesLinter.ts
+++ /dev/null
@@ -1,25 +0,0 @@
-import type { Linter } from './interface';
-import { lintWarning } from './utils';
-
-const linter: Linter = (key, value, info) => {
- if (key === 'content') {
- // From emotion: https://github.com/emotion-js/emotion/blob/main/packages/serialize/src/index.js#L63
- const contentValuePattern =
- /(attr|counters?|url|(((repeating-)?(linear|radial))|conic)-gradient)\(|(no-)?(open|close)-quote/;
- const contentValues = ['normal', 'none', 'initial', 'inherit', 'unset'];
- if (
- typeof value !== 'string' ||
- (contentValues.indexOf(value) === -1 &&
- !contentValuePattern.test(value) &&
- (value.charAt(0) !== value.charAt(value.length - 1) ||
- (value.charAt(0) !== '"' && value.charAt(0) !== "'")))
- ) {
- lintWarning(
- `You seem to be using a value for 'content' without quotes, try replacing it with \`content: '"${value}"'\`.`,
- info,
- );
- }
- }
-};
-
-export default linter;
diff --git a/components/_util/cssinjs/linters/hashedAnimationLinter.ts b/components/_util/cssinjs/linters/hashedAnimationLinter.ts
deleted file mode 100644
index 4c6fc948b..000000000
--- a/components/_util/cssinjs/linters/hashedAnimationLinter.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import type { Linter } from './interface';
-import { lintWarning } from './utils';
-
-const linter: Linter = (key, value, info) => {
- if (key === 'animation') {
- if (info.hashId && value !== 'none') {
- lintWarning(
- `You seem to be using hashed animation '${value}', in which case 'animationName' with Keyframe as value is recommended.`,
- info,
- );
- }
- }
-};
-
-export default linter;
diff --git a/components/_util/cssinjs/linters/index.ts b/components/_util/cssinjs/linters/index.ts
deleted file mode 100644
index 2e31efe53..000000000
--- a/components/_util/cssinjs/linters/index.ts
+++ /dev/null
@@ -1,7 +0,0 @@
-export { default as contentQuotesLinter } from './contentQuotesLinter';
-export { default as hashedAnimationLinter } from './hashedAnimationLinter';
-export type { Linter } from './interface';
-export { default as legacyNotSelectorLinter } from './legacyNotSelectorLinter';
-export { default as logicalPropertiesLinter } from './logicalPropertiesLinter';
-export { default as NaNLinter } from './NaNLinter';
-export { default as parentSelectorLinter } from './parentSelectorLinter';
diff --git a/components/_util/cssinjs/linters/interface.ts b/components/_util/cssinjs/linters/interface.ts
deleted file mode 100644
index 2df3b6bc2..000000000
--- a/components/_util/cssinjs/linters/interface.ts
+++ /dev/null
@@ -1,9 +0,0 @@
-export interface LinterInfo {
- path?: string;
- hashId?: string;
- parentSelectors: string[];
-}
-
-export interface Linter {
- (key: string, value: string | number, info: LinterInfo): void;
-}
diff --git a/components/_util/cssinjs/linters/legacyNotSelectorLinter.ts b/components/_util/cssinjs/linters/legacyNotSelectorLinter.ts
deleted file mode 100644
index f38bf5a33..000000000
--- a/components/_util/cssinjs/linters/legacyNotSelectorLinter.ts
+++ /dev/null
@@ -1,33 +0,0 @@
-import type { Linter, LinterInfo } from './interface';
-import { lintWarning } from './utils';
-
-function isConcatSelector(selector: string) {
- const notContent = selector.match(/:not\(([^)]*)\)/)?.[1] || '';
-
- // split selector. e.g.
- // `h1#a.b` => ['h1', #a', '.b']
- const splitCells = notContent.split(/(\[[^[]*])|(?=[.#])/).filter(str => str);
-
- return splitCells.length > 1;
-}
-
-function parsePath(info: LinterInfo) {
- return info.parentSelectors.reduce((prev, cur) => {
- if (!prev) {
- return cur;
- }
-
- return cur.includes('&') ? cur.replace(/&/g, prev) : `${prev} ${cur}`;
- }, '');
-}
-
-const linter: Linter = (_key, _value, info) => {
- const parentSelectorPath = parsePath(info);
- const notList = parentSelectorPath.match(/:not\([^)]*\)/g) || [];
-
- if (notList.length > 0 && notList.some(isConcatSelector)) {
- lintWarning(`Concat ':not' selector not support in legacy browsers.`, info);
- }
-};
-
-export default linter;
diff --git a/components/_util/cssinjs/linters/logicalPropertiesLinter.ts b/components/_util/cssinjs/linters/logicalPropertiesLinter.ts
deleted file mode 100644
index bdddcf73f..000000000
--- a/components/_util/cssinjs/linters/logicalPropertiesLinter.ts
+++ /dev/null
@@ -1,88 +0,0 @@
-import type { Linter } from './interface';
-import { lintWarning } from './utils';
-
-const linter: Linter = (key, value, info) => {
- switch (key) {
- case 'marginLeft':
- case 'marginRight':
- case 'paddingLeft':
- case 'paddingRight':
- case 'left':
- case 'right':
- case 'borderLeft':
- case 'borderLeftWidth':
- case 'borderLeftStyle':
- case 'borderLeftColor':
- case 'borderRight':
- case 'borderRightWidth':
- case 'borderRightStyle':
- case 'borderRightColor':
- case 'borderTopLeftRadius':
- case 'borderTopRightRadius':
- case 'borderBottomLeftRadius':
- case 'borderBottomRightRadius':
- lintWarning(
- `You seem to be using non-logical property '${key}' which is not compatible with RTL mode. Please use logical properties and values instead. For more information: https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Logical_Properties.`,
- info,
- );
- return;
- case 'margin':
- case 'padding':
- case 'borderWidth':
- case 'borderStyle':
- // case 'borderColor':
- if (typeof value === 'string') {
- const valueArr = value.split(' ').map(item => item.trim());
- if (valueArr.length === 4 && valueArr[1] !== valueArr[3]) {
- lintWarning(
- `You seem to be using '${key}' property with different left ${key} and right ${key}, which is not compatible with RTL mode. Please use logical properties and values instead. For more information: https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Logical_Properties.`,
- info,
- );
- }
- }
- return;
- case 'clear':
- case 'textAlign':
- if (value === 'left' || value === 'right') {
- lintWarning(
- `You seem to be using non-logical value '${value}' of ${key}, which is not compatible with RTL mode. Please use logical properties and values instead. For more information: https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Logical_Properties.`,
- info,
- );
- }
- return;
- case 'borderRadius':
- if (typeof value === 'string') {
- const radiusGroups = value.split('/').map(item => item.trim());
- const invalid = radiusGroups.reduce((result, group) => {
- if (result) {
- return result;
- }
- const radiusArr = group.split(' ').map(item => item.trim());
- // borderRadius: '2px 4px'
- if (radiusArr.length >= 2 && radiusArr[0] !== radiusArr[1]) {
- return true;
- }
- // borderRadius: '4px 4px 2px'
- if (radiusArr.length === 3 && radiusArr[1] !== radiusArr[2]) {
- return true;
- }
- // borderRadius: '4px 4px 2px 4px'
- if (radiusArr.length === 4 && radiusArr[2] !== radiusArr[3]) {
- return true;
- }
- return result;
- }, false);
-
- if (invalid) {
- lintWarning(
- `You seem to be using non-logical value '${value}' of ${key}, which is not compatible with RTL mode. Please use logical properties and values instead. For more information: https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Logical_Properties.`,
- info,
- );
- }
- }
- return;
- default:
- }
-};
-
-export default linter;
diff --git a/components/_util/cssinjs/linters/parentSelectorLinter.ts b/components/_util/cssinjs/linters/parentSelectorLinter.ts
deleted file mode 100644
index 7a061ce8a..000000000
--- a/components/_util/cssinjs/linters/parentSelectorLinter.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import type { Linter } from '..';
-import { lintWarning } from './utils';
-
-const linter: Linter = (_key, _value, info) => {
- if (
- info.parentSelectors.some(selector => {
- const selectors = selector.split(',');
- return selectors.some(item => item.split('&').length > 2);
- })
- ) {
- lintWarning('Should not use more than one `&` in a selector.', info);
- }
-};
-
-export default linter;
diff --git a/components/_util/cssinjs/linters/utils.ts b/components/_util/cssinjs/linters/utils.ts
deleted file mode 100644
index 83c80cb3c..000000000
--- a/components/_util/cssinjs/linters/utils.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-import devWarning from '../../../vc-util/warning';
-import type { LinterInfo } from './interface';
-
-export function lintWarning(message: string, info: LinterInfo) {
- const { path, parentSelectors } = info;
-
- devWarning(
- false,
- `[Ant Design Vue CSS-in-JS] ${path ? `Error in ${path}: ` : ''}${message}${
- parentSelectors.length ? ` Selector: ${parentSelectors.join(' | ')}` : ''
- }`,
- );
-}
diff --git a/components/_util/cssinjs/theme/Theme.ts b/components/_util/cssinjs/theme/Theme.ts
deleted file mode 100644
index 608bdde6c..000000000
--- a/components/_util/cssinjs/theme/Theme.ts
+++ /dev/null
@@ -1,38 +0,0 @@
-import warning from '../../warning';
-import type { DerivativeFunc, TokenType } from './interface';
-
-let uuid = 0;
-
-/**
- * Theme with algorithms to derive tokens from design tokens.
- * Use `createTheme` first which will help to manage the theme instance cache.
- */
-export default class Theme {
- private derivatives: DerivativeFunc[];
- public readonly id: number;
-
- constructor(
- derivatives:
- | DerivativeFunc
- | DerivativeFunc[],
- ) {
- this.derivatives = Array.isArray(derivatives) ? derivatives : [derivatives];
- this.id = uuid;
-
- if (derivatives.length === 0) {
- warning(
- derivatives.length > 0,
- '[Ant Design Vue CSS-in-JS] Theme should have at least one derivative function.',
- );
- }
-
- uuid += 1;
- }
-
- getDerivativeToken(token: DesignToken): DerivativeToken {
- return this.derivatives.reduce(
- (result, derivative) => derivative(token, result),
- undefined as any,
- );
- }
-}
diff --git a/components/_util/cssinjs/theme/ThemeCache.ts b/components/_util/cssinjs/theme/ThemeCache.ts
deleted file mode 100644
index db76ffa6a..000000000
--- a/components/_util/cssinjs/theme/ThemeCache.ts
+++ /dev/null
@@ -1,135 +0,0 @@
-import type Theme from './Theme';
-import type { DerivativeFunc } from './interface';
-
-// ================================== Cache ==================================
-type ThemeCacheMap = Map<
- DerivativeFunc,
- {
- map?: ThemeCacheMap;
- value?: [Theme, number];
- }
->;
-
-type DerivativeOptions = DerivativeFunc[];
-
-export function sameDerivativeOption(left: DerivativeOptions, right: DerivativeOptions) {
- if (left.length !== right.length) {
- return false;
- }
- for (let i = 0; i < left.length; i++) {
- if (left[i] !== right[i]) {
- return false;
- }
- }
- return true;
-}
-
-export default class ThemeCache {
- public static MAX_CACHE_SIZE = 20;
- public static MAX_CACHE_OFFSET = 5;
-
- private readonly cache: ThemeCacheMap;
- private keys: DerivativeOptions[];
- private cacheCallTimes: number;
-
- constructor() {
- this.cache = new Map();
- this.keys = [];
- this.cacheCallTimes = 0;
- }
-
- public size(): number {
- return this.keys.length;
- }
-
- private internalGet(
- derivativeOption: DerivativeOptions,
- updateCallTimes = false,
- ): [Theme, number] | undefined {
- let cache: ReturnType = { map: this.cache };
- derivativeOption.forEach(derivative => {
- if (!cache) {
- cache = undefined;
- } else {
- cache = cache?.map?.get(derivative);
- }
- });
- if (cache?.value && updateCallTimes) {
- cache.value[1] = this.cacheCallTimes++;
- }
- return cache?.value;
- }
-
- public get(derivativeOption: DerivativeOptions): Theme | undefined {
- return this.internalGet(derivativeOption, true)?.[0];
- }
-
- public has(derivativeOption: DerivativeOptions): boolean {
- return !!this.internalGet(derivativeOption);
- }
-
- public set(derivativeOption: DerivativeOptions, value: Theme): void {
- // New cache
- if (!this.has(derivativeOption)) {
- if (this.size() + 1 > ThemeCache.MAX_CACHE_SIZE + ThemeCache.MAX_CACHE_OFFSET) {
- const [targetKey] = this.keys.reduce<[DerivativeOptions, number]>(
- (result, key) => {
- const [, callTimes] = result;
- if (this.internalGet(key)![1] < callTimes) {
- return [key, this.internalGet(key)![1]];
- }
- return result;
- },
- [this.keys[0], this.cacheCallTimes],
- );
- this.delete(targetKey);
- }
-
- this.keys.push(derivativeOption);
- }
-
- let cache = this.cache;
- derivativeOption.forEach((derivative, index) => {
- if (index === derivativeOption.length - 1) {
- cache.set(derivative, { value: [value, this.cacheCallTimes++] });
- } else {
- const cacheValue = cache.get(derivative);
- if (!cacheValue) {
- cache.set(derivative, { map: new Map() });
- } else if (!cacheValue.map) {
- cacheValue.map = new Map();
- }
- cache = cache.get(derivative)!.map!;
- }
- });
- }
-
- private deleteByPath(
- currentCache: ThemeCacheMap,
- derivatives: DerivativeFunc[],
- ): Theme | undefined {
- const cache = currentCache.get(derivatives[0])!;
- if (derivatives.length === 1) {
- if (!cache.map) {
- currentCache.delete(derivatives[0]);
- } else {
- currentCache.set(derivatives[0], { map: cache.map });
- }
- return cache.value?.[0];
- }
- const result = this.deleteByPath(cache.map!, derivatives.slice(1));
- if ((!cache.map || cache.map.size === 0) && !cache.value) {
- currentCache.delete(derivatives[0]);
- }
- return result;
- }
-
- public delete(derivativeOption: DerivativeOptions): Theme | undefined {
- // If cache exists
- if (this.has(derivativeOption)) {
- this.keys = this.keys.filter(item => !sameDerivativeOption(item, derivativeOption));
- return this.deleteByPath(this.cache, derivativeOption);
- }
- return undefined;
- }
-}
diff --git a/components/_util/cssinjs/theme/createTheme.ts b/components/_util/cssinjs/theme/createTheme.ts
deleted file mode 100644
index 9f73f58a1..000000000
--- a/components/_util/cssinjs/theme/createTheme.ts
+++ /dev/null
@@ -1,26 +0,0 @@
-import ThemeCache from './ThemeCache';
-import Theme from './Theme';
-import type { DerivativeFunc, TokenType } from './interface';
-
-const cacheThemes = new ThemeCache();
-
-/**
- * Same as new Theme, but will always return same one if `derivative` not changed.
- */
-export default function createTheme<
- DesignToken extends TokenType,
- DerivativeToken extends TokenType,
->(
- derivatives:
- | DerivativeFunc[]
- | DerivativeFunc,
-) {
- const derivativeArr = Array.isArray(derivatives) ? derivatives : [derivatives];
- // Create new theme if not exist
- if (!cacheThemes.has(derivativeArr)) {
- cacheThemes.set(derivativeArr, new Theme(derivativeArr));
- }
-
- // Get theme from cache and return
- return cacheThemes.get(derivativeArr)!;
-}
diff --git a/components/_util/cssinjs/theme/index.ts b/components/_util/cssinjs/theme/index.ts
deleted file mode 100644
index b3c2ff4b1..000000000
--- a/components/_util/cssinjs/theme/index.ts
+++ /dev/null
@@ -1,4 +0,0 @@
-export { default as createTheme } from './createTheme';
-export { default as Theme } from './Theme';
-export { default as ThemeCache } from './ThemeCache';
-export type { TokenType, DerivativeFunc } from './interface';
diff --git a/components/_util/cssinjs/theme/interface.ts b/components/_util/cssinjs/theme/interface.ts
deleted file mode 100644
index 827706ce2..000000000
--- a/components/_util/cssinjs/theme/interface.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-export type TokenType = object;
-export type DerivativeFunc = (
- designToken: DesignToken,
- derivativeToken?: DerivativeToken,
-) => DerivativeToken;
diff --git a/components/_util/cssinjs/transformers/interface.ts b/components/_util/cssinjs/transformers/interface.ts
deleted file mode 100644
index a7120e814..000000000
--- a/components/_util/cssinjs/transformers/interface.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-import type { CSSObject } from '..';
-
-export interface Transformer {
- visit?: (cssObj: CSSObject) => CSSObject;
-}
diff --git a/components/_util/cssinjs/transformers/legacyLogicalProperties.ts b/components/_util/cssinjs/transformers/legacyLogicalProperties.ts
deleted file mode 100644
index 7a33c1a0c..000000000
--- a/components/_util/cssinjs/transformers/legacyLogicalProperties.ts
+++ /dev/null
@@ -1,173 +0,0 @@
-import type { CSSObject } from '..';
-import type { Transformer } from './interface';
-
-function splitValues(value: string | number): [values: (string | number)[], important: boolean] {
- if (typeof value === 'number') {
- return [[value], false];
- }
-
- const rawStyle = String(value).trim();
- const importantCells = rawStyle.match(/(.*)(!important)/);
-
- const splitStyle = (importantCells ? importantCells[1] : rawStyle).trim().split(/\s+/);
-
- // Combine styles split in brackets, like `calc(1px + 2px)`
- let temp = '';
- let brackets = 0;
- return [
- splitStyle.reduce((list, item) => {
- if (item.includes('(') || item.includes(')')) {
- const left = item.split('(').length - 1;
- const right = item.split(')').length - 1;
- brackets += left - right;
- }
- if (brackets === 0) {
- list.push(temp + item);
- temp = '';
- } else if (brackets > 0) {
- temp += item;
- }
- return list;
- }, []),
- !!importantCells,
- ];
-}
-
-type MatchValue = string[] & {
- notSplit?: boolean;
-};
-
-function noSplit(list: MatchValue): MatchValue {
- list.notSplit = true;
- return list;
-}
-
-const keyMap: Record = {
- // Inset
- inset: ['top', 'right', 'bottom', 'left'],
- insetBlock: ['top', 'bottom'],
- insetBlockStart: ['top'],
- insetBlockEnd: ['bottom'],
- insetInline: ['left', 'right'],
- insetInlineStart: ['left'],
- insetInlineEnd: ['right'],
-
- // Margin
- marginBlock: ['marginTop', 'marginBottom'],
- marginBlockStart: ['marginTop'],
- marginBlockEnd: ['marginBottom'],
- marginInline: ['marginLeft', 'marginRight'],
- marginInlineStart: ['marginLeft'],
- marginInlineEnd: ['marginRight'],
-
- // Padding
- paddingBlock: ['paddingTop', 'paddingBottom'],
- paddingBlockStart: ['paddingTop'],
- paddingBlockEnd: ['paddingBottom'],
- paddingInline: ['paddingLeft', 'paddingRight'],
- paddingInlineStart: ['paddingLeft'],
- paddingInlineEnd: ['paddingRight'],
-
- // Border
- borderBlock: noSplit(['borderTop', 'borderBottom']),
- borderBlockStart: noSplit(['borderTop']),
- borderBlockEnd: noSplit(['borderBottom']),
- borderInline: noSplit(['borderLeft', 'borderRight']),
- borderInlineStart: noSplit(['borderLeft']),
- borderInlineEnd: noSplit(['borderRight']),
-
- // Border width
- borderBlockWidth: ['borderTopWidth', 'borderBottomWidth'],
- borderBlockStartWidth: ['borderTopWidth'],
- borderBlockEndWidth: ['borderBottomWidth'],
- borderInlineWidth: ['borderLeftWidth', 'borderRightWidth'],
- borderInlineStartWidth: ['borderLeftWidth'],
- borderInlineEndWidth: ['borderRightWidth'],
-
- // Border style
- borderBlockStyle: ['borderTopStyle', 'borderBottomStyle'],
- borderBlockStartStyle: ['borderTopStyle'],
- borderBlockEndStyle: ['borderBottomStyle'],
- borderInlineStyle: ['borderLeftStyle', 'borderRightStyle'],
- borderInlineStartStyle: ['borderLeftStyle'],
- borderInlineEndStyle: ['borderRightStyle'],
-
- // Border color
- borderBlockColor: ['borderTopColor', 'borderBottomColor'],
- borderBlockStartColor: ['borderTopColor'],
- borderBlockEndColor: ['borderBottomColor'],
- borderInlineColor: ['borderLeftColor', 'borderRightColor'],
- borderInlineStartColor: ['borderLeftColor'],
- borderInlineEndColor: ['borderRightColor'],
-
- // Border radius
- borderStartStartRadius: ['borderTopLeftRadius'],
- borderStartEndRadius: ['borderTopRightRadius'],
- borderEndStartRadius: ['borderBottomLeftRadius'],
- borderEndEndRadius: ['borderBottomRightRadius'],
-};
-
-function wrapImportantAndSkipCheck(value: string | number, important: boolean) {
- let parsedValue = value;
-
- if (important) {
- parsedValue = `${parsedValue} !important`;
- }
-
- return { _skip_check_: true, value: parsedValue };
-}
-
-/**
- * Convert css logical properties to legacy properties.
- * Such as: `margin-block-start` to `margin-top`.
- * Transform list:
- * - inset
- * - margin
- * - padding
- * - border
- */
-const transform: Transformer = {
- visit: cssObj => {
- const clone: CSSObject = {};
-
- Object.keys(cssObj).forEach(key => {
- const value = cssObj[key];
- const matchValue = keyMap[key];
-
- if (matchValue && (typeof value === 'number' || typeof value === 'string')) {
- const [values, important] = splitValues(value);
-
- if (matchValue.length && matchValue.notSplit) {
- // not split means always give same value like border
- matchValue.forEach(matchKey => {
- clone[matchKey] = wrapImportantAndSkipCheck(value, important);
- });
- } else if (matchValue.length === 1) {
- // Handle like `marginBlockStart` => `marginTop`
- clone[matchValue[0]] = wrapImportantAndSkipCheck(value, important);
- } else if (matchValue.length === 2) {
- // Handle like `marginBlock` => `marginTop` & `marginBottom`
- matchValue.forEach((matchKey, index) => {
- clone[matchKey] = wrapImportantAndSkipCheck(values[index] ?? values[0], important);
- });
- } else if (matchValue.length === 4) {
- // Handle like `inset` => `top` & `right` & `bottom` & `left`
- matchValue.forEach((matchKey, index) => {
- clone[matchKey] = wrapImportantAndSkipCheck(
- values[index] ?? values[index - 2] ?? values[0],
- important,
- );
- });
- } else {
- clone[key] = value;
- }
- } else {
- clone[key] = value;
- }
- });
-
- return clone;
- },
-};
-
-export default transform;
diff --git a/components/_util/cssinjs/transformers/px2rem.ts b/components/_util/cssinjs/transformers/px2rem.ts
deleted file mode 100644
index 593a107b2..000000000
--- a/components/_util/cssinjs/transformers/px2rem.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-/**
- * respect https://github.com/cuth/postcss-pxtorem
- */
-// @ts-ignore
-import unitless from '@emotion/unitless';
-import type { CSSObject } from '..';
-import type { Transformer } from './interface';
-
-export interface Options {
- /**
- * The root font size.
- * @default 16
- */
- rootValue?: number;
- /**
- * The decimal numbers to allow the REM units to grow to.
- * @default 5
- */
- precision?: number;
- /**
- * Whether to allow px to be converted in media queries.
- * @default false
- */
- mediaQuery?: boolean;
-}
-
-const pxRegex = /url\([^)]+\)|var\([^)]+\)|(\d*\.?\d+)px/g;
-
-function toFixed(number: number, precision: number) {
- const multiplier = Math.pow(10, precision + 1),
- wholeNumber = Math.floor(number * multiplier);
- return (Math.round(wholeNumber / 10) * 10) / multiplier;
-}
-
-const transform = (options: Options = {}): Transformer => {
- const { rootValue = 16, precision = 5, mediaQuery = false } = options;
-
- const pxReplace = (m: string, $1: any) => {
- if (!$1) return m;
- const pixels = parseFloat($1);
- // covenant: pixels <= 1, not transform to rem @zombieJ
- if (pixels <= 1) return m;
- const fixedVal = toFixed(pixels / rootValue, precision);
- return `${fixedVal}rem`;
- };
-
- const visit = (cssObj: CSSObject): CSSObject => {
- const clone: CSSObject = { ...cssObj };
-
- Object.entries(cssObj).forEach(([key, value]) => {
- if (typeof value === 'string' && value.includes('px')) {
- const newValue = value.replace(pxRegex, pxReplace);
- clone[key] = newValue;
- }
-
- // no unit
- if (!unitless[key] && typeof value === 'number' && value !== 0) {
- clone[key] = `${value}px`.replace(pxRegex, pxReplace);
- }
-
- // Media queries
- const mergedKey = key.trim();
- if (mergedKey.startsWith('@') && mergedKey.includes('px') && mediaQuery) {
- const newKey = key.replace(pxRegex, pxReplace);
-
- clone[newKey] = clone[key];
- delete clone[key];
- }
- });
-
- return clone;
- };
-
- return { visit };
-};
-
-export default transform;
diff --git a/components/_util/cssinjs/util/cacheMapUtil.ts b/components/_util/cssinjs/util/cacheMapUtil.ts
deleted file mode 100644
index 813af183d..000000000
--- a/components/_util/cssinjs/util/cacheMapUtil.ts
+++ /dev/null
@@ -1,91 +0,0 @@
-import canUseDom from '../../canUseDom';
-import { ATTR_MARK } from '../StyleContext';
-
-export const ATTR_CACHE_MAP = 'data-ant-cssinjs-cache-path';
-
-/**
- * This marks style from the css file.
- * Which means not exist in `` tag.
- */
-export const CSS_FILE_STYLE = '_FILE_STYLE__';
-
-export function serialize(cachePathMap: Record) {
- return Object.keys(cachePathMap)
- .map(path => {
- const hash = cachePathMap[path];
- return `${path}:${hash}`;
- })
- .join(';');
-}
-
-let cachePathMap: Record;
-let fromCSSFile = true;
-
-/**
- * @private Test usage only. Can save remove if no need.
- */
-export function reset(mockCache?: Record, fromFile = true) {
- cachePathMap = mockCache!;
- fromCSSFile = fromFile;
-}
-
-export function prepare() {
- if (!cachePathMap) {
- cachePathMap = {};
-
- if (canUseDom()) {
- const div = document.createElement('div');
- div.className = ATTR_CACHE_MAP;
- div.style.position = 'fixed';
- div.style.visibility = 'hidden';
- div.style.top = '-9999px';
- document.body.appendChild(div);
-
- let content = getComputedStyle(div).content || '';
- content = content.replace(/^"/, '').replace(/"$/, '');
-
- // Fill data
- content.split(';').forEach(item => {
- const [path, hash] = item.split(':');
- cachePathMap[path] = hash;
- });
-
- // Remove inline record style
- const inlineMapStyle = document.querySelector(`style[${ATTR_CACHE_MAP}]`);
- if (inlineMapStyle) {
- fromCSSFile = false;
- inlineMapStyle.parentNode?.removeChild(inlineMapStyle);
- }
-
- document.body.removeChild(div);
- }
- }
-}
-
-export function existPath(path: string) {
- prepare();
-
- return !!cachePathMap[path];
-}
-
-export function getStyleAndHash(path: string): [style: string | null, hash: string] {
- const hash = cachePathMap[path];
- let styleStr: string | null = null;
-
- if (hash && canUseDom()) {
- if (fromCSSFile) {
- styleStr = CSS_FILE_STYLE;
- } else {
- const style = document.querySelector(`style[${ATTR_MARK}="${cachePathMap[path]}"]`);
-
- if (style) {
- styleStr = style.innerHTML;
- } else {
- // Clean up since not exist anymore
- delete cachePathMap[path];
- }
- }
- }
-
- return [styleStr, hash];
-}
diff --git a/components/_util/cssinjs/util/css-variables.ts b/components/_util/cssinjs/util/css-variables.ts
deleted file mode 100644
index 6a3dc6c36..000000000
--- a/components/_util/cssinjs/util/css-variables.ts
+++ /dev/null
@@ -1,58 +0,0 @@
-export const token2CSSVar = (token: string, prefix = '') => {
- return `--${prefix ? `${prefix}-` : ''}${token}`
- .replace(/([a-z0-9])([A-Z])/g, '$1-$2')
- .replace(/([A-Z]+)([A-Z][a-z0-9]+)/g, '$1-$2')
- .replace(/([a-z])([A-Z0-9])/g, '$1-$2')
- .toLowerCase();
-};
-
-export const serializeCSSVar = >(
- cssVars: T,
- hashId: string,
- options?: {
- scope?: string;
- },
-) => {
- if (!Object.keys(cssVars).length) {
- return '';
- }
- return `.${hashId}${options?.scope ? `.${options.scope}` : ''}{${Object.entries(cssVars)
- .map(([key, value]) => `${key}:${value};`)
- .join('')}}`;
-};
-
-export type TokenWithCSSVar = Record> = {
- [key in keyof T]?: string | V;
-};
-
-export const transformToken = = Record>(
- token: T,
- themeKey: string,
- config?: {
- prefix?: string;
- ignore?: {
- [key in keyof T]?: boolean;
- };
- unitless?: {
- [key in keyof T]?: boolean;
- };
- preserve?: {
- [key in keyof T]?: boolean;
- };
- scope?: string;
- },
-): [TokenWithCSSVar, string] => {
- const cssVars: Record = {};
- const result: TokenWithCSSVar = {};
- Object.entries(token).forEach(([key, value]) => {
- if (config?.preserve?.[key]) {
- result[key as keyof T] = value;
- } else if ((typeof value === 'string' || typeof value === 'number') && !config?.ignore?.[key]) {
- const cssVar = token2CSSVar(key, config?.prefix);
- cssVars[cssVar] =
- typeof value === 'number' && !config?.unitless?.[key] ? `${value}px` : String(value);
- result[key as keyof T] = `var(${cssVar})`;
- }
- });
- return [result, serializeCSSVar(cssVars, themeKey, { scope: config?.scope })];
-};
diff --git a/components/_util/cssinjs/util/index.ts b/components/_util/cssinjs/util/index.ts
deleted file mode 100644
index ae59f90e7..000000000
--- a/components/_util/cssinjs/util/index.ts
+++ /dev/null
@@ -1,179 +0,0 @@
-import hash from '@emotion/hash';
-import canUseDom from '../../canUseDom';
-import { removeCSS, updateCSS } from '../../../vc-util/Dom/dynamicCSS';
-import { ATTR_MARK, ATTR_TOKEN } from '../StyleContext';
-import { Theme } from '../theme';
-
-// Create a cache for memo concat
-type NestWeakMap = WeakMap | T>;
-const resultCache: NestWeakMap = new WeakMap();
-const RESULT_VALUE = {};
-
-export function memoResult(callback: () => R, deps: T[]): R {
- let current: WeakMap = resultCache;
- for (let i = 0; i < deps.length; i += 1) {
- const dep = deps[i];
- if (!current.has(dep)) {
- current.set(dep, new WeakMap());
- }
- current = current.get(dep)!;
- }
-
- if (!current.has(RESULT_VALUE)) {
- current.set(RESULT_VALUE, callback());
- }
-
- return current.get(RESULT_VALUE);
-}
-
-// Create a cache here to avoid always loop generate
-const flattenTokenCache = new WeakMap();
-
-/**
- * Flatten token to string, this will auto cache the result when token not change
- */
-export function flattenToken(token: any) {
- let str = flattenTokenCache.get(token) || '';
-
- if (!str) {
- Object.keys(token).forEach(key => {
- const value = token[key];
- str += key;
- if (value instanceof Theme) {
- str += value.id;
- } else if (value && typeof value === 'object') {
- str += flattenToken(value);
- } else {
- str += value;
- }
- });
-
- // Put in cache
- flattenTokenCache.set(token, str);
- }
- return str;
-}
-
-/**
- * Convert derivative token to key string
- */
-export function token2key(token: any, salt: string): string {
- return hash(`${salt}_${flattenToken(token)}`);
-}
-
-const randomSelectorKey = `random-${Date.now()}-${Math.random()}`.replace(/\./g, '');
-
-// Magic `content` for detect selector support
-const checkContent = '_bAmBoO_';
-
-function supportSelector(
- styleStr: string,
- handleElement: (ele: HTMLElement) => void,
- supportCheck?: (ele: HTMLElement) => boolean,
-): boolean {
- if (canUseDom()) {
- updateCSS(styleStr, randomSelectorKey);
-
- const ele = document.createElement('div');
- ele.style.position = 'fixed';
- ele.style.left = '0';
- ele.style.top = '0';
- handleElement?.(ele);
- document.body.appendChild(ele);
-
- if (process.env.NODE_ENV !== 'production') {
- ele.innerHTML = 'Test';
- ele.style.zIndex = '9999999';
- }
-
- const support = supportCheck
- ? supportCheck(ele)
- : getComputedStyle(ele).content?.includes(checkContent);
-
- ele.parentNode?.removeChild(ele);
- removeCSS(randomSelectorKey);
-
- return support;
- }
-
- return false;
-}
-
-let canLayer: boolean | undefined = undefined;
-export function supportLayer(): boolean {
- if (canLayer === undefined) {
- canLayer = supportSelector(
- `@layer ${randomSelectorKey} { .${randomSelectorKey} { content: "${checkContent}"!important; } }`,
- ele => {
- ele.className = randomSelectorKey;
- },
- );
- }
-
- return canLayer!;
-}
-
-let canWhere: boolean | undefined = undefined;
-export function supportWhere(): boolean {
- if (canWhere === undefined) {
- canWhere = supportSelector(
- `:where(.${randomSelectorKey}) { content: "${checkContent}"!important; }`,
- ele => {
- ele.className = randomSelectorKey;
- },
- );
- }
-
- return canWhere!;
-}
-
-let canLogic: boolean | undefined = undefined;
-export function supportLogicProps(): boolean {
- if (canLogic === undefined) {
- canLogic = supportSelector(
- `.${randomSelectorKey} { inset-block: 93px !important; }`,
- ele => {
- ele.className = randomSelectorKey;
- },
- ele => getComputedStyle(ele).bottom === '93px',
- );
- }
-
- return canLogic!;
-}
-
-export const isClientSide = canUseDom();
-
-export function unit(num: string | number) {
- if (typeof num === 'number') {
- return `${num}px`;
- }
- return num;
-}
-
-export function toStyleStr(
- style: string,
- tokenKey?: string,
- styleId?: string,
- customizeAttrs: Record = {},
- plain = false,
-) {
- if (plain) {
- return style;
- }
- const attrs: Record = {
- ...customizeAttrs,
- [ATTR_TOKEN]: tokenKey,
- [ATTR_MARK]: styleId,
- };
-
- const attrStr = Object.keys(attrs)
- .map(attr => {
- const val = attrs[attr];
- return val ? `${attr}="${val}"` : null;
- })
- .filter(v => v)
- .join(' ');
-
- return ``;
-}
diff --git a/components/_util/debouncedWatch.ts b/components/_util/debouncedWatch.ts
deleted file mode 100644
index c822ab5ca..000000000
--- a/components/_util/debouncedWatch.ts
+++ /dev/null
@@ -1,89 +0,0 @@
-// copy from https://github.dev/vueuse/vueuse
-
-import type { Ref, WatchOptions, WatchStopHandle } from 'vue';
-import { unref, watch } from 'vue';
-
-type MaybeRef = T | Ref;
-
-type Fn = () => void;
-
-export type FunctionArgs = (...args: Args) => Return;
-
-export interface FunctionWrapperOptions {
- fn: FunctionArgs;
- args: Args;
- thisArg: This;
-}
-
-export type EventFilter = (
- invoke: Fn,
- options: FunctionWrapperOptions,
-) => void;
-
-const bypassFilter: EventFilter = invoke => {
- return invoke();
-};
-/**
- * Create an EventFilter that debounce the events
- *
- * @param ms
- */
-export function debounceFilter(ms: MaybeRef) {
- let timer: ReturnType | undefined;
-
- const filter: EventFilter = invoke => {
- const duration = unref(ms);
-
- if (timer) clearTimeout(timer);
-
- if (duration <= 0) return invoke();
-
- timer = setTimeout(invoke, duration);
- };
-
- return filter;
-}
-export interface DebouncedWatchOptions extends WatchOptions {
- debounce?: MaybeRef;
-}
-
-interface ConfigurableEventFilter {
- eventFilter?: EventFilter;
-}
-/**
- * @internal
- */
-function createFilterWrapper(filter: EventFilter, fn: T) {
- function wrapper(this: any, ...args: any[]) {
- filter(() => fn.apply(this, args), { fn, thisArg: this, args });
- }
-
- return wrapper as any as T;
-}
-export interface WatchWithFilterOptions
- extends WatchOptions,
- ConfigurableEventFilter {}
-// implementation
-export function watchWithFilter = false>(
- source: any,
- cb: any,
- options: WatchWithFilterOptions = {},
-): WatchStopHandle {
- const { eventFilter = bypassFilter, ...watchOptions } = options;
-
- return watch(source, createFilterWrapper(eventFilter, cb), watchOptions);
-}
-
-// implementation
-export default function debouncedWatch = false>(
- source: any,
- cb: any,
- options: DebouncedWatchOptions = {},
-): WatchStopHandle {
- const { debounce = 0, ...watchOptions } = options;
-
- return watchWithFilter(source, cb, {
- ...watchOptions,
- eventFilter: debounceFilter(debounce),
- });
-}
diff --git a/components/_util/eagerComputed.ts b/components/_util/eagerComputed.ts
deleted file mode 100644
index bc15ca9f2..000000000
--- a/components/_util/eagerComputed.ts
+++ /dev/null
@@ -1,16 +0,0 @@
-import { watchEffect, shallowRef } from 'vue';
-import type { ComputedRef } from 'vue';
-export declare type ComputedGetter = (...args: any[]) => T;
-export default function eagerComputed(fn: ComputedGetter) {
- const result = shallowRef();
- watchEffect(
- () => {
- result.value = fn();
- },
- {
- flush: 'sync', // needed so updates are immediate.
- },
- );
-
- return result as any as ComputedRef;
-}
diff --git a/components/_util/easings.ts b/components/_util/easings.ts
deleted file mode 100644
index a71ac8f22..000000000
--- a/components/_util/easings.ts
+++ /dev/null
@@ -1,8 +0,0 @@
-export function easeInOutCubic(t: number, b: number, c: number, d: number) {
- const cc = c - b;
- t /= d / 2;
- if (t < 1) {
- return (cc / 2) * t * t * t + b;
- }
- return (cc / 2) * ((t -= 2) * t * t + 2) + b;
-}
diff --git a/components/_util/env.ts b/components/_util/env.ts
deleted file mode 100644
index 5dc106191..000000000
--- a/components/_util/env.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-/* eslint-disable no-undef */
-// Browser environment sniffing
-export const inBrowser = typeof window !== 'undefined';
-export const UA = inBrowser && window.navigator.userAgent.toLowerCase();
-export const isIE = UA && /msie|trident/.test(UA);
-export const isIE9 = UA && UA.indexOf('msie 9.0') > 0;
-export const isEdge = UA && UA.indexOf('edge/') > 0;
-export const isChrome = UA && /chrome\/\d+/.test(UA) && !isEdge;
-export const isPhantomJS = UA && /phantomjs/.test(UA);
-export const isFF = UA && UA.match(/firefox\/(\d+)/);
diff --git a/components/_util/extendsObject.ts b/components/_util/extendsObject.ts
deleted file mode 100644
index 3f6959ce4..000000000
--- a/components/_util/extendsObject.ts
+++ /dev/null
@@ -1,21 +0,0 @@
-type RecordType = Record;
-
-function extendsObject(...list: T[]) {
- const result: RecordType = { ...list[0] };
-
- for (let i = 1; i < list.length; i++) {
- const obj = list[i];
- if (obj) {
- Object.keys(obj).forEach(key => {
- const val = obj[key];
- if (val !== undefined) {
- result[key] = val;
- }
- });
- }
- }
-
- return result;
-}
-
-export default extendsObject;
diff --git a/components/_util/firstNotUndefined.ts b/components/_util/firstNotUndefined.ts
deleted file mode 100644
index 0b81ee9b0..000000000
--- a/components/_util/firstNotUndefined.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-function firstNotUndefined(arr: T[] = []): T {
- for (let i = 0, len = arr.length; i < len; i++) {
- if (arr[i] !== undefined) {
- return arr[i];
- }
- }
- return undefined;
-}
-
-export default firstNotUndefined;
diff --git a/components/_util/gapSize.ts b/components/_util/gapSize.ts
deleted file mode 100644
index f4f35ec38..000000000
--- a/components/_util/gapSize.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-import type { SizeType } from '../config-provider/SizeContext';
-
-export function isPresetSize(size?: SizeType | string | number): size is SizeType {
- return ['small', 'middle', 'large'].includes(size as string);
-}
-
-export function isValidGapNumber(size?: SizeType | string | number): size is number {
- if (!size) {
- // The case of size = 0 is deliberately excluded here, because the default value of the gap attribute in CSS is 0, so if the user passes 0 in, we can directly ignore it.
- return false;
- }
- return typeof size === 'number' && !Number.isNaN(size);
-}
diff --git a/components/_util/getRequestAnimationFrame.ts b/components/_util/getRequestAnimationFrame.ts
deleted file mode 100644
index 25bdc2ab2..000000000
--- a/components/_util/getRequestAnimationFrame.ts
+++ /dev/null
@@ -1,46 +0,0 @@
-const availablePrefixs = ['moz', 'ms', 'webkit'];
-
-function requestAnimationFramePolyfill() {
- let lastTime = 0;
- return function (callback) {
- const currTime = new Date().getTime();
- const timeToCall = Math.max(0, 16 - (currTime - lastTime));
- const id = window.setTimeout(function () {
- callback(currTime + timeToCall);
- }, timeToCall);
- lastTime = currTime + timeToCall;
- return id;
- };
-}
-
-export default function getRequestAnimationFrame() {
- if (typeof window === 'undefined') {
- return () => {};
- }
- if (window.requestAnimationFrame) {
- // https://github.com/vuejs/vue/issues/4465
- return window.requestAnimationFrame.bind(window);
- }
-
- const prefix = availablePrefixs.filter(key => `${key}RequestAnimationFrame` in window)[0];
-
- return prefix ? window[`${prefix}RequestAnimationFrame`] : requestAnimationFramePolyfill();
-}
-
-export function cancelRequestAnimationFrame(id) {
- if (typeof window === 'undefined') {
- return null;
- }
- if (window.cancelAnimationFrame) {
- return window.cancelAnimationFrame(id);
- }
- const prefix = availablePrefixs.filter(
- key => `${key}CancelAnimationFrame` in window || `${key}CancelRequestAnimationFrame` in window,
- )[0];
-
- return prefix
- ? (
- window[`${prefix}CancelAnimationFrame`] || window[`${prefix}CancelRequestAnimationFrame`]
- ).call(this, id)
- : clearTimeout(id);
-}
diff --git a/components/_util/getScroll.ts b/components/_util/getScroll.ts
deleted file mode 100644
index f3e42f1bc..000000000
--- a/components/_util/getScroll.ts
+++ /dev/null
@@ -1,32 +0,0 @@
-export function isWindow(obj: any): obj is Window {
- return obj !== null && obj !== undefined && obj === obj.window;
-}
-
-const getScroll = (target: HTMLElement | Window | Document | null): number => {
- if (typeof window === 'undefined') {
- return 0;
- }
- let result = 0;
- if (isWindow(target)) {
- result = target.pageYOffset;
- } else if (target instanceof Document) {
- result = target.documentElement.scrollTop;
- } else if (target instanceof HTMLElement) {
- result = target.scrollTop;
- } else if (target) {
- // According to the type inference, the `target` is `never` type.
- // Since we configured the loose mode type checking, and supports mocking the target with such shape below::
- // `{ documentElement: { scrollLeft: 200, scrollTop: 400 } }`,
- // the program may falls into this branch.
- // Check the corresponding tests for details. Don't sure what is the real scenario this happens.
- /* biome-ignore lint/complexity/useLiteralKeys: target is a never type */ /* eslint-disable-next-line dot-notation */
- result = target['scrollTop'];
- }
-
- if (target && !isWindow(target) && typeof result !== 'number') {
- result = (target.ownerDocument ?? (target as Document)).documentElement?.scrollTop;
- }
- return result;
-};
-
-export default getScroll;
diff --git a/components/_util/getScrollBarSize.ts b/components/_util/getScrollBarSize.ts
deleted file mode 100644
index 12a142f3f..000000000
--- a/components/_util/getScrollBarSize.ts
+++ /dev/null
@@ -1,62 +0,0 @@
-/* eslint-disable no-param-reassign */
-
-let cached: number;
-
-export default function getScrollBarSize(fresh?: boolean) {
- if (typeof document === 'undefined') {
- return 0;
- }
-
- if (fresh || cached === undefined) {
- const inner = document.createElement('div');
- inner.style.width = '100%';
- inner.style.height = '200px';
-
- const outer = document.createElement('div');
- const outerStyle = outer.style;
-
- outerStyle.position = 'absolute';
- outerStyle.top = '0';
- outerStyle.left = '0';
- outerStyle.pointerEvents = 'none';
- outerStyle.visibility = 'hidden';
- outerStyle.width = '200px';
- outerStyle.height = '150px';
- outerStyle.overflow = 'hidden';
-
- outer.appendChild(inner);
-
- document.body.appendChild(outer);
-
- const widthContained = inner.offsetWidth;
- outer.style.overflow = 'scroll';
- let widthScroll = inner.offsetWidth;
-
- if (widthContained === widthScroll) {
- widthScroll = outer.clientWidth;
- }
-
- document.body.removeChild(outer);
-
- cached = widthContained - widthScroll;
- }
- return cached;
-}
-
-function ensureSize(str: string) {
- const match = str.match(/^(.*)px$/);
- const value = Number(match?.[1]);
- return Number.isNaN(value) ? getScrollBarSize() : value;
-}
-
-export function getTargetScrollBarSize(target: HTMLElement) {
- if (typeof document === 'undefined' || !target || !(target instanceof Element)) {
- return { width: 0, height: 0 };
- }
-
- const { width, height } = getComputedStyle(target, '::-webkit-scrollbar');
- return {
- width: ensureSize(width),
- height: ensureSize(height),
- };
-}
diff --git a/components/_util/hooks/_vueuse/_configurable.ts b/components/_util/hooks/_vueuse/_configurable.ts
deleted file mode 100644
index a32d33939..000000000
--- a/components/_util/hooks/_vueuse/_configurable.ts
+++ /dev/null
@@ -1,34 +0,0 @@
-import { isClient } from './is';
-
-export interface ConfigurableWindow {
- /*
- * Specify a custom `window` instance, e.g. working with iframes or in testing environments.
- */
- window?: Window;
-}
-
-export interface ConfigurableDocument {
- /*
- * Specify a custom `document` instance, e.g. working with iframes or in testing environments.
- */
- document?: Document;
-}
-
-export interface ConfigurableNavigator {
- /*
- * Specify a custom `navigator` instance, e.g. working with iframes or in testing environments.
- */
- navigator?: Navigator;
-}
-
-export interface ConfigurableLocation {
- /*
- * Specify a custom `location` instance, e.g. working with iframes or in testing environments.
- */
- location?: Location;
-}
-
-export const defaultWindow = isClient ? window : undefined;
-export const defaultDocument = isClient ? window.document : undefined;
-export const defaultNavigator = isClient ? window.navigator : undefined;
-export const defaultLocation = isClient ? window.location : undefined;
diff --git a/components/_util/hooks/_vueuse/is.ts b/components/_util/hooks/_vueuse/is.ts
deleted file mode 100644
index 1acf122e8..000000000
--- a/components/_util/hooks/_vueuse/is.ts
+++ /dev/null
@@ -1,26 +0,0 @@
-export const isClient = typeof window !== 'undefined';
-export const isDef = (val?: T): val is T => typeof val !== 'undefined';
-export const assert = (condition: boolean, ...infos: any[]) => {
- if (!condition) console.warn(...infos);
-};
-const toString = Object.prototype.toString;
-export const isBoolean = (val: any): val is boolean => typeof val === 'boolean';
-export const isFunction = (val: any): val is T => typeof val === 'function';
-export const isNumber = (val: any): val is number => typeof val === 'number';
-export const isString = (val: unknown): val is string => typeof val === 'string';
-export const isObject = (val: any): val is object => toString.call(val) === '[object Object]';
-export const isWindow = (val: any): val is Window =>
- typeof window !== 'undefined' && toString.call(val) === '[object Window]';
-export const now = () => Date.now();
-export const timestamp = () => +Date.now();
-export const clamp = (n: number, min: number, max: number) => Math.min(max, Math.max(min, n));
-export const noop = () => {};
-export const rand = (min: number, max: number) => {
- min = Math.ceil(min);
- max = Math.floor(max);
- return Math.floor(Math.random() * (max - min + 1)) + min;
-};
-export const isIOS =
- isClient && window?.navigator?.userAgent && /iP(ad|hone|od)/.test(window.navigator.userAgent);
-export const hasOwn = (val: T, key: K): key is K =>
- Object.prototype.hasOwnProperty.call(val, key);
diff --git a/components/_util/hooks/_vueuse/resolveUnref.ts b/components/_util/hooks/_vueuse/resolveUnref.ts
deleted file mode 100644
index 99d31ffd2..000000000
--- a/components/_util/hooks/_vueuse/resolveUnref.ts
+++ /dev/null
@@ -1,9 +0,0 @@
-import { unref } from 'vue';
-import type { MaybeComputedRef } from './types';
-
-/**
- * Get the value of value/ref/getter.
- */
-export function resolveUnref(r: MaybeComputedRef): T {
- return typeof r === 'function' ? (r as any)() : unref(r);
-}
diff --git a/components/_util/hooks/_vueuse/tryOnMounted.ts b/components/_util/hooks/_vueuse/tryOnMounted.ts
deleted file mode 100644
index 3c0155093..000000000
--- a/components/_util/hooks/_vueuse/tryOnMounted.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-// eslint-disable-next-line no-restricted-imports
-import { getCurrentInstance, nextTick, onMounted } from 'vue';
-import type { Fn } from './types';
-
-/**
- * Call onMounted() if it's inside a component lifecycle, if not, just call the function
- *
- * @param fn
- * @param sync if set to false, it will run in the nextTick() of Vue
- */
-export function tryOnMounted(fn: Fn, sync = true) {
- if (getCurrentInstance()) onMounted(fn);
- else if (sync) fn();
- else nextTick(fn);
-}
diff --git a/components/_util/hooks/_vueuse/tryOnScopeDispose.ts b/components/_util/hooks/_vueuse/tryOnScopeDispose.ts
deleted file mode 100644
index 460efc5e4..000000000
--- a/components/_util/hooks/_vueuse/tryOnScopeDispose.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import { getCurrentScope, onScopeDispose } from 'vue';
-import type { Fn } from './types';
-
-/**
- * Call onScopeDispose() if it's inside a effect scope lifecycle, if not, do nothing
- *
- * @param fn
- */
-export function tryOnScopeDispose(fn: Fn) {
- if (getCurrentScope()) {
- onScopeDispose(fn);
- return true;
- }
- return false;
-}
diff --git a/components/_util/hooks/_vueuse/types.ts b/components/_util/hooks/_vueuse/types.ts
deleted file mode 100644
index 1bde2360c..000000000
--- a/components/_util/hooks/_vueuse/types.ts
+++ /dev/null
@@ -1,142 +0,0 @@
-import type { ComputedRef, Ref, WatchOptions, WatchSource } from 'vue';
-
-/**
- * Any function
- */
-export type Fn = () => void;
-
-/**
- * A ref that allow to set null or undefined
- */
-export type RemovableRef = Omit[, 'value'> & {
- get value(): T;
- set value(value: T | null | undefined);
-};
-
-/**
- * @deprecated Use `RemovableRef`
- */
-export type RemoveableRef] = RemovableRef;
-
-/**
- * Maybe it's a ref, or a plain value
- *
- * ```ts
- * type MaybeRef = T | Ref
- * ```
- */
-export type MaybeRef = T | Ref;
-
-/**
- * Maybe it's a ref, or a plain value, or a getter function
- *
- * ```ts
- * type MaybeComputedRef = (() => T) | T | Ref | ComputedRef
- * ```
- */
-export type MaybeComputedRef = MaybeReadonlyRef | MaybeRef;
-
-/**
- * Maybe it's a computed ref, or a getter function
- *
- * ```ts
- * type MaybeReadonlyRef = (() => T) | ComputedRef
- * ```
- */
-export type MaybeReadonlyRef = (() => T) | ComputedRef;
-
-/**
- * Make all the nested attributes of an object or array to MaybeRef
- *
- * Good for accepting options that will be wrapped with `reactive` or `ref`
- *
- * ```ts
- * UnwrapRef> === T
- * ```
- */
-export type DeepMaybeRef = T extends Ref
- ? MaybeRef
- : T extends Array | object
- ? { [K in keyof T]: DeepMaybeRef }
- : MaybeRef;
-
-/**
- * Infers the element type of an array
- */
-export type ElementOf = T extends (infer E)[] ? E : never;
-
-export type ShallowUnwrapRef = T extends Ref ? P : T;
-
-export type Awaitable = Promise | T;
-
-export type ArgumentsType = T extends (...args: infer U) => any ? U : never;
-
-export interface Pausable {
- /**
- * A ref indicate whether a pausable instance is active
- */
- isActive: Ref;
-
- /**
- * Temporary pause the effect from executing
- */
- pause: Fn;
-
- /**
- * Resume the effects
- */
- resume: Fn;
-}
-
-export interface Stoppable {
- /**
- * A ref indicate whether a stoppable instance is executing
- */
- isPending: Ref;
-
- /**
- * Stop the effect from executing
- */
- stop: Fn;
-
- /**
- * Start the effects
- */
- start: Fn;
-}
-
-/**
- * @deprecated Use `Stoppable`
- */
-export type Stopable = Stoppable;
-
-export interface ConfigurableFlush {
- /**
- * Timing for monitoring changes, refer to WatchOptions for more details
- *
- * @default 'pre'
- */
- flush?: WatchOptions['flush'];
-}
-
-export interface ConfigurableFlushSync {
- /**
- * Timing for monitoring changes, refer to WatchOptions for more details.
- * Unlike `watch()`, the default is set to `sync`
- *
- * @default 'sync'
- */
- flush?: WatchOptions['flush'];
-}
-
-// Internal Types
-export type MapSources = {
- [K in keyof T]: T[K] extends WatchSource ? V : never;
-};
-export type MapOldSources = {
- [K in keyof T]: T[K] extends WatchSource
- ? Immediate extends true
- ? V | undefined
- : V
- : never;
-};
diff --git a/components/_util/hooks/_vueuse/unrefElement.ts b/components/_util/hooks/_vueuse/unrefElement.ts
deleted file mode 100644
index 2f278c8be..000000000
--- a/components/_util/hooks/_vueuse/unrefElement.ts
+++ /dev/null
@@ -1,24 +0,0 @@
-import type { ComponentPublicInstance } from 'vue';
-import type { MaybeComputedRef, MaybeRef } from './types';
-import { resolveUnref } from './resolveUnref';
-
-export type VueInstance = ComponentPublicInstance;
-export type MaybeElementRef = MaybeRef;
-export type MaybeComputedElementRef = MaybeComputedRef;
-export type MaybeElement = HTMLElement | SVGElement | VueInstance | undefined | null;
-
-export type UnRefElementReturn = T extends VueInstance
- ? Exclude
- : T | undefined;
-
-/**
- * Get the dom element of a ref of element or Vue component instance
- *
- * @param elRef
- */
-export function unrefElement(
- elRef: MaybeComputedElementRef,
-): UnRefElementReturn {
- const plain = resolveUnref(elRef);
- return (plain as VueInstance)?.$el ?? plain;
-}
diff --git a/components/_util/hooks/_vueuse/useElementSize.ts b/components/_util/hooks/_vueuse/useElementSize.ts
deleted file mode 100644
index bc90e9a06..000000000
--- a/components/_util/hooks/_vueuse/useElementSize.ts
+++ /dev/null
@@ -1,65 +0,0 @@
-import { shallowRef, watch } from 'vue';
-import type { MaybeComputedElementRef } from './unrefElement';
-import type { UseResizeObserverOptions } from './useResizeObserver';
-import { useResizeObserver } from './useResizeObserver';
-import { unrefElement } from './unrefElement';
-
-export interface ElementSize {
- width: number;
- height: number;
-}
-
-/**
- * Reactive size of an HTML element.
- *
- * @see https://vueuse.org/useElementSize
- * @param target
- * @param callback
- * @param options
- */
-export function useElementSize(
- target: MaybeComputedElementRef,
- initialSize: ElementSize = { width: 0, height: 0 },
- options: UseResizeObserverOptions = {},
-) {
- const { box = 'content-box' } = options;
- const width = shallowRef(initialSize.width);
- const height = shallowRef(initialSize.height);
-
- useResizeObserver(
- target,
- ([entry]) => {
- const boxSize =
- box === 'border-box'
- ? entry.borderBoxSize
- : box === 'content-box'
- ? entry.contentBoxSize
- : entry.devicePixelContentBoxSize;
-
- if (boxSize) {
- width.value = boxSize.reduce((acc, { inlineSize }) => acc + inlineSize, 0);
- height.value = boxSize.reduce((acc, { blockSize }) => acc + blockSize, 0);
- } else {
- // fallback
- width.value = entry.contentRect.width;
- height.value = entry.contentRect.height;
- }
- },
- options,
- );
-
- watch(
- () => unrefElement(target),
- ele => {
- width.value = ele ? initialSize.width : 0;
- height.value = ele ? initialSize.height : 0;
- },
- );
-
- return {
- width,
- height,
- };
-}
-
-export type UseElementSizeReturn = ReturnType;
diff --git a/components/_util/hooks/_vueuse/useMutationObserver.ts b/components/_util/hooks/_vueuse/useMutationObserver.ts
deleted file mode 100644
index 3a191d396..000000000
--- a/components/_util/hooks/_vueuse/useMutationObserver.ts
+++ /dev/null
@@ -1,62 +0,0 @@
-import { tryOnScopeDispose } from './tryOnScopeDispose';
-import { watch } from 'vue';
-import type { MaybeElementRef } from './unrefElement';
-import { unrefElement } from './unrefElement';
-import { useSupported } from './useSupported';
-import type { ConfigurableWindow } from './_configurable';
-import { defaultWindow } from './_configurable';
-
-export interface UseMutationObserverOptions extends MutationObserverInit, ConfigurableWindow {}
-
-/**
- * Watch for changes being made to the DOM tree.
- *
- * @see https://vueuse.org/useMutationObserver
- * @see https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver MutationObserver MDN
- * @param target
- * @param callback
- * @param options
- */
-export function useMutationObserver(
- target: MaybeElementRef,
- callback: MutationCallback,
- options: UseMutationObserverOptions = {},
-) {
- const { window = defaultWindow, ...mutationOptions } = options;
- let observer: MutationObserver | undefined;
- const isSupported = useSupported(() => window && 'MutationObserver' in window);
-
- const cleanup = () => {
- if (observer) {
- observer.disconnect();
- observer = undefined;
- }
- };
-
- const stopWatch = watch(
- () => unrefElement(target),
- el => {
- cleanup();
-
- if (isSupported.value && window && el) {
- observer = new MutationObserver(callback);
- observer!.observe(el, mutationOptions);
- }
- },
- { immediate: true },
- );
-
- const stop = () => {
- cleanup();
- stopWatch();
- };
-
- tryOnScopeDispose(stop);
-
- return {
- isSupported,
- stop,
- };
-}
-
-export type UseMutationObserverReturn = ReturnType;
diff --git a/components/_util/hooks/_vueuse/useResizeObserver.ts b/components/_util/hooks/_vueuse/useResizeObserver.ts
deleted file mode 100644
index 288084cbb..000000000
--- a/components/_util/hooks/_vueuse/useResizeObserver.ts
+++ /dev/null
@@ -1,94 +0,0 @@
-import { tryOnScopeDispose } from './tryOnScopeDispose';
-import { watch } from 'vue';
-import type { MaybeComputedElementRef } from './unrefElement';
-import { unrefElement } from './unrefElement';
-import { useSupported } from './useSupported';
-import type { ConfigurableWindow } from './_configurable';
-import { defaultWindow } from './_configurable';
-
-export interface ResizeObserverSize {
- readonly inlineSize: number;
- readonly blockSize: number;
-}
-
-export interface ResizeObserverEntry {
- readonly target: Element;
- readonly contentRect: DOMRectReadOnly;
- readonly borderBoxSize?: ReadonlyArray;
- readonly contentBoxSize?: ReadonlyArray;
- readonly devicePixelContentBoxSize?: ReadonlyArray;
-}
-
-export type ResizeObserverCallback = (
- entries: ReadonlyArray,
- observer: ResizeObserver,
-) => void;
-
-export interface UseResizeObserverOptions extends ConfigurableWindow {
- /**
- * Sets which box model the observer will observe changes to. Possible values
- * are `content-box` (the default), `border-box` and `device-pixel-content-box`.
- *
- * @default 'content-box'
- */
- box?: ResizeObserverBoxOptions;
-}
-
-declare class ResizeObserver {
- constructor(callback: ResizeObserverCallback);
- disconnect(): void;
- observe(target: Element, options?: UseResizeObserverOptions): void;
- unobserve(target: Element): void;
-}
-
-/**
- * Reports changes to the dimensions of an Element's content or the border-box
- *
- * @see https://vueuse.org/useResizeObserver
- * @param target
- * @param callback
- * @param options
- */
-export function useResizeObserver(
- target: MaybeComputedElementRef,
- callback: ResizeObserverCallback,
- options: UseResizeObserverOptions = {},
-) {
- const { window = defaultWindow, ...observerOptions } = options;
- let observer: ResizeObserver | undefined;
- const isSupported = useSupported(() => window && 'ResizeObserver' in window);
-
- const cleanup = () => {
- if (observer) {
- observer.disconnect();
- observer = undefined;
- }
- };
-
- const stopWatch = watch(
- () => unrefElement(target),
- el => {
- cleanup();
-
- if (isSupported.value && window && el) {
- observer = new ResizeObserver(callback);
- observer!.observe(el, observerOptions);
- }
- },
- { immediate: true, flush: 'post' },
- );
-
- const stop = () => {
- cleanup();
- stopWatch();
- };
-
- tryOnScopeDispose(stop);
-
- return {
- isSupported,
- stop,
- };
-}
-
-export type UseResizeObserverReturn = ReturnType;
diff --git a/components/_util/hooks/_vueuse/useSupported.ts b/components/_util/hooks/_vueuse/useSupported.ts
deleted file mode 100644
index 360e8e613..000000000
--- a/components/_util/hooks/_vueuse/useSupported.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-import { tryOnMounted } from './tryOnMounted';
-import { shallowRef } from 'vue';
-
-export function useSupported(callback: () => unknown, sync = false) {
- const isSupported = shallowRef();
-
- const update = () => (isSupported.value = Boolean(callback()));
-
- update();
-
- tryOnMounted(update, sync);
- return isSupported;
-}
diff --git a/components/_util/hooks/useBreakpoint.ts b/components/_util/hooks/useBreakpoint.ts
deleted file mode 100644
index 1c20a996d..000000000
--- a/components/_util/hooks/useBreakpoint.ts
+++ /dev/null
@@ -1,24 +0,0 @@
-import type { Ref } from 'vue';
-import { onMounted, onUnmounted, shallowRef } from 'vue';
-import type { ScreenMap } from '../../_util/responsiveObserve';
-import useResponsiveObserve from '../../_util/responsiveObserve';
-
-function useBreakpoint(): Ref {
- const screens = shallowRef({});
- let token = null;
- const responsiveObserve = useResponsiveObserve();
-
- onMounted(() => {
- token = responsiveObserve.value.subscribe(supportScreens => {
- screens.value = supportScreens;
- });
- });
-
- onUnmounted(() => {
- responsiveObserve.value.unsubscribe(token);
- });
-
- return screens;
-}
-
-export default useBreakpoint;
diff --git a/components/_util/hooks/useDestroyed.ts b/components/_util/hooks/useDestroyed.ts
deleted file mode 100644
index 7fa1f5022..000000000
--- a/components/_util/hooks/useDestroyed.ts
+++ /dev/null
@@ -1,12 +0,0 @@
-import { onBeforeUnmount, shallowRef } from 'vue';
-
-const useDestroyed = () => {
- const destroyed = shallowRef(false);
- onBeforeUnmount(() => {
- destroyed.value = true;
- });
-
- return destroyed;
-};
-
-export default useDestroyed;
diff --git a/components/_util/hooks/useFlexGapSupport.ts b/components/_util/hooks/useFlexGapSupport.ts
deleted file mode 100644
index 592cc762a..000000000
--- a/components/_util/hooks/useFlexGapSupport.ts
+++ /dev/null
@@ -1,11 +0,0 @@
-import { onMounted, shallowRef } from 'vue';
-import { detectFlexGapSupported } from '../styleChecker';
-
-export default () => {
- const flexible = shallowRef(false);
- onMounted(() => {
- flexible.value = detectFlexGapSupported();
- });
-
- return flexible;
-};
diff --git a/components/_util/hooks/useId.ts b/components/_util/hooks/useId.ts
deleted file mode 100644
index fea54f908..000000000
--- a/components/_util/hooks/useId.ts
+++ /dev/null
@@ -1,30 +0,0 @@
-import { ref } from 'vue';
-import canUseDom from '../../_util/canUseDom';
-
-let uuid = 0;
-
-/** Is client side and not jsdom */
-export const isBrowserClient = process.env.NODE_ENV !== 'test' && canUseDom();
-
-/** Get unique id for accessibility usage */
-export function getUUID(): number | string {
- let retId: string | number;
-
- // Test never reach
- /* istanbul ignore if */
- if (isBrowserClient) {
- retId = uuid;
- uuid += 1;
- } else {
- retId = 'TEST_OR_SSR';
- }
-
- return retId;
-}
-
-export default function useId(id = ref('')) {
- // Inner id for accessibility usage. Only work in client side
- const innerId = `vc_unique_${getUUID()}`;
-
- return id.value || innerId;
-}
diff --git a/components/_util/hooks/useLayoutEffect.ts b/components/_util/hooks/useLayoutEffect.ts
deleted file mode 100644
index 6f17aedaa..000000000
--- a/components/_util/hooks/useLayoutEffect.ts
+++ /dev/null
@@ -1,48 +0,0 @@
-import type { Ref, ShallowRef } from 'vue';
-
-import { shallowRef, ref, watch, nextTick, onMounted, onUnmounted } from 'vue';
-
-function useLayoutEffect(
- fn: (mount: boolean) => void | VoidFunction,
- deps?: Ref | Ref[] | ShallowRef | ShallowRef[],
-) {
- const firstMount = shallowRef(true);
- const cleanupFn = ref(null);
- let stopWatch = null;
-
- stopWatch = watch(
- deps,
- () => {
- nextTick(() => {
- if (cleanupFn.value) {
- cleanupFn.value();
- }
- cleanupFn.value = fn(firstMount.value);
- });
- },
- { immediate: true, flush: 'post' },
- );
-
- onMounted(() => {
- firstMount.value = false;
- });
-
- onUnmounted(() => {
- if (cleanupFn.value) {
- cleanupFn.value();
- }
- if (stopWatch) {
- stopWatch();
- }
- });
-}
-
-export const useLayoutUpdateEffect = (callback, deps) => {
- useLayoutEffect(firstMount => {
- if (!firstMount) {
- return callback();
- }
- }, deps);
-};
-
-export default useLayoutEffect;
diff --git a/components/_util/hooks/useLayoutState.ts b/components/_util/hooks/useLayoutState.ts
deleted file mode 100644
index 95189fccd..000000000
--- a/components/_util/hooks/useLayoutState.ts
+++ /dev/null
@@ -1,41 +0,0 @@
-import type { Ref } from 'vue';
-import { onBeforeUnmount, shallowRef } from 'vue';
-import raf from '../raf';
-
-export type Updater = (prev: State) => State;
-/**
- * Execute code before next frame but async
- */
-export function useLayoutState(
- defaultState: State,
-): [Ref, (updater: Updater) => void] {
- const stateRef = shallowRef(defaultState);
- let tempState = stateRef.value;
-
- let updateBatchRef = [];
- const rafRef = shallowRef();
- function setFrameState(updater: Updater) {
- raf.cancel(rafRef.value);
- updateBatchRef.push(updater);
-
- rafRef.value = raf(() => {
- const prevBatch = updateBatchRef;
- // const prevState = stateRef.value;
- updateBatchRef = [];
-
- prevBatch.forEach(batchUpdater => {
- tempState = batchUpdater(tempState);
- });
-
- // if (tempState !== stateRef.value) {
- stateRef.value = tempState;
- // }
- });
- }
-
- onBeforeUnmount(() => {
- raf.cancel(rafRef.value);
- });
-
- return [stateRef as Ref, setFrameState];
-}
diff --git a/components/_util/hooks/useMemo.ts b/components/_util/hooks/useMemo.ts
deleted file mode 100644
index 769136999..000000000
--- a/components/_util/hooks/useMemo.ts
+++ /dev/null
@@ -1,21 +0,0 @@
-import type { Ref, WatchSource } from 'vue';
-import { ref, watch } from 'vue';
-
-export default function useMemo(
- getValue: () => T,
- condition: (WatchSource | object)[],
- shouldUpdate?: (prev: any[], next: any[]) => boolean,
-) {
- const cacheRef: Ref = ref(getValue() as any);
- watch(condition, (next, pre) => {
- if (shouldUpdate) {
- if (shouldUpdate(next, pre)) {
- cacheRef.value = getValue();
- }
- } else {
- cacheRef.value = getValue();
- }
- });
-
- return cacheRef;
-}
diff --git a/components/_util/hooks/useMergedState.ts b/components/_util/hooks/useMergedState.ts
deleted file mode 100644
index 179e7dc61..000000000
--- a/components/_util/hooks/useMergedState.ts
+++ /dev/null
@@ -1,47 +0,0 @@
-import type { Ref, UnwrapRef } from 'vue';
-import { toRaw, watchEffect, unref, watch, ref } from 'vue';
-
-export default function useMergedState>(
- defaultStateValue: T | (() => T),
- option?: {
- defaultValue?: T | (() => T);
- value?: Ref | Ref>;
- onChange?: (val: T, prevValue: T) => void;
- postState?: (val: T) => T;
- },
-): [R, (val: T) => void] {
- const { defaultValue, value = ref() } = option || {};
- let initValue: T =
- typeof defaultStateValue === 'function' ? (defaultStateValue as any)() : defaultStateValue;
- if (value.value !== undefined) {
- initValue = unref(value as any) as T;
- }
- if (defaultValue !== undefined) {
- initValue = typeof defaultValue === 'function' ? (defaultValue as any)() : defaultValue;
- }
-
- const innerValue = ref(initValue) as Ref;
- const mergedValue = ref(initValue) as Ref;
- watchEffect(() => {
- let val = value.value !== undefined ? value.value : innerValue.value;
- if (option.postState) {
- val = option.postState(val as T);
- }
- mergedValue.value = val as T;
- });
-
- function triggerChange(newValue: T) {
- const preVal = mergedValue.value;
- innerValue.value = newValue;
- if (toRaw(mergedValue.value) !== newValue && option.onChange) {
- option.onChange(newValue, preVal);
- }
- }
-
- // Effect of reset value to `undefined`
- watch(value, () => {
- innerValue.value = value.value as T;
- });
-
- return [mergedValue as unknown as R, triggerChange];
-}
diff --git a/components/_util/hooks/useRefs.ts b/components/_util/hooks/useRefs.ts
deleted file mode 100644
index 965805e20..000000000
--- a/components/_util/hooks/useRefs.ts
+++ /dev/null
@@ -1,20 +0,0 @@
-import type { Ref, ComponentPublicInstance } from 'vue';
-import { onBeforeUpdate, ref } from 'vue';
-import type { Key } from '../type';
-
-type RefType = HTMLElement | ComponentPublicInstance;
-export type RefsValue = Map;
-type UseRef = [(key: Key) => (el: RefType) => void, Ref];
-const useRefs = (): UseRef => {
- const refs = ref(new Map());
-
- const setRef = (key: Key) => (el: RefType) => {
- refs.value.set(key, el);
- };
- onBeforeUpdate(() => {
- refs.value = new Map();
- });
- return [setRef, refs];
-};
-
-export default useRefs;
diff --git a/components/_util/hooks/useScrollLocker.ts b/components/_util/hooks/useScrollLocker.ts
deleted file mode 100644
index a1e8bb4eb..000000000
--- a/components/_util/hooks/useScrollLocker.ts
+++ /dev/null
@@ -1,52 +0,0 @@
-import type { Ref } from 'vue';
-import { computed, watchEffect } from 'vue';
-import { updateCSS, removeCSS } from '../../vc-util/Dom/dynamicCSS';
-import getScrollBarSize from '../../_util/getScrollBarSize';
-import canUseDom from '../../_util/canUseDom';
-
-const UNIQUE_ID = `vc-util-locker-${Date.now()}`;
-
-let uuid = 0;
-
-/**../vc-util/Dom/dynam
- * Test usage export. Do not use in your production
- */
-export function isBodyOverflowing() {
- return (
- document.body.scrollHeight > (window.innerHeight || document.documentElement.clientHeight) &&
- window.innerWidth > document.body.offsetWidth
- );
-}
-
-export default function useScrollLocker(lock?: Ref) {
- const mergedLock = computed(() => !!lock && !!lock.value);
- uuid += 1;
- const id = `${UNIQUE_ID}_${uuid}`;
-
- watchEffect(
- onClear => {
- if (!canUseDom()) {
- return;
- }
- if (mergedLock.value) {
- const scrollbarSize = getScrollBarSize();
- const isOverflow = isBodyOverflowing();
-
- updateCSS(
- `
-html body {
- overflow-y: hidden;
- ${isOverflow ? `width: calc(100% - ${scrollbarSize}px);` : ''}
-}`,
- id,
- );
- } else {
- removeCSS(id);
- }
- onClear(() => {
- removeCSS(id);
- });
- },
- { flush: 'post' },
- );
-}
diff --git a/components/_util/hooks/useState.ts b/components/_util/hooks/useState.ts
deleted file mode 100644
index 5276ab44a..000000000
--- a/components/_util/hooks/useState.ts
+++ /dev/null
@@ -1,17 +0,0 @@
-import type { Ref } from 'vue';
-import { ref } from 'vue';
-
-export default function useState>(
- defaultStateValue?: T | (() => T),
-): [R, (val: T) => void] {
- const initValue: T =
- typeof defaultStateValue === 'function' ? (defaultStateValue as any)() : defaultStateValue;
-
- const innerValue = ref(initValue) as Ref;
-
- function triggerChange(newValue: T) {
- innerValue.value = newValue;
- }
-
- return [innerValue as unknown as R, triggerChange];
-}
diff --git a/components/_util/isNumeric.ts b/components/_util/isNumeric.ts
deleted file mode 100644
index 2545ed60f..000000000
--- a/components/_util/isNumeric.ts
+++ /dev/null
@@ -1,5 +0,0 @@
-const isNumeric = (value: any): boolean => {
- return !isNaN(parseFloat(value)) && isFinite(value);
-};
-
-export default isNumeric;
diff --git a/components/_util/isValid.ts b/components/_util/isValid.ts
deleted file mode 100644
index c89b176e7..000000000
--- a/components/_util/isValid.ts
+++ /dev/null
@@ -1,4 +0,0 @@
-const isValid = (value: any): boolean => {
- return value !== undefined && value !== null && value !== '';
-};
-export default isValid;
diff --git a/components/_util/isValidValue.ts b/components/_util/isValidValue.ts
deleted file mode 100644
index d83b13f30..000000000
--- a/components/_util/isValidValue.ts
+++ /dev/null
@@ -1,3 +0,0 @@
-export default function (val: any) {
- return val !== undefined && val !== null;
-}
diff --git a/components/_util/json2mq.ts b/components/_util/json2mq.ts
deleted file mode 100644
index f384396db..000000000
--- a/components/_util/json2mq.ts
+++ /dev/null
@@ -1,60 +0,0 @@
-/**
- * source by `json2mq`
- * https://github.com/akiran/json2mq.git
- */
-
-const camel2hyphen = function (str: string) {
- return str
- .replace(/[A-Z]/g, function (match) {
- return '-' + match.toLowerCase();
- })
- .toLowerCase();
-};
-
-const isDimension = function (feature: string) {
- const re = /[height|width]$/;
- return re.test(feature);
-};
-
-const obj2mq = function (obj: { [x: string]: any }) {
- let mq = '';
- const features = Object.keys(obj);
- features.forEach(function (feature, index) {
- let value = obj[feature];
- feature = camel2hyphen(feature);
- // Add px to dimension features
- if (isDimension(feature) && typeof value === 'number') {
- value = value + 'px';
- }
- if (value === true) {
- mq += feature;
- } else if (value === false) {
- mq += 'not ' + feature;
- } else {
- mq += '(' + feature + ': ' + value + ')';
- }
- if (index < features.length - 1) {
- mq += ' and ';
- }
- });
- return mq;
-};
-
-export default function (query: any[]) {
- let mq = '';
- if (typeof query === 'string') {
- return query;
- }
- // Handling array of media queries
- if (query instanceof Array) {
- query.forEach(function (q, index) {
- mq += obj2mq(q);
- if (index < query.length - 1) {
- mq += ', ';
- }
- });
- return mq;
- }
- // Handling single media query
- return obj2mq(query);
-}
diff --git a/components/_util/omit.ts b/components/_util/omit.ts
deleted file mode 100644
index 3388fd122..000000000
--- a/components/_util/omit.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-function omit(obj: T, fields: K[]): Omit {
- // eslint-disable-next-line prefer-object-spread
- const shallowCopy = Object.assign({}, obj);
- for (let i = 0; i < fields.length; i += 1) {
- const key = fields[i];
- delete shallowCopy[key];
- }
- return shallowCopy;
-}
-export default omit;
diff --git a/components/_util/pickAttrs.ts b/components/_util/pickAttrs.ts
deleted file mode 100644
index 54dc00c1d..000000000
--- a/components/_util/pickAttrs.ts
+++ /dev/null
@@ -1,75 +0,0 @@
-const attributes = `accept acceptcharset accesskey action allowfullscreen allowtransparency
-alt async autocomplete autofocus autoplay capture cellpadding cellspacing challenge
-charset checked classid classname colspan cols content contenteditable contextmenu
-controls coords crossorigin data datetime default defer dir disabled download draggable
-enctype form formaction formenctype formmethod formnovalidate formtarget frameborder
-headers height hidden high href hreflang htmlfor for httpequiv icon id inputmode integrity
-is keyparams keytype kind label lang list loop low manifest marginheight marginwidth max maxlength media
-mediagroup method min minlength multiple muted name novalidate nonce open
-optimum pattern placeholder poster preload radiogroup readonly rel required
-reversed role rowspan rows sandbox scope scoped scrolling seamless selected
-shape size sizes span spellcheck src srcdoc srclang srcset start step style
-summary tabindex target title type usemap value width wmode wrap`;
-
-const eventsName = `onCopy onCut onPaste onCompositionend onCompositionstart onCompositionupdate onKeydown
- onKeypress onKeyup onFocus onBlur onChange onInput onSubmit onClick onContextmenu onDoubleclick onDblclick
- onDrag onDragend onDragenter onDragexit onDragleave onDragover onDragstart onDrop onMousedown
- onMouseenter onMouseleave onMousemove onMouseout onMouseover onMouseup onSelect onTouchcancel
- onTouchend onTouchmove onTouchstart onTouchstartPassive onTouchmovePassive onScroll onWheel onAbort onCanplay onCanplaythrough
- onDurationchange onEmptied onEncrypted onEnded onError onLoadeddata onLoadedmetadata
- onLoadstart onPause onPlay onPlaying onProgress onRatechange onSeeked onSeeking onStalled onSuspend onTimeupdate onVolumechange onWaiting onLoad onError`;
-
-const propList = `${attributes} ${eventsName}`.split(/[\s\n]+/);
-
-/* eslint-enable max-len */
-const ariaPrefix = 'aria-';
-const dataPrefix = 'data-';
-
-function match(key: string, prefix: string) {
- return key.indexOf(prefix) === 0;
-}
-
-export interface PickConfig {
- aria?: boolean;
- data?: boolean;
- attr?: boolean;
-}
-
-/**
- * Picker props from exist props with filter
- * @param props Passed props
- * @param ariaOnly boolean | { aria?: boolean; data?: boolean; attr?: boolean; } filter config
- */
-export default function pickAttrs(props: object, ariaOnly: boolean | PickConfig = false) {
- let mergedConfig;
- if (ariaOnly === false) {
- mergedConfig = {
- aria: true,
- data: true,
- attr: true,
- };
- } else if (ariaOnly === true) {
- mergedConfig = {
- aria: true,
- };
- } else {
- mergedConfig = {
- ...ariaOnly,
- };
- }
-
- const attrs = {};
- Object.keys(props).forEach(key => {
- if (
- // Aria
- (mergedConfig.aria && (key === 'role' || match(key, ariaPrefix))) ||
- // Data
- (mergedConfig.data && match(key, dataPrefix)) ||
- // Attr
- (mergedConfig.attr && (propList.includes(key) || propList.includes(key.toLowerCase())))
- ) {
- attrs[key] = props[key];
- }
- });
- return attrs;
-}
diff --git a/components/_util/placements.ts b/components/_util/placements.ts
deleted file mode 100644
index c96ff90ee..000000000
--- a/components/_util/placements.ts
+++ /dev/null
@@ -1,111 +0,0 @@
-import { placements } from '../vc-tooltip/src/placements';
-
-const autoAdjustOverflowEnabled = {
- adjustX: 1,
- adjustY: 1,
-};
-
-const autoAdjustOverflowDisabled = {
- adjustX: 0,
- adjustY: 0,
-};
-
-const targetOffset = [0, 0];
-
-export interface AdjustOverflow {
- adjustX?: 0 | 1;
- adjustY?: 0 | 1;
-}
-
-export interface PlacementsConfig {
- arrowWidth?: number;
- horizontalArrowShift?: number;
- verticalArrowShift?: number;
- arrowPointAtCenter?: boolean;
- autoAdjustOverflow?: boolean | AdjustOverflow;
-}
-
-export function getOverflowOptions(autoAdjustOverflow?: boolean | AdjustOverflow) {
- if (typeof autoAdjustOverflow === 'boolean') {
- return autoAdjustOverflow ? autoAdjustOverflowEnabled : autoAdjustOverflowDisabled;
- }
- return {
- ...autoAdjustOverflowDisabled,
- ...autoAdjustOverflow,
- };
-}
-
-export default function getPlacements(config: PlacementsConfig) {
- const {
- arrowWidth = 4,
- horizontalArrowShift = 16,
- verticalArrowShift = 8,
- autoAdjustOverflow,
- arrowPointAtCenter,
- } = config;
- const placementMap = {
- left: {
- points: ['cr', 'cl'],
- offset: [-4, 0],
- },
- right: {
- points: ['cl', 'cr'],
- offset: [4, 0],
- },
- top: {
- points: ['bc', 'tc'],
- offset: [0, -4],
- },
- bottom: {
- points: ['tc', 'bc'],
- offset: [0, 4],
- },
- topLeft: {
- points: ['bl', 'tc'],
- offset: [-(horizontalArrowShift + arrowWidth), -4],
- },
- leftTop: {
- points: ['tr', 'cl'],
- offset: [-4, -(verticalArrowShift + arrowWidth)],
- },
- topRight: {
- points: ['br', 'tc'],
- offset: [horizontalArrowShift + arrowWidth, -4],
- },
- rightTop: {
- points: ['tl', 'cr'],
- offset: [4, -(verticalArrowShift + arrowWidth)],
- },
- bottomRight: {
- points: ['tr', 'bc'],
- offset: [horizontalArrowShift + arrowWidth, 4],
- },
- rightBottom: {
- points: ['bl', 'cr'],
- offset: [4, verticalArrowShift + arrowWidth],
- },
- bottomLeft: {
- points: ['tl', 'bc'],
- offset: [-(horizontalArrowShift + arrowWidth), 4],
- },
- leftBottom: {
- points: ['br', 'cl'],
- offset: [-4, verticalArrowShift + arrowWidth],
- },
- };
- Object.keys(placementMap).forEach(key => {
- placementMap[key] = arrowPointAtCenter
- ? {
- ...placementMap[key],
- overflow: getOverflowOptions(autoAdjustOverflow),
- targetOffset,
- }
- : {
- ...placements[key],
- overflow: getOverflowOptions(autoAdjustOverflow),
- };
-
- placementMap[key].ignoreShake = true;
- });
- return placementMap;
-}
diff --git a/components/_util/props-util/index.ts b/components/_util/props-util/index.ts
deleted file mode 100644
index 85d694af8..000000000
--- a/components/_util/props-util/index.ts
+++ /dev/null
@@ -1,285 +0,0 @@
-import classNames from '../classNames';
-import { isVNode, Fragment, Comment, Text } from 'vue';
-import { camelize, hyphenate, isOn, resolvePropValue } from '../util';
-import isValid from '../isValid';
-import initDefaultProps from './initDefaultProps';
-import type { VueInstance } from '../hooks/_vueuse/unrefElement';
-// function getType(fn) {
-// const match = fn && fn.toString().match(/^\s*function (\w+)/);
-// return match ? match[1] : '';
-// }
-
-const splitAttrs = (attrs: any) => {
- const allAttrs = Object.keys(attrs);
- const eventAttrs: Record = {};
- const onEvents: Record = {};
- const extraAttrs: Record = {};
- for (let i = 0, l = allAttrs.length; i < l; i++) {
- const key = allAttrs[i];
- if (isOn(key)) {
- eventAttrs[key[2].toLowerCase() + key.slice(3)] = attrs[key];
- onEvents[key] = attrs[key];
- } else {
- extraAttrs[key] = attrs[key];
- }
- }
- return { onEvents, events: eventAttrs, extraAttrs };
-};
-const parseStyleText = (cssText = '', camel = false) => {
- const res = {};
- const listDelimiter = /;(?![^(]*\))/g;
- const propertyDelimiter = /:(.+)/;
- if (typeof cssText === 'object') return cssText;
- cssText.split(listDelimiter).forEach(function (item) {
- if (item) {
- const tmp = item.split(propertyDelimiter);
- if (tmp.length > 1) {
- const k = camel ? camelize(tmp[0].trim()) : tmp[0].trim();
- res[k] = tmp[1].trim();
- }
- }
- });
- return res;
-};
-
-const hasProp = (instance: any, prop: string) => {
- return instance[prop] !== undefined;
-};
-
-export const skipFlattenKey = Symbol('skipFlatten');
-const flattenChildren = (children = [], filterEmpty = true) => {
- const temp = Array.isArray(children) ? children : [children];
- const res = [];
- temp.forEach(child => {
- if (Array.isArray(child)) {
- res.push(...flattenChildren(child, filterEmpty));
- } else if (child && child.type === Fragment) {
- if (child.key === skipFlattenKey) {
- res.push(child);
- } else {
- res.push(...flattenChildren(child.children, filterEmpty));
- }
- } else if (child && isVNode(child)) {
- if (filterEmpty && !isEmptyElement(child)) {
- res.push(child);
- } else if (!filterEmpty) {
- res.push(child);
- }
- } else if (isValid(child)) {
- res.push(child);
- }
- });
- return res;
-};
-
-const getSlot = (self: any, name = 'default', options = {}) => {
- if (isVNode(self)) {
- if (self.type === Fragment) {
- return name === 'default' ? flattenChildren(self.children as any[]) : [];
- } else if (self.children && self.children[name]) {
- return flattenChildren(self.children[name](options));
- } else {
- return [];
- }
- } else {
- const res = self.$slots[name] && self.$slots[name](options);
- return flattenChildren(res);
- }
-};
-
-const findDOMNode = (instance: any) => {
- let node = instance?.vnode?.el || (instance && (instance.$el || instance));
- while (node && !node.tagName) {
- node = node.nextSibling;
- }
- return node;
-};
-const getOptionProps = (instance: VueInstance) => {
- const res = {};
- if (instance.$ && instance.$.vnode) {
- const props = instance.$.vnode.props || {};
- Object.keys(instance.$props).forEach(k => {
- const v = instance.$props[k];
- const hyphenateKey = hyphenate(k);
- if (v !== undefined || hyphenateKey in props) {
- res[k] = v; // 直接取 $props[k]
- }
- });
- } else if (isVNode(instance) && typeof instance.type === 'object') {
- const originProps = instance.props || {};
- const props = {};
- Object.keys(originProps).forEach(key => {
- props[camelize(key)] = originProps[key];
- });
- const options = (instance.type as any).props || {};
- Object.keys(options).forEach(k => {
- const v = resolvePropValue(options, props, k, props[k]);
- if (v !== undefined || k in props) {
- res[k] = v;
- }
- });
- }
- return res;
-};
-const getComponent = (instance: any, prop = 'default', options = instance, execute = true) => {
- let com = undefined;
- if (instance.$) {
- const temp = instance[prop];
- if (temp !== undefined) {
- return typeof temp === 'function' && execute ? temp(options) : temp;
- } else {
- com = instance.$slots[prop];
- com = execute && com ? com(options) : com;
- }
- } else if (isVNode(instance)) {
- const temp = instance.props && instance.props[prop];
- if (temp !== undefined && instance.props !== null) {
- return typeof temp === 'function' && execute ? temp(options) : temp;
- } else if (instance.type === Fragment) {
- com = instance.children;
- } else if (instance.children && instance.children[prop]) {
- com = instance.children[prop];
- com = execute && com ? com(options) : com;
- }
- }
- if (Array.isArray(com)) {
- com = flattenChildren(com);
- com = com.length === 1 ? com[0] : com;
- com = com.length === 0 ? undefined : com;
- }
- return com;
-};
-
-const getKey = (ele: any) => {
- const key = ele.key;
- return key;
-};
-
-export function getEvents(ele: any = {}, on = true) {
- let props = {};
- if (ele.$) {
- props = { ...props, ...ele.$attrs };
- } else {
- props = { ...props, ...ele.props };
- }
- return splitAttrs(props)[on ? 'onEvents' : 'events'];
-}
-
-export function getClass(ele: any) {
- const props = (isVNode(ele) ? ele.props : ele.$attrs) || {};
- const tempCls = props.class || {};
- let cls = {};
- if (typeof tempCls === 'string') {
- tempCls.split(' ').forEach(c => {
- cls[c.trim()] = true;
- });
- } else if (Array.isArray(tempCls)) {
- classNames(tempCls)
- .split(' ')
- .forEach(c => {
- cls[c.trim()] = true;
- });
- } else {
- cls = { ...cls, ...tempCls };
- }
- return cls;
-}
-export function getStyle(ele: any, camel?: boolean) {
- const props = (isVNode(ele) ? ele.props : ele.$attrs) || {};
- let style = props.style || {};
- if (typeof style === 'string') {
- style = parseStyleText(style, camel);
- } else if (camel && style) {
- // 驼峰化
- const res = {};
- Object.keys(style).forEach(k => (res[camelize(k)] = style[k]));
- return res;
- }
- return style;
-}
-
-export function getComponentName(opts: any) {
- return opts && (opts.Ctor.options.name || opts.tag);
-}
-
-export function isFragment(c: any) {
- return c.length === 1 && c[0].type === Fragment;
-}
-
-export function isEmptyContent(c: any) {
- return c === undefined || c === null || c === '' || (Array.isArray(c) && c.length === 0);
-}
-
-export function isEmptyElement(c: any) {
- return (
- c &&
- (c.type === Comment ||
- (c.type === Fragment && c.children.length === 0) ||
- (c.type === Text && c.children.trim() === ''))
- );
-}
-
-export function isEmptySlot(c: any) {
- return !c || c().every(isEmptyElement);
-}
-
-export function isStringElement(c: any) {
- return c && c.type === Text;
-}
-
-export function filterEmpty(children = []) {
- const res = [];
- children.forEach(child => {
- if (Array.isArray(child)) {
- res.push(...child);
- } else if (child?.type === Fragment) {
- res.push(...filterEmpty(child.children));
- } else {
- res.push(child);
- }
- });
- return res.filter(c => !isEmptyElement(c));
-}
-
-export function filterEmptyWithUndefined(children: any[]) {
- if (children) {
- const coms = filterEmpty(children);
- return coms.length ? coms : undefined;
- } else {
- return children;
- }
-}
-
-function isValidElement(element: any) {
- if (Array.isArray(element) && element.length === 1) {
- element = element[0];
- }
- return element && element.__v_isVNode && typeof element.type !== 'symbol'; // remove text node
-}
-
-function getPropsSlot(slots: any, props: any, prop = 'default') {
- return props[prop] ?? slots[prop]?.();
-}
-
-export const getTextFromElement = (ele: any) => {
- if (isValidElement(ele) && isStringElement(ele[0])) {
- return ele[0].children;
- }
- return ele;
-};
-export {
- splitAttrs,
- hasProp,
- getOptionProps,
- getComponent,
- getKey,
- parseStyleText,
- initDefaultProps,
- isValidElement,
- camelize,
- getSlot,
- findDOMNode,
- flattenChildren,
- getPropsSlot,
-};
-export default hasProp;
diff --git a/components/_util/props-util/initDefaultProps.ts b/components/_util/props-util/initDefaultProps.ts
deleted file mode 100644
index 4bdc319b2..000000000
--- a/components/_util/props-util/initDefaultProps.ts
+++ /dev/null
@@ -1,34 +0,0 @@
-import type { PropType } from 'vue';
-import type { VueTypeValidableDef, VueTypeDef } from 'vue-types';
-
-const initDefaultProps = (
- types: T,
- defaultProps: {
- [K in keyof T]?: T[K] extends VueTypeValidableDef
- ? U
- : T[K] extends VueTypeDef
- ? U
- : T[K] extends { type: PropType }
- ? U
- : any;
- },
-): T => {
- const propTypes: T = { ...types };
- Object.keys(defaultProps).forEach(k => {
- const prop = propTypes[k] as VueTypeValidableDef;
- if (prop) {
- if (prop.type || prop.default) {
- prop.default = defaultProps[k];
- } else if (prop.def) {
- prop.def(defaultProps[k]);
- } else {
- propTypes[k] = { type: prop, default: defaultProps[k] };
- }
- } else {
- throw new Error(`not have ${k} prop`);
- }
- });
- return propTypes;
-};
-
-export default initDefaultProps;
diff --git a/components/_util/raf.ts b/components/_util/raf.ts
deleted file mode 100644
index 160c73c80..000000000
--- a/components/_util/raf.ts
+++ /dev/null
@@ -1,47 +0,0 @@
-let raf = (callback: FrameRequestCallback) => setTimeout(callback, 16) as any;
-let caf = (num: number) => clearTimeout(num);
-
-if (typeof window !== 'undefined' && 'requestAnimationFrame' in window) {
- raf = (callback: FrameRequestCallback) => window.requestAnimationFrame(callback);
- caf = (handle: number) => window.cancelAnimationFrame(handle);
-}
-
-let rafUUID = 0;
-const rafIds = new Map();
-
-function cleanup(id: number) {
- rafIds.delete(id);
-}
-
-export default function wrapperRaf(callback: () => void, times = 1): number {
- rafUUID += 1;
- const id = rafUUID;
-
- function callRef(leftTimes: number) {
- if (leftTimes === 0) {
- // Clean up
- cleanup(id);
-
- // Trigger
- callback();
- } else {
- // Next raf
- const realId = raf(() => {
- callRef(leftTimes - 1);
- });
-
- // Bind real raf id
- rafIds.set(id, realId);
- }
- }
-
- callRef(times);
-
- return id;
-}
-
-wrapperRaf.cancel = (id: number) => {
- const realId = rafIds.get(id);
- cleanup(realId);
- return caf(realId);
-};
diff --git a/components/_util/reactivePick.ts b/components/_util/reactivePick.ts
deleted file mode 100644
index c4164470e..000000000
--- a/components/_util/reactivePick.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-import type { UnwrapRef } from 'vue';
-import { reactive, toRef } from 'vue';
-import fromPairs from 'lodash-es/fromPairs';
-
-/**
- * Reactively pick fields from a reactive object
- *
- * @see https://vueuse.js.org/reactivePick
- */
-export function reactivePick(
- obj: T,
- ...keys: K[]
-): { [S in K]: UnwrapRef } {
- return reactive(fromPairs(keys.map(k => [k, toRef(obj, k)]))) as any;
-}
diff --git a/components/_util/requestAnimationTimeout.ts b/components/_util/requestAnimationTimeout.ts
deleted file mode 100644
index f82f19fed..000000000
--- a/components/_util/requestAnimationTimeout.ts
+++ /dev/null
@@ -1,23 +0,0 @@
-import getRequestAnimationFrame, {
- cancelRequestAnimationFrame as caf,
-} from './getRequestAnimationFrame';
-const raf = getRequestAnimationFrame();
-
-export const cancelAnimationTimeout = frame => caf(frame.id);
-
-export const requestAnimationTimeout = (callback, delay = 0) => {
- const start = Date.now();
- function timeout() {
- if (Date.now() - start >= delay) {
- callback.call();
- } else {
- frame.id = raf(timeout);
- }
- }
-
- const frame = {
- id: raf(timeout),
- };
-
- return frame;
-};
diff --git a/components/_util/responsiveObserve.ts b/components/_util/responsiveObserve.ts
deleted file mode 100644
index 11bd47db2..000000000
--- a/components/_util/responsiveObserve.ts
+++ /dev/null
@@ -1,85 +0,0 @@
-import { computed } from 'vue';
-import type { GlobalToken } from '../theme/interface';
-import { useToken } from '../theme/internal';
-
-export type Breakpoint = 'xxxl' | 'xxl' | 'xl' | 'lg' | 'md' | 'sm' | 'xs';
-export type BreakpointMap = Record;
-export type ScreenMap = Partial>;
-export type ScreenSizeMap = Partial>;
-
-export const responsiveArray: Breakpoint[] = ['xxxl', 'xxl', 'xl', 'lg', 'md', 'sm', 'xs'];
-type SubscribeFunc = (screens: ScreenMap) => void;
-
-const getResponsiveMap = (token: GlobalToken): BreakpointMap => ({
- xs: `(max-width: ${token.screenXSMax}px)`,
- sm: `(min-width: ${token.screenSM}px)`,
- md: `(min-width: ${token.screenMD}px)`,
- lg: `(min-width: ${token.screenLG}px)`,
- xl: `(min-width: ${token.screenXL}px)`,
- xxl: `(min-width: ${token.screenXXL}px)`,
- xxxl: `{min-width: ${token.screenXXXL}px}`,
-});
-
-export default function useResponsiveObserver() {
- const [, token] = useToken();
-
- return computed(() => {
- const responsiveMap: BreakpointMap = getResponsiveMap(token.value);
- const subscribers = new Map();
- let subUid = -1;
- let screens = {};
-
- return {
- matchHandlers: {} as {
- [prop: string]: {
- mql: MediaQueryList;
- listener: ((this: MediaQueryList, ev: MediaQueryListEvent) => any) | null;
- };
- },
- dispatch(pointMap: ScreenMap) {
- screens = pointMap;
- subscribers.forEach(func => func(screens));
- return subscribers.size >= 1;
- },
- subscribe(func: SubscribeFunc): number {
- if (!subscribers.size) this.register();
- subUid += 1;
- subscribers.set(subUid, func);
- func(screens);
- return subUid;
- },
- unsubscribe(paramToken: number) {
- subscribers.delete(paramToken);
- if (!subscribers.size) this.unregister();
- },
- unregister() {
- Object.keys(responsiveMap).forEach((screen: string) => {
- const matchMediaQuery = responsiveMap[screen];
- const handler = this.matchHandlers[matchMediaQuery];
- handler?.mql.removeListener(handler?.listener);
- });
- subscribers.clear();
- },
- register() {
- Object.keys(responsiveMap).forEach((screen: string) => {
- const matchMediaQuery = responsiveMap[screen];
- const listener = ({ matches }: { matches: boolean }) => {
- this.dispatch({
- ...screens,
- [screen]: matches,
- });
- };
- const mql = window.matchMedia(matchMediaQuery);
- mql.addListener(listener);
- this.matchHandlers[matchMediaQuery] = {
- mql,
- listener,
- };
-
- listener(mql);
- });
- },
- responsiveMap,
- };
- });
-}
diff --git a/components/_util/scrollTo.ts b/components/_util/scrollTo.ts
deleted file mode 100644
index 59bb1436a..000000000
--- a/components/_util/scrollTo.ts
+++ /dev/null
@@ -1,38 +0,0 @@
-import raf from './raf';
-import { easeInOutCubic } from './easings';
-import getScroll, { isWindow } from './getScroll';
-
-interface ScrollToOptions {
- /** Scroll container, default as window */
- getContainer?: () => HTMLElement | Window | Document;
- /** Scroll end callback */
- callback?: () => any;
- /** Animation duration, default as 450 */
- duration?: number;
-}
-
-export default function scrollTo(y: number, options: ScrollToOptions = {}) {
- const { getContainer = () => window, callback, duration = 450 } = options;
- const container = getContainer();
- const scrollTop = getScroll(container);
- const startTime = Date.now();
-
- const frameFunc = () => {
- const timestamp = Date.now();
- const time = timestamp - startTime;
- const nextScrollTop = easeInOutCubic(time > duration ? duration : time, scrollTop, y, duration);
- if (isWindow(container)) {
- (container as Window).scrollTo(window.scrollX, nextScrollTop);
- } else if (container instanceof Document) {
- (container as Document).documentElement.scrollTop = nextScrollTop;
- } else {
- (container as HTMLElement).scrollTop = nextScrollTop;
- }
- if (time < duration) {
- raf(frameFunc);
- } else if (typeof callback === 'function') {
- callback();
- }
- };
- raf(frameFunc);
-}
diff --git a/components/_util/setStyle.ts b/components/_util/setStyle.ts
deleted file mode 100644
index c12e8c85f..000000000
--- a/components/_util/setStyle.ts
+++ /dev/null
@@ -1,30 +0,0 @@
-import type { CSSProperties } from 'vue';
-
-/**
- * Easy to set element style, return previous style
- * IE browser compatible(IE browser doesn't merge overflow style, need to set it separately)
- * https://github.com/ant-design/ant-design/issues/19393
- *
- */
-export interface SetStyleOptions {
- element?: HTMLElement;
-}
-function setStyle(style: CSSProperties, options: SetStyleOptions = {}): CSSProperties {
- const { element = document.body } = options;
- const oldStyle: CSSProperties = {};
-
- const styleKeys = Object.keys(style);
-
- // IE browser compatible
- styleKeys.forEach(key => {
- oldStyle[key] = element.style[key];
- });
-
- styleKeys.forEach(key => {
- element.style[key] = style[key];
- });
-
- return oldStyle;
-}
-
-export default setStyle;
diff --git a/components/_util/shallowequal.ts b/components/_util/shallowequal.ts
deleted file mode 100644
index 9a09cc9b6..000000000
--- a/components/_util/shallowequal.ts
+++ /dev/null
@@ -1,50 +0,0 @@
-import { toRaw } from 'vue';
-
-function shallowEqual(objA: any, objB: any, compare?: any, compareContext?: any) {
- let ret = compare ? compare.call(compareContext, objA, objB) : void 0;
-
- if (ret !== void 0) {
- return !!ret;
- }
-
- if (objA === objB) {
- return true;
- }
-
- if (typeof objA !== 'object' || !objA || typeof objB !== 'object' || !objB) {
- return false;
- }
-
- const keysA = Object.keys(objA);
- const keysB = Object.keys(objB);
-
- if (keysA.length !== keysB.length) {
- return false;
- }
-
- const bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB);
-
- // Test for A's keys different from B.
- for (let idx = 0; idx < keysA.length; idx++) {
- const key = keysA[idx];
-
- if (!bHasOwnProperty(key)) {
- return false;
- }
-
- const valueA = objA[key];
- const valueB = objB[key];
-
- ret = compare ? compare.call(compareContext, valueA, valueB, key) : void 0;
-
- if (ret === false || (ret === void 0 && valueA !== valueB)) {
- return false;
- }
- }
-
- return true;
-}
-
-export default function (value: any, other: any) {
- return shallowEqual(toRaw(value), toRaw(other));
-}
diff --git a/components/_util/static-style-extract/__tests__/__snapshots__/index.test.js.snap b/components/_util/static-style-extract/__tests__/__snapshots__/index.test.js.snap
deleted file mode 100644
index 0c5c3c60c..000000000
--- a/components/_util/static-style-extract/__tests__/__snapshots__/index.test.js.snap
+++ /dev/null
@@ -1,3 +0,0 @@
-// Jest Snapshot v1, https://goo.gl/fbAQLP
-
-exports[`Static-Style-Extract should extract static styles with customTheme and customStyle 1`] = `".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;}a{color:#1668dc;text-decoration:none;background-color:transparent;outline:none;cursor:pointer;transition:color 0.3s;-webkit-text-decoration-skip:objects;}a:hover{color:#15417e;}a:active{color:#1554ad;}a:active,a:hover{text-decoration:none;outline:0;}a:focus{text-decoration:none;outline:0;}a[disabled]{color:rgba(255, 255, 255, 0.25);cursor:not-allowed;}[class^=\\"ant-affix\\"],[class*=\\" ant-affix\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-affix\\"]::before,[class*=\\" ant-affix\\"]::before,[class^=\\"ant-affix\\"]::after,[class*=\\" ant-affix\\"]::after{box-sizing:border-box;}[class^=\\"ant-affix\\"] [class^=\\"ant-affix\\"],[class*=\\" ant-affix\\"] [class^=\\"ant-affix\\"],[class^=\\"ant-affix\\"] [class*=\\" ant-affix\\"],[class*=\\" ant-affix\\"] [class*=\\" ant-affix\\"]{box-sizing:border-box;}[class^=\\"ant-affix\\"] [class^=\\"ant-affix\\"]::before,[class*=\\" ant-affix\\"] [class^=\\"ant-affix\\"]::before,[class^=\\"ant-affix\\"] [class*=\\" ant-affix\\"]::before,[class*=\\" ant-affix\\"] [class*=\\" ant-affix\\"]::before,[class^=\\"ant-affix\\"] [class^=\\"ant-affix\\"]::after,[class*=\\" ant-affix\\"] [class^=\\"ant-affix\\"]::after,[class^=\\"ant-affix\\"] [class*=\\" ant-affix\\"]::after,[class*=\\" ant-affix\\"] [class*=\\" ant-affix\\"]::after{box-sizing:border-box;}.ant-affix{position:fixed;z-index:10;}[class^=\\"ant-anchor\\"],[class*=\\" ant-anchor\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-anchor\\"]::before,[class*=\\" ant-anchor\\"]::before,[class^=\\"ant-anchor\\"]::after,[class*=\\" ant-anchor\\"]::after{box-sizing:border-box;}[class^=\\"ant-anchor\\"] [class^=\\"ant-anchor\\"],[class*=\\" ant-anchor\\"] [class^=\\"ant-anchor\\"],[class^=\\"ant-anchor\\"] [class*=\\" ant-anchor\\"],[class*=\\" ant-anchor\\"] [class*=\\" ant-anchor\\"]{box-sizing:border-box;}[class^=\\"ant-anchor\\"] [class^=\\"ant-anchor\\"]::before,[class*=\\" ant-anchor\\"] [class^=\\"ant-anchor\\"]::before,[class^=\\"ant-anchor\\"] [class*=\\" ant-anchor\\"]::before,[class*=\\" ant-anchor\\"] [class*=\\" ant-anchor\\"]::before,[class^=\\"ant-anchor\\"] [class^=\\"ant-anchor\\"]::after,[class*=\\" ant-anchor\\"] [class^=\\"ant-anchor\\"]::after,[class^=\\"ant-anchor\\"] [class*=\\" ant-anchor\\"]::after,[class*=\\" ant-anchor\\"] [class*=\\" ant-anchor\\"]::after{box-sizing:border-box;}.ant-anchor-wrapper{margin-block-start:-4px;padding-block-start:4px;background-color:transparent;}.ant-anchor-wrapper .ant-anchor{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:relative;padding-inline-start:2px;}.ant-anchor-wrapper .ant-anchor .ant-anchor-link{padding-block:4px;padding-inline:16px 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:3px;color:rgba(255, 255, 255, 0.85);transition:all 0.3s;}.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:#037003;}.ant-anchor-wrapper .ant-anchor .ant-anchor-link .ant-anchor-link{padding-block:2px;}.ant-anchor-wrapper:not(.ant-anchor-wrapper-horizontal) .ant-anchor::before{position:absolute;left:0;top:0;height:100%;border-inline-start:2px solid rgba(253, 253, 253, 0.12);content:\\" \\";}.ant-anchor-wrapper:not(.ant-anchor-wrapper-horizontal) .ant-anchor .ant-anchor-ink{position:absolute;left:0;display:none;transform:translateY(-50%);transition:top 0.3s ease-in-out;width:2px;background-color:#037003;}.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:1px solid rgba(253, 253, 253, 0.12);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 0.3s ease-in-out,width 0.3s ease-in-out;height:2px;background-color:#037003;}[class^=\\"ant-select\\"],[class*=\\" ant-select\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-select\\"]::before,[class*=\\" ant-select\\"]::before,[class^=\\"ant-select\\"]::after,[class*=\\" ant-select\\"]::after{box-sizing:border-box;}[class^=\\"ant-select\\"] [class^=\\"ant-select\\"],[class*=\\" ant-select\\"] [class^=\\"ant-select\\"],[class^=\\"ant-select\\"] [class*=\\" ant-select\\"],[class*=\\" ant-select\\"] [class*=\\" ant-select\\"]{box-sizing:border-box;}[class^=\\"ant-select\\"] [class^=\\"ant-select\\"]::before,[class*=\\" ant-select\\"] [class^=\\"ant-select\\"]::before,[class^=\\"ant-select\\"] [class*=\\" ant-select\\"]::before,[class*=\\" ant-select\\"] [class*=\\" ant-select\\"]::before,[class^=\\"ant-select\\"] [class^=\\"ant-select\\"]::after,[class*=\\" ant-select\\"] [class^=\\"ant-select\\"]::after,[class^=\\"ant-select\\"] [class*=\\" ant-select\\"]::after,[class*=\\" ant-select\\"] [class*=\\" ant-select\\"]::after{box-sizing:border-box;}.ant-select-borderless .ant-select-selector{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important;}.ant-select.ant-select-in-form-item{width:100%;}.ant-select{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:relative;display:inline-block;cursor:pointer;}.ant-select:not(.ant-select-customize-input) .ant-select-selector{position:relative;background-color:#141414;border:1px solid #424242;transition:all 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);}.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;}.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector{color:rgba(255, 255, 255, 0.25);background:rgba(255, 255, 255, 0.08);cursor:not-allowed;}.ant-select-multiple.ant-select-disabled.ant-select:not(.ant-select-customize-input) .ant-select-selector{background:rgba(255, 255, 255, 0.08);}.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;}.ant-select:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input::-webkit-search-cancel-button{display:none;-webkit-appearance:none;}.ant-select .ant-select-selection-item{flex:1;font-weight:normal;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}.ant-select .ant-select-selection-placeholder{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:1;color:rgba(255, 255, 255, 0.25);pointer-events:none;}.ant-select .ant-select-arrow{display:flex;align-items:center;color:rgba(255, 255, 255, 0.25);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:11px;height:12px;margin-top:-6px;font-size:12px;pointer-events:none;}.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 0.3s;}.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-clear{position:absolute;top:50%;inset-inline-start:auto;inset-inline-end:11px;z-index:1;display:inline-block;width:12px;height:12px;margin-top:-6px;color:rgba(255, 255, 255, 0.25);font-size:12px;font-style:normal;line-height:1;text-align:center;text-transform:none;background:#141414;cursor:pointer;opacity:0;transition:color 0.2s ease,opacity 0.3s ease;text-rendering:auto;}.ant-select .ant-select-clear:before{display:block;}.ant-select .ant-select-clear:hover{color:rgba(255, 255, 255, 0.45);}.ant-select:hover .ant-select-clear{opacity:1;}.ant-select-has-feedback .ant-select-clear{inset-inline-end:29px;}.ant-select-single{font-size:14px;}.ant-select-single .ant-select-selector{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';display:flex;border-radius:6px;}.ant-select-single .ant-select-selector .ant-select-selection-search{position:absolute;top:0;inset-inline-start:11px;inset-inline-end:11px;bottom:0;}.ant-select-single .ant-select-selector .ant-select-selection-search-input{width:100%;}.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-single .ant-select-selector .ant-select-selection-placeholder{padding:0;line-height:30px;transition:all 0.3s;}@supports (-moz-appearance: meterbar){.ant-select-single .ant-select-selector .ant-select-selection-item,.ant-select-single .ant-select-selector .ant-select-selection-placeholder{line-height:30px;}}.ant-select-single .ant-select-selector .ant-select-selection-item{position:relative;user-select:none;}.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:after,.ant-select-single .ant-select-selector .ant-select-selection-placeholder: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-placeholder{padding-inline-end:18px;}.ant-select-single.ant-select-open .ant-select-selection-item{color:rgba(255, 255, 255, 0.25);}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{width:100%;height:32px;padding:0 11px;}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{height:30px;}.ant-select-single:not(.ant-select-customize-input) .ant-select-selector:after{line-height:30px;}.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 11px;}.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:14px;}.ant-select-single.ant-select-sm .ant-select-selector{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';display:flex;border-radius:4px;}.ant-select-single.ant-select-sm .ant-select-selector .ant-select-selection-search{position:absolute;top:0;inset-inline-start:11px;inset-inline-end:11px;bottom:0;}.ant-select-single.ant-select-sm .ant-select-selector .ant-select-selection-search-input{width:100%;}.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{padding:0;line-height:22px;transition:all 0.3s;}@supports (-moz-appearance: meterbar){.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{line-height:22px;}}.ant-select-single.ant-select-sm .ant-select-selector .ant-select-selection-item{position:relative;user-select:none;}.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:after,.ant-select-single.ant-select-sm .ant-select-selector .ant-select-selection-placeholder: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-placeholder{padding-inline-end:18px;}.ant-select-single.ant-select-sm.ant-select-open .ant-select-selection-item{color:rgba(255, 255, 255, 0.25);}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector{width:100%;height:24px;padding:0 11px;}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{height:22px;}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector:after{line-height:22px;}.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 11px;}.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-selection-search{inset-inline-start:7px;inset-inline-end:7px;}.ant-select-single.ant-select-sm:not(.ant-select-customize-input) .ant-select-selector{padding:0 7px;}.ant-select-single.ant-select-sm:not(.ant-select-customize-input).ant-select-show-arrow .ant-select-selection-search{inset-inline-end:28px;}.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:21px;}.ant-select-single.ant-select-lg{font-size:16px;}.ant-select-single.ant-select-lg .ant-select-selector{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:16px;line-height:1.5714285714285714;list-style:none;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';display:flex;border-radius:8px;}.ant-select-single.ant-select-lg .ant-select-selector .ant-select-selection-search{position:absolute;top:0;inset-inline-start:11px;inset-inline-end:11px;bottom:0;}.ant-select-single.ant-select-lg .ant-select-selector .ant-select-selection-search-input{width:100%;}.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{padding:0;line-height:38px;transition:all 0.3s;}@supports (-moz-appearance: meterbar){.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{line-height:38px;}}.ant-select-single.ant-select-lg .ant-select-selector .ant-select-selection-item{position:relative;user-select:none;}.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:after,.ant-select-single.ant-select-lg .ant-select-selector .ant-select-selection-placeholder: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-placeholder{padding-inline-end:20px;}.ant-select-single.ant-select-lg.ant-select-open .ant-select-selection-item{color:rgba(255, 255, 255, 0.25);}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector{width:100%;height:40px;padding:0 11px;}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector .ant-select-selection-search-input{height:38px;}.ant-select-single.ant-select-lg:not(.ant-select-customize-input) .ant-select-selector:after{line-height:38px;}.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 11px;}.ant-select-single.ant-select-lg.ant-select-customize-input .ant-select-selector .ant-select-selection-placeholder:after{display:none;}.ant-select-multiple{font-size:14px;}.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-selector{display:flex;flex-wrap:wrap;align-items:center;padding:1px 4px;border-radius:6px;}.ant-select-show-search.ant-select-multiple .ant-select-selector{cursor:text;}.ant-select-disabled.ant-select-multiple .ant-select-selector{background:rgba(255, 255, 255, 0.08);cursor:not-allowed;}.ant-select-multiple .ant-select-selector:after{display:inline-block;width:0;margin:2px 0;line-height:24px;content:\\"\\\\a0\\";}.ant-select-multiple.ant-select-show-arrow .ant-select-selector,.ant-select-multiple.ant-select-allow-clear .ant-select-selector{padding-inline-end:24px;}.ant-select-multiple .ant-select-selection-item{position:relative;display:flex;flex:none;box-sizing:border-box;max-width:100%;height:24px;margin-top:2px;margin-bottom:2px;line-height:22px;background:rgba(255, 255, 255, 0.12);border:1px solid rgba(253, 253, 253, 0.12);border-radius:4px;cursor:default;transition:font-size 0.3s,line-height 0.3s,height 0.3s;user-select:none;margin-inline-end:4px;padding-inline-start:8px;padding-inline-end:4px;}.ant-select-disabled.ant-select-multiple .ant-select-selection-item{color:rgba(255, 255, 255, 0.25);border-color:#424242;cursor:not-allowed;}.ant-select-multiple .ant-select-selection-item-content{display:inline-block;margin-inline-end:4px;overflow:hidden;white-space:pre;text-overflow:ellipsis;}.ant-select-multiple .ant-select-selection-item-remove{display:inline-block;align-items:center;color:rgba(255, 255, 255, 0.45);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-item-remove >*{line-height:1;}.ant-select-multiple .ant-select-selection-item-remove svg{display:inline-block;}.ant-select-multiple .ant-select-selection-item-remove >.anticon{vertical-align:-0.2em;}.ant-select-multiple .ant-select-selection-item-remove:hover{color:rgba(255, 255, 255, 0.85);}.ant-select-multiple .ant-select-selection-overflow-item+.ant-select-selection-overflow-item .ant-select-selection-search{margin-inline-start:0;}.ant-select-multiple .ant-select-selection-search{display:inline-flex;position:relative;max-width:100%;margin-inline-start:8px;}.ant-select-multiple .ant-select-selection-search-input,.ant-select-multiple .ant-select-selection-search-mirror{height:24px;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:24px;transition:all 0.3s;}.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:11px;inset-inline-end:11px;transform:translateY(-50%);transition:all 0.3s;}.ant-select-multiple.ant-select-sm{font-size:14px;}.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-selector{display:flex;flex-wrap:wrap;align-items:center;padding:1px 4px;border-radius:4px;}.ant-select-show-search.ant-select-multiple.ant-select-sm .ant-select-selector{cursor:text;}.ant-select-disabled.ant-select-multiple.ant-select-sm .ant-select-selector{background:rgba(255, 255, 255, 0.08);cursor:not-allowed;}.ant-select-multiple.ant-select-sm .ant-select-selector:after{display:inline-block;width:0;margin:2px 0;line-height:16px;content:\\"\\\\a0\\";}.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:24px;}.ant-select-multiple.ant-select-sm .ant-select-selection-item{position:relative;display:flex;flex:none;box-sizing:border-box;max-width:100%;height:16px;margin-top:2px;margin-bottom:2px;line-height:14px;background:rgba(255, 255, 255, 0.12);border:1px solid rgba(253, 253, 253, 0.12);border-radius:2px;cursor:default;transition:font-size 0.3s,line-height 0.3s,height 0.3s;user-select:none;margin-inline-end:4px;padding-inline-start:8px;padding-inline-end:4px;}.ant-select-disabled.ant-select-multiple.ant-select-sm .ant-select-selection-item{color:rgba(255, 255, 255, 0.25);border-color:#424242;cursor:not-allowed;}.ant-select-multiple.ant-select-sm .ant-select-selection-item-content{display:inline-block;margin-inline-end:4px;overflow:hidden;white-space:pre;text-overflow:ellipsis;}.ant-select-multiple.ant-select-sm .ant-select-selection-item-remove{display:inline-block;align-items:center;color:rgba(255, 255, 255, 0.45);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-item-remove >*{line-height:1;}.ant-select-multiple.ant-select-sm .ant-select-selection-item-remove svg{display:inline-block;}.ant-select-multiple.ant-select-sm .ant-select-selection-item-remove >.anticon{vertical-align:-0.2em;}.ant-select-multiple.ant-select-sm .ant-select-selection-item-remove:hover{color:rgba(255, 255, 255, 0.85);}.ant-select-multiple.ant-select-sm .ant-select-selection-overflow-item+.ant-select-selection-overflow-item .ant-select-selection-search{margin-inline-start:0;}.ant-select-multiple.ant-select-sm .ant-select-selection-search{display:inline-flex;position:relative;max-width:100%;margin-inline-start:8px;}.ant-select-multiple.ant-select-sm .ant-select-selection-search-input,.ant-select-multiple.ant-select-sm .ant-select-selection-search-mirror{height:16px;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:16px;transition:all 0.3s;}.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:11px;inset-inline-end:11px;transform:translateY(-50%);transition:all 0.3s;}.ant-select-multiple.ant-select-sm .ant-select-selection-placeholder{inset-inline-start:7px;inset-inline-end:auto;}.ant-select-multiple.ant-select-sm .ant-select-selection-search{margin-inline-start:2px;}.ant-select-multiple.ant-select-lg{font-size:16px;}.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-selector{display:flex;flex-wrap:wrap;align-items:center;padding:1px 4px;border-radius:8px;}.ant-select-show-search.ant-select-multiple.ant-select-lg .ant-select-selector{cursor:text;}.ant-select-disabled.ant-select-multiple.ant-select-lg .ant-select-selector{background:rgba(255, 255, 255, 0.08);cursor:not-allowed;}.ant-select-multiple.ant-select-lg .ant-select-selector:after{display:inline-block;width:0;margin:2px 0;line-height:32px;content:\\"\\\\a0\\";}.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:24px;}.ant-select-multiple.ant-select-lg .ant-select-selection-item{position:relative;display:flex;flex:none;box-sizing:border-box;max-width:100%;height:32px;margin-top:2px;margin-bottom:2px;line-height:30px;background:rgba(255, 255, 255, 0.12);border:1px solid rgba(253, 253, 253, 0.12);border-radius:6px;cursor:default;transition:font-size 0.3s,line-height 0.3s,height 0.3s;user-select:none;margin-inline-end:4px;padding-inline-start:8px;padding-inline-end:4px;}.ant-select-disabled.ant-select-multiple.ant-select-lg .ant-select-selection-item{color:rgba(255, 255, 255, 0.25);border-color:#424242;cursor:not-allowed;}.ant-select-multiple.ant-select-lg .ant-select-selection-item-content{display:inline-block;margin-inline-end:4px;overflow:hidden;white-space:pre;text-overflow:ellipsis;}.ant-select-multiple.ant-select-lg .ant-select-selection-item-remove{display:inline-block;align-items:center;color:rgba(255, 255, 255, 0.45);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-item-remove >*{line-height:1;}.ant-select-multiple.ant-select-lg .ant-select-selection-item-remove svg{display:inline-block;}.ant-select-multiple.ant-select-lg .ant-select-selection-item-remove >.anticon{vertical-align:-0.2em;}.ant-select-multiple.ant-select-lg .ant-select-selection-item-remove:hover{color:rgba(255, 255, 255, 0.85);}.ant-select-multiple.ant-select-lg .ant-select-selection-overflow-item+.ant-select-selection-overflow-item .ant-select-selection-search{margin-inline-start:0;}.ant-select-multiple.ant-select-lg .ant-select-selection-search{display:inline-flex;position:relative;max-width:100%;margin-inline-start:8px;}.ant-select-multiple.ant-select-lg .ant-select-selection-search-input,.ant-select-multiple.ant-select-lg .ant-select-selection-search-mirror{height:32px;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:32px;transition:all 0.3s;}.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:11px;inset-inline-end:11px;transform:translateY(-50%);transition:all 0.3s;}.ant-select-dropdown{box-sizing:border-box;margin:0;padding:4px;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:absolute;top:-9999px;z-index:1050;overflow:hidden;font-variant:initial;background-color:#1f1f1f;border-radius:8px;outline:none;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-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{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{animation-name:antSlideDownOut;}.ant-select-dropdown-hidden{display:none;}.ant-select-dropdown-empty{color:rgba(255, 255, 255, 0.25);}.ant-select-dropdown .ant-select-item-empty{position:relative;display:block;min-height:32px;padding:5px 12px;color:rgba(255, 255, 255, 0.25);font-weight:normal;font-size:14px;line-height:1.5714285714285714;box-sizing:border-box;}.ant-select-dropdown .ant-select-item{position:relative;display:block;min-height:32px;padding:5px 12px;color:rgba(255, 255, 255, 0.85);font-weight:normal;font-size:14px;line-height:1.5714285714285714;box-sizing:border-box;cursor:pointer;transition:background 0.3s ease;border-radius:4px;}.ant-select-dropdown .ant-select-item-group{color:rgba(255, 255, 255, 0.45);font-size:12px;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;}.ant-select-dropdown .ant-select-item-option-active:not(.ant-select-item-option-disabled){background-color:rgba(255, 255, 255, 0.08);}.ant-select-dropdown .ant-select-item-option-selected:not(.ant-select-item-option-disabled){color:rgba(255, 255, 255, 0.85);font-weight:600;background-color:#111911;}.ant-select-dropdown .ant-select-item-option-selected:not(.ant-select-item-option-disabled) .ant-select-item-option-state{color:#037003;}.ant-select-dropdown .ant-select-item-option-disabled{color:rgba(255, 255, 255, 0.25);cursor:not-allowed;}.ant-select-dropdown .ant-select-item-option-disabled.ant-select-item-option-selected{background-color:rgba(255, 255, 255, 0.08);}.ant-select-dropdown .ant-select-item-option-grouped{padding-inline-start:24px;}.ant-select-dropdown-rtl{direction:rtl;}.ant-slide-up-enter,.ant-slide-up-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-slide-up-leave{animation-duration:0.2s;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:cubic-bezier(0.23, 1, 0.32, 1);}.ant-slide-up-leave{animation-timing-function:cubic-bezier(0.755, 0.05, 0.855, 0.06);}.ant-slide-down-enter,.ant-slide-down-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-slide-down-leave{animation-duration:0.2s;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:cubic-bezier(0.23, 1, 0.32, 1);}.ant-slide-down-leave{animation-timing-function:cubic-bezier(0.755, 0.05, 0.855, 0.06);}.ant-move-up-enter,.ant-move-up-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-move-up-leave{animation-duration:0.2s;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:cubic-bezier(0.08, 0.82, 0.17, 1);}.ant-move-up-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}.ant-move-down-enter,.ant-move-down-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-move-down-leave{animation-duration:0.2s;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:cubic-bezier(0.08, 0.82, 0.17, 1);}.ant-move-down-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}.ant-select-rtl{direction:rtl;}.ant-select-focused.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-selector{border-color:#198016;box-shadow:0 0 0 2px rgba(0, 53, 0, 0.15);border-inline-end-width:undefinedpx!important;outline:0;}.ant-select:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer):hover .ant-select-selector{border-color:#198016;border-inline-end-width:undefinedpx!important;}.ant-select-status-error:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-selector{border-color:#e86e6b;}.ant-select-focused.ant-select-status-error:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-selector{border-color:#e86e6b;box-shadow:0 0 0 2px rgba(238, 38, 56, 0.11);border-inline-end-width:undefinedpx!important;outline:0;}.ant-select-status-error:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer):hover .ant-select-selector{border-color:#e86e6b;border-inline-end-width:undefinedpx!important;}.ant-select-status-warning:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-selector{border-color:#7c5914;}.ant-select-focused.ant-select-status-warning:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer) .ant-select-selector{border-color:#7c5914;box-shadow:0 0 0 2px rgba(173, 107, 0, 0.15);border-inline-end-width:undefinedpx!important;outline:0;}.ant-select-status-warning:not(.ant-select-disabled):not(.ant-select-customize-input):not(.ant-pagination-size-changer):hover .ant-select-selector{border-color:#7c5914;border-inline-end-width:undefinedpx!important;}.ant-select-compact-item:not(.ant-select-compact-last-item){margin-inline-end:-1px;}.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;}@keyframes antSlideUpIn{0%{transform:scaleY(0.8);transform-origin:0% 0%;opacity:0;}100%{transform:scaleY(1);transform-origin:0% 0%;opacity:1;}}@keyframes antSlideDownIn{0%{transform:scaleY(0.8);transform-origin:100% 100%;opacity:0;}100%{transform:scaleY(1);transform-origin:100% 100%;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 antSlideDownOut{0%{transform:scaleY(1);transform-origin:100% 100%;opacity:1;}100%{transform:scaleY(0.8);transform-origin:100% 100%;opacity:0;}}@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;}}[class^=\\"ant-alert\\"],[class*=\\" ant-alert\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-alert\\"]::before,[class*=\\" ant-alert\\"]::before,[class^=\\"ant-alert\\"]::after,[class*=\\" ant-alert\\"]::after{box-sizing:border-box;}[class^=\\"ant-alert\\"] [class^=\\"ant-alert\\"],[class*=\\" ant-alert\\"] [class^=\\"ant-alert\\"],[class^=\\"ant-alert\\"] [class*=\\" ant-alert\\"],[class*=\\" ant-alert\\"] [class*=\\" ant-alert\\"]{box-sizing:border-box;}[class^=\\"ant-alert\\"] [class^=\\"ant-alert\\"]::before,[class*=\\" ant-alert\\"] [class^=\\"ant-alert\\"]::before,[class^=\\"ant-alert\\"] [class*=\\" ant-alert\\"]::before,[class*=\\" ant-alert\\"] [class*=\\" ant-alert\\"]::before,[class^=\\"ant-alert\\"] [class^=\\"ant-alert\\"]::after,[class*=\\" ant-alert\\"] [class^=\\"ant-alert\\"]::after,[class^=\\"ant-alert\\"] [class*=\\" ant-alert\\"]::after,[class*=\\" ant-alert\\"] [class*=\\" ant-alert\\"]::after{box-sizing:border-box;}.ant-alert{box-sizing:border-box;margin:0;padding:8px 12px;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:relative;display:flex;align-items:center;word-wrap:break-word;border-radius:8px;}.ant-alert.ant-alert-rtl{direction:rtl;}.ant-alert .ant-alert-content{flex:1;min-width:0;}.ant-alert .ant-alert-icon{margin-inline-end:8px;line-height:0;}.ant-alert-description{display:none;font-size:14px;line-height:1.5714285714285714;}.ant-alert-message{color:rgba(255, 255, 255, 0.85);}.ant-alert.ant-alert-motion-leave{overflow:hidden;opacity:1;transition:max-height 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),opacity 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),padding-top 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),padding-bottom 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86),margin-bottom 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);}.ant-alert.ant-alert-motion-leave-active{max-height:0;margin-bottom:0!important;padding-top:0;padding-bottom:0;opacity:0;}.ant-alert-with-description{align-items:flex-start;padding-inline:24px;padding-block:20px;}.ant-alert-with-description .ant-alert-icon{margin-inline-end:12px;font-size:24px;line-height:0;}.ant-alert-with-description .ant-alert-message{display:block;margin-bottom:8px;color:rgba(255, 255, 255, 0.85);font-size:16px;}.ant-alert-with-description .ant-alert-description{display:block;}.ant-alert-banner{margin-bottom:0;border:0!important;border-radius:0;}.ant-alert-success{background-color:#162312;border:1px solid #274916;}.ant-alert-success .ant-alert-icon{color:#49aa19;}.ant-alert-info{background-color:#111a2c;border:1px solid #15325b;}.ant-alert-info .ant-alert-icon{color:#1668dc;}.ant-alert-warning{background-color:#2b2111;border:1px solid #594214;}.ant-alert-warning .ant-alert-icon{color:#d89614;}.ant-alert-error{background-color:#2c1618;border:1px solid #5b2526;}.ant-alert-error .ant-alert-icon{color:#dc4446;}.ant-alert-error .ant-alert-description>pre{margin:0;padding:0;}.ant-alert-action{margin-inline-start:8px;}.ant-alert .ant-alert-close-icon{margin-inline-start:8px;padding:0;overflow:hidden;font-size:12px;line-height:12px;background-color:transparent;border:none;outline:none;cursor:pointer;}.ant-alert .ant-alert-close-icon .anticon-close{color:rgba(255, 255, 255, 0.45);transition:color 0.2s;}.ant-alert .ant-alert-close-icon .anticon-close:hover{color:rgba(255, 255, 255, 0.85);}.ant-alert-close-text{color:rgba(255, 255, 255, 0.45);transition:color 0.2s;}.ant-alert-close-text:hover{color:rgba(255, 255, 255, 0.85);}[class^=\\"ant-avatar\\"],[class*=\\" ant-avatar\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-avatar\\"]::before,[class*=\\" ant-avatar\\"]::before,[class^=\\"ant-avatar\\"]::after,[class*=\\" ant-avatar\\"]::after{box-sizing:border-box;}[class^=\\"ant-avatar\\"] [class^=\\"ant-avatar\\"],[class*=\\" ant-avatar\\"] [class^=\\"ant-avatar\\"],[class^=\\"ant-avatar\\"] [class*=\\" ant-avatar\\"],[class*=\\" ant-avatar\\"] [class*=\\" ant-avatar\\"]{box-sizing:border-box;}[class^=\\"ant-avatar\\"] [class^=\\"ant-avatar\\"]::before,[class*=\\" ant-avatar\\"] [class^=\\"ant-avatar\\"]::before,[class^=\\"ant-avatar\\"] [class*=\\" ant-avatar\\"]::before,[class*=\\" ant-avatar\\"] [class*=\\" ant-avatar\\"]::before,[class^=\\"ant-avatar\\"] [class^=\\"ant-avatar\\"]::after,[class*=\\" ant-avatar\\"] [class^=\\"ant-avatar\\"]::after,[class^=\\"ant-avatar\\"] [class*=\\" ant-avatar\\"]::after,[class*=\\" ant-avatar\\"] [class*=\\" ant-avatar\\"]::after{box-sizing:border-box;}.ant-avatar{box-sizing:border-box;margin:0;padding:0;color:#fff;font-size:14px;line-height:30px;list-style:none;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';position:relative;display:inline-block;overflow:hidden;white-space:nowrap;text-align:center;vertical-align:middle;background:rgba(255, 255, 255, 0.25);border:1px solid transparent;width:32px;height:32px;border-radius:50%;}.ant-avatar-image{background:transparent;}.ant-avatar .ant-image-img{display:block;}.ant-avatar.ant-avatar-square{border-radius:6px;}.ant-avatar .ant-avatar-string{position:absolute;left:50%;transform-origin:0 center;}.ant-avatar.ant-avatar-icon{font-size:18px;}.ant-avatar.ant-avatar-icon >.anticon{margin:0;}.ant-avatar-lg{width:40px;height:40px;line-height:38px;border-radius:50%;}.ant-avatar-lg.ant-avatar-square{border-radius:8px;}.ant-avatar-lg .ant-avatar-string{position:absolute;left:50%;transform-origin:0 center;}.ant-avatar-lg.ant-avatar-icon{font-size:24px;}.ant-avatar-lg.ant-avatar-icon >.anticon{margin:0;}.ant-avatar-sm{width:24px;height:24px;line-height:22px;border-radius:50%;}.ant-avatar-sm.ant-avatar-square{border-radius:4px;}.ant-avatar-sm .ant-avatar-string{position:absolute;left:50%;transform-origin:0 center;}.ant-avatar-sm.ant-avatar-icon{font-size:14px;}.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:#141414;}.ant-avatar-group >*:not(:first-child){margin-inline-start:-8px;}.ant-avatar-group-popover .ant-avatar+.ant-avatar{margin-inline-start:4px;}[class^=\\"ant-badge\\"],[class*=\\" ant-badge\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-badge\\"]::before,[class*=\\" ant-badge\\"]::before,[class^=\\"ant-badge\\"]::after,[class*=\\" ant-badge\\"]::after{box-sizing:border-box;}[class^=\\"ant-badge\\"] [class^=\\"ant-badge\\"],[class*=\\" ant-badge\\"] [class^=\\"ant-badge\\"],[class^=\\"ant-badge\\"] [class*=\\" ant-badge\\"],[class*=\\" ant-badge\\"] [class*=\\" ant-badge\\"]{box-sizing:border-box;}[class^=\\"ant-badge\\"] [class^=\\"ant-badge\\"]::before,[class*=\\" ant-badge\\"] [class^=\\"ant-badge\\"]::before,[class^=\\"ant-badge\\"] [class*=\\" ant-badge\\"]::before,[class*=\\" ant-badge\\"] [class*=\\" ant-badge\\"]::before,[class^=\\"ant-badge\\"] [class^=\\"ant-badge\\"]::after,[class*=\\" ant-badge\\"] [class^=\\"ant-badge\\"]::after,[class^=\\"ant-badge\\"] [class*=\\" ant-badge\\"]::after,[class*=\\" ant-badge\\"] [class*=\\" ant-badge\\"]::after{box-sizing:border-box;}.ant-badge{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1;list-style:none;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';position:relative;display:inline-block;width:fit-content;}.ant-badge .ant-badge-count{z-index:auto;min-width:20px;height:20px;color:#141414;font-weight:normal;font-size:12px;line-height:20px;white-space:nowrap;text-align:center;background:#dc4446;border-radius:10px;box-shadow:0 0 0 1px #141414;transition:background 0.2s;}.ant-badge .ant-badge-count a{color:#141414;}.ant-badge .ant-badge-count a:hover{color:#141414;}a:hover .ant-badge .ant-badge-count{background:#e86e6b;}.ant-badge .ant-badge-count-sm{min-width:14px;height:14px;font-size:12px;line-height:14px;border-radius:7px;}.ant-badge .ant-badge-multiple-words{padding:0 8px;}.ant-badge .ant-badge-dot{z-index:auto;width:6px;min-width:6px;height:6px;background:#dc4446;border-radius:100%;box-shadow:0 0 0 1px #141414;}.ant-badge .ant-badge-dot.ant-scroll-number{transition:background 0.3s;}.ant-badge .ant-badge-count,.ant-badge .ant-badge-dot,.ant-badge .ant-scroll-number-custom-component{position:absolute;top:0;inset-inline-end:0;transform:translate(50%, -50%);transform-origin:100% 0%;}.ant-badge .ant-badge-count.anticon-spin,.ant-badge .ant-badge-dot.anticon-spin,.ant-badge .ant-scroll-number-custom-component.anticon-spin{animation-name:antBadgeLoadingCircle;animation-duration:1s;animation-iteration-count:infinite;animation-timing-function:linear;}.ant-badge.ant-badge-status{line-height:inherit;vertical-align:baseline;}.ant-badge.ant-badge-status .ant-badge-status-dot{position:relative;top:-1px;display:inline-block;width:6px;height:6px;vertical-align:middle;border-radius:50%;}.ant-badge.ant-badge-status .ant-badge-status-success{background-color:#49aa19;}.ant-badge.ant-badge-status .ant-badge-status-processing{overflow:visible;color:#037003;background-color:#037003;}.ant-badge.ant-badge-status .ant-badge-status-processing::after{position:absolute;top:0;inset-inline-start:0;width:100%;height:100%;border-width:1px;border-style:solid;border-color:inherit;border-radius:50%;animation-name:antStatusProcessing;animation-duration:1.2s;animation-iteration-count:infinite;animation-timing-function:ease-in-out;content:\\"\\";}.ant-badge.ant-badge-status .ant-badge-status-default{background-color:rgba(255, 255, 255, 0.25);}.ant-badge.ant-badge-status .ant-badge-status-error{background-color:#dc4446;}.ant-badge.ant-badge-status .ant-badge-status-warning{background-color:#d89614;}.ant-badge.ant-badge-status .ant-badge-status-text{margin-inline-start:8px;color:rgba(255, 255, 255, 0.85);font-size:14px;}.ant-badge.ant-badge .ant-badge-color-blue{background:#1668dc;}.ant-badge.ant-badge .ant-badge-color-blue:not(.ant-badge-count){color:#1668dc;}.ant-badge.ant-badge .ant-badge-color-purple{background:#642ab5;}.ant-badge.ant-badge .ant-badge-color-purple:not(.ant-badge-count){color:#642ab5;}.ant-badge.ant-badge .ant-badge-color-cyan{background:#13a8a8;}.ant-badge.ant-badge .ant-badge-color-cyan:not(.ant-badge-count){color:#13a8a8;}.ant-badge.ant-badge .ant-badge-color-green{background:#49aa19;}.ant-badge.ant-badge .ant-badge-color-green:not(.ant-badge-count){color:#49aa19;}.ant-badge.ant-badge .ant-badge-color-magenta{background:#cb2b83;}.ant-badge.ant-badge .ant-badge-color-magenta:not(.ant-badge-count){color:#cb2b83;}.ant-badge.ant-badge .ant-badge-color-pink{background:#cb2b83;}.ant-badge.ant-badge .ant-badge-color-pink:not(.ant-badge-count){color:#cb2b83;}.ant-badge.ant-badge .ant-badge-color-red{background:#d32029;}.ant-badge.ant-badge .ant-badge-color-red:not(.ant-badge-count){color:#d32029;}.ant-badge.ant-badge .ant-badge-color-orange{background:#d87a16;}.ant-badge.ant-badge .ant-badge-color-orange:not(.ant-badge-count){color:#d87a16;}.ant-badge.ant-badge .ant-badge-color-yellow{background:#d8bd14;}.ant-badge.ant-badge .ant-badge-color-yellow:not(.ant-badge-count){color:#d8bd14;}.ant-badge.ant-badge .ant-badge-color-volcano{background:#d84a1b;}.ant-badge.ant-badge .ant-badge-color-volcano:not(.ant-badge-count){color:#d84a1b;}.ant-badge.ant-badge .ant-badge-color-geekblue{background:#2b4acb;}.ant-badge.ant-badge .ant-badge-color-geekblue:not(.ant-badge-count){color:#2b4acb;}.ant-badge.ant-badge .ant-badge-color-lime{background:#8bbb11;}.ant-badge.ant-badge .ant-badge-color-lime:not(.ant-badge-count){color:#8bbb11;}.ant-badge.ant-badge .ant-badge-color-gold{background:#d89614;}.ant-badge.ant-badge .ant-badge-color-gold:not(.ant-badge-count){color:#d89614;}.ant-badge .ant-badge-zoom-appear,.ant-badge .ant-badge-zoom-enter{animation-name:antZoomBadgeIn;animation-duration:0.3s;animation-timing-function:cubic-bezier(0.12, 0.4, 0.29, 1.46);animation-fill-mode:both;}.ant-badge .ant-badge-zoom-leave{animation-name:antZoomBadgeOut;animation-duration:0.3s;animation-timing-function:cubic-bezier(0.12, 0.4, 0.29, 1.46);animation-fill-mode:both;}.ant-badge.ant-badge-not-a-wrapper .ant-badge-zoom-appear,.ant-badge.ant-badge-not-a-wrapper .ant-badge-zoom-enter{animation-name:antNoWrapperZoomBadgeIn;animation-duration:0.3s;animation-timing-function:cubic-bezier(0.12, 0.4, 0.29, 1.46);}.ant-badge.ant-badge-not-a-wrapper .ant-badge-zoom-leave{animation-name:antNoWrapperZoomBadgeOut;animation-duration:0.3s;animation-timing-function:cubic-bezier(0.12, 0.4, 0.29, 1.46);}.ant-badge.ant-badge-not-a-wrapper:not(.ant-badge-status){vertical-align:middle;}.ant-badge.ant-badge-not-a-wrapper .ant-scroll-number-custom-component,.ant-badge.ant-badge-not-a-wrapper .ant-badge-count{transform:none;}.ant-badge.ant-badge-not-a-wrapper .ant-scroll-number-custom-component,.ant-badge.ant-badge-not-a-wrapper .ant-scroll-number{position:relative;top:auto;display:block;transform-origin:50% 50%;}.ant-badge .ant-scroll-number{overflow:hidden;}.ant-badge .ant-scroll-number .ant-scroll-number-only{position:relative;display:inline-block;height:20px;transition:all 0.3s cubic-bezier(0.12, 0.4, 0.29, 1.46);-webkit-transform-style:preserve-3d;-webkit-backface-visibility:hidden;}.ant-badge .ant-scroll-number .ant-scroll-number-only >p.ant-scroll-number-only-unit{height:20px;margin:0;-webkit-transform-style:preserve-3d;-webkit-backface-visibility:hidden;}.ant-badge .ant-scroll-number .ant-scroll-number-symbol{vertical-align:top;}.ant-badge-rtl{direction:rtl;}.ant-badge-rtl .ant-badge-count,.ant-badge-rtl .ant-badge-dot,.ant-badge-rtl .ant-scroll-number-custom-component{transform:translate(-50%, -50%);}.ant-ribbon-wrapper{position:relative;}.ant-ribbon{box-sizing:border-box;margin:0;padding:0 8px;color:#037003;font-size:14px;line-height:22px;list-style:none;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';position:absolute;top:8px;white-space:nowrap;background-color:#037003;border-radius:4px;}.ant-ribbon .ant-ribbon-text{color:#fff;}.ant-ribbon .ant-ribbon-corner{position:absolute;top:100%;width:8px;height:8px;color:currentcolor;border:4px solid;transform:scaleY(0.75);transform-origin:top;filter:brightness(75%);}.ant-ribbon.ant-ribbon-color-blue{background:#1668dc;color:#1668dc;}.ant-ribbon.ant-ribbon-color-purple{background:#642ab5;color:#642ab5;}.ant-ribbon.ant-ribbon-color-cyan{background:#13a8a8;color:#13a8a8;}.ant-ribbon.ant-ribbon-color-green{background:#49aa19;color:#49aa19;}.ant-ribbon.ant-ribbon-color-magenta{background:#cb2b83;color:#cb2b83;}.ant-ribbon.ant-ribbon-color-pink{background:#cb2b83;color:#cb2b83;}.ant-ribbon.ant-ribbon-color-red{background:#d32029;color:#d32029;}.ant-ribbon.ant-ribbon-color-orange{background:#d87a16;color:#d87a16;}.ant-ribbon.ant-ribbon-color-yellow{background:#d8bd14;color:#d8bd14;}.ant-ribbon.ant-ribbon-color-volcano{background:#d84a1b;color:#d84a1b;}.ant-ribbon.ant-ribbon-color-geekblue{background:#2b4acb;color:#2b4acb;}.ant-ribbon.ant-ribbon-color-lime{background:#8bbb11;color:#8bbb11;}.ant-ribbon.ant-ribbon-color-gold{background:#d89614;color:#d89614;}.ant-ribbon.ant-ribbon-placement-end{inset-inline-end:-8px;border-end-end-radius:0;}.ant-ribbon.ant-ribbon-placement-end .ant-ribbon-corner{inset-inline-end:0;border-inline-end-color:transparent;border-block-end-color:transparent;}.ant-ribbon.ant-ribbon-placement-start{inset-inline-start:-8px;border-end-start-radius:0;}.ant-ribbon.ant-ribbon-placement-start .ant-ribbon-corner{inset-inline-start:0;border-block-end-color:transparent;border-inline-start-color:transparent;}.ant-ribbon-rtl{direction:rtl;}@keyframes antBadgeLoadingCircle{0%{transform-origin:50%;}100%{transform:translate(50%, -50%) rotate(360deg);transform-origin:50%;}}@keyframes antStatusProcessing{0%{transform:scale(0.8);opacity:0.5;}100%{transform:scale(2.4);opacity:0;}}@keyframes antZoomBadgeIn{0%{transform:scale(0) translate(50%, -50%);opacity:0;}100%{transform:scale(1) translate(50%, -50%);}}@keyframes antZoomBadgeOut{0%{transform:scale(1) translate(50%, -50%);}100%{transform:scale(0) translate(50%, -50%);opacity:0;}}@keyframes antNoWrapperZoomBadgeIn{0%{transform:scale(0);opacity:0;}100%{transform:scale(1);}}@keyframes antNoWrapperZoomBadgeOut{0%{transform:scale(1);}100%{transform:scale(0);opacity:0;}}[class^=\\"ant-ribbon\\"],[class*=\\" ant-ribbon\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-ribbon\\"]::before,[class*=\\" ant-ribbon\\"]::before,[class^=\\"ant-ribbon\\"]::after,[class*=\\" ant-ribbon\\"]::after{box-sizing:border-box;}[class^=\\"ant-ribbon\\"] [class^=\\"ant-ribbon\\"],[class*=\\" ant-ribbon\\"] [class^=\\"ant-ribbon\\"],[class^=\\"ant-ribbon\\"] [class*=\\" ant-ribbon\\"],[class*=\\" ant-ribbon\\"] [class*=\\" ant-ribbon\\"]{box-sizing:border-box;}[class^=\\"ant-ribbon\\"] [class^=\\"ant-ribbon\\"]::before,[class*=\\" ant-ribbon\\"] [class^=\\"ant-ribbon\\"]::before,[class^=\\"ant-ribbon\\"] [class*=\\" ant-ribbon\\"]::before,[class*=\\" ant-ribbon\\"] [class*=\\" ant-ribbon\\"]::before,[class^=\\"ant-ribbon\\"] [class^=\\"ant-ribbon\\"]::after,[class*=\\" ant-ribbon\\"] [class^=\\"ant-ribbon\\"]::after,[class^=\\"ant-ribbon\\"] [class*=\\" ant-ribbon\\"]::after,[class*=\\" ant-ribbon\\"] [class*=\\" ant-ribbon\\"]::after{box-sizing:border-box;}.ant-ribbon{box-sizing:border-box;margin:0;padding:0 8px;color:#037003;font-size:14px;line-height:22px;list-style:none;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';position:absolute;top:8px;white-space:nowrap;background-color:#037003;border-radius:4px;}.ant-ribbon .ant-ribbon-text{color:#fff;}.ant-ribbon .ant-ribbon-corner{position:absolute;top:100%;width:8px;height:8px;color:currentcolor;border:4px solid;transform:scaleY(0.75);transform-origin:top;filter:brightness(75%);}.ant-ribbon.ant-ribbon-color-blue{background:#1668dc;color:#1668dc;}.ant-ribbon.ant-ribbon-color-purple{background:#642ab5;color:#642ab5;}.ant-ribbon.ant-ribbon-color-cyan{background:#13a8a8;color:#13a8a8;}.ant-ribbon.ant-ribbon-color-green{background:#49aa19;color:#49aa19;}.ant-ribbon.ant-ribbon-color-magenta{background:#cb2b83;color:#cb2b83;}.ant-ribbon.ant-ribbon-color-pink{background:#cb2b83;color:#cb2b83;}.ant-ribbon.ant-ribbon-color-red{background:#d32029;color:#d32029;}.ant-ribbon.ant-ribbon-color-orange{background:#d87a16;color:#d87a16;}.ant-ribbon.ant-ribbon-color-yellow{background:#d8bd14;color:#d8bd14;}.ant-ribbon.ant-ribbon-color-volcano{background:#d84a1b;color:#d84a1b;}.ant-ribbon.ant-ribbon-color-geekblue{background:#2b4acb;color:#2b4acb;}.ant-ribbon.ant-ribbon-color-lime{background:#8bbb11;color:#8bbb11;}.ant-ribbon.ant-ribbon-color-gold{background:#d89614;color:#d89614;}.ant-ribbon.ant-ribbon-placement-end{inset-inline-end:-8px;border-end-end-radius:0;}.ant-ribbon.ant-ribbon-placement-end .ant-ribbon-corner{inset-inline-end:0;border-inline-end-color:transparent;border-block-end-color:transparent;}.ant-ribbon.ant-ribbon-placement-start{inset-inline-start:-8px;border-end-start-radius:0;}.ant-ribbon.ant-ribbon-placement-start .ant-ribbon-corner{inset-inline-start:0;border-block-end-color:transparent;border-inline-start-color:transparent;}.ant-ribbon-rtl{direction:rtl;}.ant-ribbon-wrapper{position:relative;}[class^=\\"ant-breadcrumb\\"],[class*=\\" ant-breadcrumb\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-breadcrumb\\"]::before,[class*=\\" ant-breadcrumb\\"]::before,[class^=\\"ant-breadcrumb\\"]::after,[class*=\\" ant-breadcrumb\\"]::after{box-sizing:border-box;}[class^=\\"ant-breadcrumb\\"] [class^=\\"ant-breadcrumb\\"],[class*=\\" ant-breadcrumb\\"] [class^=\\"ant-breadcrumb\\"],[class^=\\"ant-breadcrumb\\"] [class*=\\" ant-breadcrumb\\"],[class*=\\" ant-breadcrumb\\"] [class*=\\" ant-breadcrumb\\"]{box-sizing:border-box;}[class^=\\"ant-breadcrumb\\"] [class^=\\"ant-breadcrumb\\"]::before,[class*=\\" ant-breadcrumb\\"] [class^=\\"ant-breadcrumb\\"]::before,[class^=\\"ant-breadcrumb\\"] [class*=\\" ant-breadcrumb\\"]::before,[class*=\\" ant-breadcrumb\\"] [class*=\\" ant-breadcrumb\\"]::before,[class^=\\"ant-breadcrumb\\"] [class^=\\"ant-breadcrumb\\"]::after,[class*=\\" ant-breadcrumb\\"] [class^=\\"ant-breadcrumb\\"]::after,[class^=\\"ant-breadcrumb\\"] [class*=\\" ant-breadcrumb\\"]::after,[class*=\\" ant-breadcrumb\\"] [class*=\\" ant-breadcrumb\\"]::after{box-sizing:border-box;}.ant-breadcrumb{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.45);font-size:14px;line-height:1.5714285714285714;list-style:none;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-breadcrumb .anticon{font-size:14px;}.ant-breadcrumb ol{display:flex;flex-wrap:wrap;margin:0;padding:0;list-style:none;}.ant-breadcrumb a{color:rgba(255, 255, 255, 0.45);transition:color 0.2s;padding:0 4px;border-radius:4px;height:22px;display:inline-block;margin-inline:-4px;}.ant-breadcrumb a:hover{color:rgba(255, 255, 255, 0.85);background-color:rgba(255, 255, 255, 0.12);}.ant-breadcrumb a:focus-visible{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-breadcrumb li:last-child{color:rgba(255, 255, 255, 0.85);}.ant-breadcrumb li:last-child>.ant-breadcrumb-separator{display:none;}.ant-breadcrumb .ant-breadcrumb-separator{margin-inline:8px;color:rgba(255, 255, 255, 0.45);}.ant-breadcrumb .ant-breadcrumb-link >.anticon+span,.ant-breadcrumb .ant-breadcrumb-link >.anticon+a{margin-inline-start:4px;}.ant-breadcrumb .ant-breadcrumb-overlay-link{border-radius:4px;height:22px;display:inline-block;padding:0 4px;margin-inline:-4px;}.ant-breadcrumb .ant-breadcrumb-overlay-link >.anticon{margin-inline-start:4px;font-size:12px;}.ant-breadcrumb .ant-breadcrumb-overlay-link:hover{color:rgba(255, 255, 255, 0.85);background-color:rgba(255, 255, 255, 0.12);}.ant-breadcrumb .ant-breadcrumb-overlay-link:hover a{color:rgba(255, 255, 255, 0.85);}.ant-breadcrumb .ant-breadcrumb-overlay-link a:hover{background-color:transparent;}.ant-breadcrumb.ant-breadcrumb-rtl{direction:rtl;}[class^=\\"ant-btn\\"],[class*=\\" ant-btn\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-btn\\"]::before,[class*=\\" ant-btn\\"]::before,[class^=\\"ant-btn\\"]::after,[class*=\\" ant-btn\\"]::after{box-sizing:border-box;}[class^=\\"ant-btn\\"] [class^=\\"ant-btn\\"],[class*=\\" ant-btn\\"] [class^=\\"ant-btn\\"],[class^=\\"ant-btn\\"] [class*=\\" ant-btn\\"],[class*=\\" ant-btn\\"] [class*=\\" ant-btn\\"]{box-sizing:border-box;}[class^=\\"ant-btn\\"] [class^=\\"ant-btn\\"]::before,[class*=\\" ant-btn\\"] [class^=\\"ant-btn\\"]::before,[class^=\\"ant-btn\\"] [class*=\\" ant-btn\\"]::before,[class*=\\" ant-btn\\"] [class*=\\" ant-btn\\"]::before,[class^=\\"ant-btn\\"] [class^=\\"ant-btn\\"]::after,[class*=\\" ant-btn\\"] [class^=\\"ant-btn\\"]::after,[class^=\\"ant-btn\\"] [class*=\\" ant-btn\\"]::after,[class*=\\" ant-btn\\"] [class*=\\" ant-btn\\"]::after{box-sizing:border-box;}.ant-btn{outline:none;position:relative;display:inline-block;font-weight:400;white-space:nowrap;text-align:center;background-image:none;background-color:transparent;border:1px solid transparent;cursor:pointer;transition:all 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);user-select:none;touch-action:manipulation;line-height:1.5714285714285714;color:rgba(255, 255, 255, 0.85);}.ant-btn >span{display:inline-block;}.ant-btn >.anticon+span,.ant-btn >span+.anticon{margin-inline-start:8px;}.ant-btn >a{color:currentColor;}.ant-btn:not(:disabled):focus-visible{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-btn-icon-only.ant-btn-compact-item{flex:none;}.ant-btn-compact-item.ant-btn-primary:not([disabled])+.ant-btn-compact-item.ant-btn-primary:not([disabled]){position:relative;}.ant-btn-compact-item.ant-btn-primary:not([disabled])+.ant-btn-compact-item.ant-btn-primary:not([disabled]):before{position:absolute;top:-1px;inset-inline-start:-1px;display:inline-block;width:1px;height:calc(100% + 2px);background-color:#198016;content:\\"\\";}.ant-btn-compact-vertical-item.ant-btn-primary:not([disabled])+.ant-btn-compact-vertical-item.ant-btn-primary:not([disabled]){position:relative;}.ant-btn-compact-vertical-item.ant-btn-primary:not([disabled])+.ant-btn-compact-vertical-item.ant-btn-primary:not([disabled]):before{position:absolute;top:-1px;inset-inline-start:-1px;display:inline-block;width:calc(100% + 2px);height:1px;background-color:#198016;content:\\"\\";}.ant-btn.ant-btn-sm{font-size:14px;height:24px;padding:0px 7px;border-radius:4px;}.ant-btn.ant-btn-sm.ant-btn-icon-only{width:24px;padding-inline-start:0;padding-inline-end:0;}.ant-btn.ant-btn-sm.ant-btn-icon-only.ant-btn-round{width:auto;}.ant-btn.ant-btn-sm.ant-btn-icon-only >span{transform:scale(1.143);}.ant-btn.ant-btn-sm.ant-btn-loading{opacity:0.65;cursor:default;}.ant-btn.ant-btn-sm .ant-btn-loading-icon{transition:width 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);}.ant-btn.ant-btn-sm:not(.ant-btn-icon-only) .ant-btn-loading-icon>.anticon{margin-inline-end:8px;}.ant-btn.ant-btn-circle.ant-btn-sm{min-width:24px;padding-inline-start:0;padding-inline-end:0;border-radius:50%;}.ant-btn.ant-btn-round.ant-btn-sm{border-radius:24px;padding-inline-start:12px;padding-inline-end:12px;}.ant-btn{font-size:14px;height:32px;padding:4px 15px;border-radius:6px;}.ant-btn.ant-btn-icon-only{width:32px;padding-inline-start:0;padding-inline-end:0;}.ant-btn.ant-btn-icon-only.ant-btn-round{width:auto;}.ant-btn.ant-btn-icon-only >span{transform:scale(1.143);}.ant-btn.ant-btn-loading{opacity:0.65;cursor:default;}.ant-btn .ant-btn-loading-icon{transition:width 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);}.ant-btn:not(.ant-btn-icon-only) .ant-btn-loading-icon>.anticon{margin-inline-end:8px;}.ant-btn.ant-btn-circle{min-width:32px;padding-inline-start:0;padding-inline-end:0;border-radius:50%;}.ant-btn.ant-btn-round{border-radius:32px;padding-inline-start:16px;padding-inline-end:16px;}.ant-btn.ant-btn-lg{font-size:16px;height:40px;padding:6.428571428571429px 15px;border-radius:8px;}.ant-btn.ant-btn-lg.ant-btn-icon-only{width:40px;padding-inline-start:0;padding-inline-end:0;}.ant-btn.ant-btn-lg.ant-btn-icon-only.ant-btn-round{width:auto;}.ant-btn.ant-btn-lg.ant-btn-icon-only >span{transform:scale(1.143);}.ant-btn.ant-btn-lg.ant-btn-loading{opacity:0.65;cursor:default;}.ant-btn.ant-btn-lg .ant-btn-loading-icon{transition:width 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);}.ant-btn.ant-btn-lg:not(.ant-btn-icon-only) .ant-btn-loading-icon>.anticon{margin-inline-end:8px;}.ant-btn.ant-btn-circle.ant-btn-lg{min-width:40px;padding-inline-start:0;padding-inline-end:0;border-radius:50%;}.ant-btn.ant-btn-round.ant-btn-lg{border-radius:40px;padding-inline-start:20px;padding-inline-end:20px;}.ant-btn.ant-btn-block{width:100%;}.ant-btn-default{background-color:#141414;border-color:#424242;box-shadow:0 2px 0 rgba(255, 255, 255, 0.04);}.ant-btn-default:disabled{cursor:not-allowed;border-color:#424242;color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);box-shadow:none;}.ant-btn-default:not(:disabled):hover{color:#198016;border-color:#198016;}.ant-btn-default:not(:disabled):active{color:#075a07;border-color:#075a07;}.ant-btn-default.ant-btn-background-ghost{color:#141414;background-color:transparent;border-color:#141414;box-shadow:none;}.ant-btn-default.ant-btn-background-ghost:not(:disabled):hover{background-color:transparent;}.ant-btn-default.ant-btn-background-ghost:not(:disabled):active{background-color:transparent;}.ant-btn-default.ant-btn-background-ghost:disabled{cursor:not-allowed;color:rgba(255, 255, 255, 0.25);border-color:#424242;}.ant-btn-default.ant-btn-dangerous{color:#dc4446;border-color:#dc4446;}.ant-btn-default.ant-btn-dangerous:not(:disabled):hover{color:#e86e6b;border-color:#7e2e2f;}.ant-btn-default.ant-btn-dangerous:not(:disabled):active{color:#ad393a;border-color:#ad393a;}.ant-btn-default.ant-btn-dangerous.ant-btn-background-ghost{color:#dc4446;background-color:transparent;border-color:#dc4446;box-shadow:none;}.ant-btn-default.ant-btn-dangerous.ant-btn-background-ghost:not(:disabled):hover{background-color:transparent;}.ant-btn-default.ant-btn-dangerous.ant-btn-background-ghost:not(:disabled):active{background-color:transparent;}.ant-btn-default.ant-btn-dangerous.ant-btn-background-ghost:disabled{cursor:not-allowed;color:rgba(255, 255, 255, 0.25);border-color:#424242;}.ant-btn-default.ant-btn-dangerous:disabled{cursor:not-allowed;border-color:#424242;color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);box-shadow:none;}.ant-btn-primary{color:#fff;background-color:#037003;box-shadow:0 2px 0 rgba(0, 53, 0, 0.15);}.ant-btn-primary:disabled{cursor:not-allowed;border-color:#424242;color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);box-shadow:none;}.ant-btn-primary:not(:disabled):hover{color:#fff;background-color:#198016;}.ant-btn-primary:not(:disabled):active{color:#fff;background-color:#075a07;}.ant-btn-primary.ant-btn-background-ghost{color:#037003;background-color:transparent;border-color:#037003;box-shadow:none;}.ant-btn-primary.ant-btn-background-ghost:not(:disabled):hover{background-color:transparent;color:#198016;border-color:#198016;}.ant-btn-primary.ant-btn-background-ghost:not(:disabled):active{background-color:transparent;color:#075a07;border-color:#075a07;}.ant-btn-primary.ant-btn-background-ghost:disabled{cursor:not-allowed;color:rgba(255, 255, 255, 0.25);border-color:#424242;}.ant-btn-primary.ant-btn-dangerous{background-color:#dc4446;box-shadow:0 2px 0 rgba(238, 38, 56, 0.11);}.ant-btn-primary.ant-btn-dangerous:not(:disabled):hover{background-color:#e86e6b;}.ant-btn-primary.ant-btn-dangerous:not(:disabled):active{background-color:#ad393a;}.ant-btn-primary.ant-btn-dangerous.ant-btn-background-ghost{color:#dc4446;background-color:transparent;border-color:#dc4446;box-shadow:none;}.ant-btn-primary.ant-btn-dangerous.ant-btn-background-ghost:not(:disabled):hover{background-color:transparent;color:#e86e6b;border-color:#e86e6b;}.ant-btn-primary.ant-btn-dangerous.ant-btn-background-ghost:not(:disabled):active{background-color:transparent;color:#ad393a;border-color:#ad393a;}.ant-btn-primary.ant-btn-dangerous.ant-btn-background-ghost:disabled{cursor:not-allowed;color:rgba(255, 255, 255, 0.25);border-color:#424242;}.ant-btn-primary.ant-btn-dangerous:disabled{cursor:not-allowed;border-color:#424242;color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);box-shadow:none;}.ant-btn-dashed{background-color:#141414;border-color:#424242;box-shadow:0 2px 0 rgba(255, 255, 255, 0.04);border-style:dashed;}.ant-btn-dashed:disabled{cursor:not-allowed;border-color:#424242;color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);box-shadow:none;}.ant-btn-dashed:not(:disabled):hover{color:#198016;border-color:#198016;}.ant-btn-dashed:not(:disabled):active{color:#075a07;border-color:#075a07;}.ant-btn-dashed.ant-btn-background-ghost{color:#141414;background-color:transparent;border-color:#141414;box-shadow:none;}.ant-btn-dashed.ant-btn-background-ghost:not(:disabled):hover{background-color:transparent;}.ant-btn-dashed.ant-btn-background-ghost:not(:disabled):active{background-color:transparent;}.ant-btn-dashed.ant-btn-background-ghost:disabled{cursor:not-allowed;color:rgba(255, 255, 255, 0.25);border-color:#424242;}.ant-btn-dashed.ant-btn-dangerous{color:#dc4446;border-color:#dc4446;}.ant-btn-dashed.ant-btn-dangerous:not(:disabled):hover{color:#e86e6b;border-color:#7e2e2f;}.ant-btn-dashed.ant-btn-dangerous:not(:disabled):active{color:#ad393a;border-color:#ad393a;}.ant-btn-dashed.ant-btn-dangerous.ant-btn-background-ghost{color:#dc4446;background-color:transparent;border-color:#dc4446;box-shadow:none;}.ant-btn-dashed.ant-btn-dangerous.ant-btn-background-ghost:not(:disabled):hover{background-color:transparent;}.ant-btn-dashed.ant-btn-dangerous.ant-btn-background-ghost:not(:disabled):active{background-color:transparent;}.ant-btn-dashed.ant-btn-dangerous.ant-btn-background-ghost:disabled{cursor:not-allowed;color:rgba(255, 255, 255, 0.25);border-color:#424242;}.ant-btn-dashed.ant-btn-dangerous:disabled{cursor:not-allowed;border-color:#424242;color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);box-shadow:none;}.ant-btn-link{color:#1668dc;}.ant-btn-link:not(:disabled):hover{color:#15417e;}.ant-btn-link:not(:disabled):active{color:#1554ad;}.ant-btn-link:disabled{cursor:not-allowed;color:rgba(255, 255, 255, 0.25);}.ant-btn-link.ant-btn-dangerous{color:#dc4446;}.ant-btn-link.ant-btn-dangerous:not(:disabled):hover{color:#e86e6b;}.ant-btn-link.ant-btn-dangerous:not(:disabled):active{color:#ad393a;}.ant-btn-link.ant-btn-dangerous:disabled{cursor:not-allowed;color:rgba(255, 255, 255, 0.25);}.ant-btn-text:not(:disabled):hover{color:rgba(255, 255, 255, 0.85);background-color:rgba(255, 255, 255, 0.12);}.ant-btn-text:not(:disabled):active{color:rgba(255, 255, 255, 0.85);background-color:rgba(255, 255, 255, 0.18);}.ant-btn-text:disabled{cursor:not-allowed;color:rgba(255, 255, 255, 0.25);}.ant-btn-text.ant-btn-dangerous{color:#dc4446;}.ant-btn-text.ant-btn-dangerous:disabled{cursor:not-allowed;color:rgba(255, 255, 255, 0.25);}.ant-btn-text.ant-btn-dangerous:not(:disabled):hover{color:#e86e6b;background-color:#2c1618;}.ant-btn-text.ant-btn-dangerous:not(:disabled):active{color:#e86e6b;background-color:#2c1618;}.ant-btn-disabled{cursor:not-allowed;border-color:#424242;color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);box-shadow:none;}.ant-btn-disabled.ant-btn:hover{cursor:not-allowed;border-color:#424242;color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);box-shadow:none;}.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:-1px;}.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:14px;}.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:#198016;}.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:#198016;}.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:#e86e6b;}.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:#e86e6b;}.ant-btn-compact-item:not(.ant-btn-compact-last-item){margin-inline-end:-1px;}.ant-btn-compact-item:hover,.ant-btn-compact-item:active{z-index:2;}.ant-btn-compact-item[disabled]{z-index:0;}.ant-btn-compact-item:not(.ant-btn-compact-first-item):not(.ant-btn-compact-last-item){border-radius:0;}.ant-btn-compact-item:not(.ant-btn-compact-last-item).ant-btn-compact-first-item,.ant-btn-compact-item:not(.ant-btn-compact-last-item).ant-btn-compact-first-item.ant-btn-sm,.ant-btn-compact-item:not(.ant-btn-compact-last-item).ant-btn-compact-first-item.ant-btn-lg{border-start-end-radius:0;border-end-end-radius:0;}.ant-btn-compact-item:not(.ant-btn-compact-first-item).ant-btn-compact-last-item,.ant-btn-compact-item:not(.ant-btn-compact-first-item).ant-btn-compact-last-item.ant-btn-sm,.ant-btn-compact-item:not(.ant-btn-compact-first-item).ant-btn-compact-last-item.ant-btn-lg{border-start-start-radius:0;border-end-start-radius:0;}.ant-btn-compact-vertical-item:not(.ant-btn-compact-vertical-last-item){margin-bottom:-1px;}.ant-btn-compact-vertical-item:hover,.ant-btn-compact-vertical-item:focus,.ant-btn-compact-vertical-item:active{z-index:2;}.ant-btn-compact-vertical-item[disabled]{z-index:0;}.ant-btn-compact-vertical-item:not(.ant-btn-compact-vertical-first-item):not(.ant-btn-compact-vertical-last-item){border-radius:0;}.ant-btn-compact-vertical-item.ant-btn-compact-vertical-first-item:not(.ant-btn-compact-vertical-last-item),.ant-btn-compact-vertical-item.ant-btn-compact-vertical-first-item:not(.ant-btn-compact-vertical-last-item).ant-btn-sm,.ant-btn-compact-vertical-item.ant-btn-compact-vertical-first-item:not(.ant-btn-compact-vertical-last-item).ant-btn-lg{border-end-end-radius:0;border-end-start-radius:0;}.ant-btn-compact-vertical-item.ant-btn-compact-vertical-last-item:not(.ant-btn-compact-vertical-first-item),.ant-btn-compact-vertical-item.ant-btn-compact-vertical-last-item:not(.ant-btn-compact-vertical-first-item).ant-btn-sm,.ant-btn-compact-vertical-item.ant-btn-compact-vertical-last-item:not(.ant-btn-compact-vertical-first-item).ant-btn-lg{border-start-start-radius:0;border-start-end-radius:0;}[class^=\\"ant-wave\\"],[class*=\\" ant-wave\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-wave\\"]::before,[class*=\\" ant-wave\\"]::before,[class^=\\"ant-wave\\"]::after,[class*=\\" ant-wave\\"]::after{box-sizing:border-box;}[class^=\\"ant-wave\\"] [class^=\\"ant-wave\\"],[class*=\\" ant-wave\\"] [class^=\\"ant-wave\\"],[class^=\\"ant-wave\\"] [class*=\\" ant-wave\\"],[class*=\\" ant-wave\\"] [class*=\\" ant-wave\\"]{box-sizing:border-box;}[class^=\\"ant-wave\\"] [class^=\\"ant-wave\\"]::before,[class*=\\" ant-wave\\"] [class^=\\"ant-wave\\"]::before,[class^=\\"ant-wave\\"] [class*=\\" ant-wave\\"]::before,[class*=\\" ant-wave\\"] [class*=\\" ant-wave\\"]::before,[class^=\\"ant-wave\\"] [class^=\\"ant-wave\\"]::after,[class*=\\" ant-wave\\"] [class^=\\"ant-wave\\"]::after,[class^=\\"ant-wave\\"] [class*=\\" ant-wave\\"]::after,[class*=\\" ant-wave\\"] [class*=\\" ant-wave\\"]::after{box-sizing:border-box;}.ant-wave{position:absolute;background:transparent;pointer-events:none;box-sizing:border-box;color:var(--wave-color, #037003);box-shadow:0 0 0 0 currentcolor;opacity:0.2;}.ant-wave.wave-motion-appear{transition:box-shadow 0.4s cubic-bezier(0.08, 0.82, 0.17, 1),opacity 2s cubic-bezier(0.08, 0.82, 0.17, 1);}.ant-wave.wave-motion-appear-active{box-shadow:0 0 0 6px currentcolor;opacity:0;}[class^=\\"ant-picker\\"],[class*=\\" ant-picker\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-picker\\"]::before,[class*=\\" ant-picker\\"]::before,[class^=\\"ant-picker\\"]::after,[class*=\\" ant-picker\\"]::after{box-sizing:border-box;}[class^=\\"ant-picker\\"] [class^=\\"ant-picker\\"],[class*=\\" ant-picker\\"] [class^=\\"ant-picker\\"],[class^=\\"ant-picker\\"] [class*=\\" ant-picker\\"],[class*=\\" ant-picker\\"] [class*=\\" ant-picker\\"]{box-sizing:border-box;}[class^=\\"ant-picker\\"] [class^=\\"ant-picker\\"]::before,[class*=\\" ant-picker\\"] [class^=\\"ant-picker\\"]::before,[class^=\\"ant-picker\\"] [class*=\\" ant-picker\\"]::before,[class*=\\" ant-picker\\"] [class*=\\" ant-picker\\"]::before,[class^=\\"ant-picker\\"] [class^=\\"ant-picker\\"]::after,[class*=\\" ant-picker\\"] [class^=\\"ant-picker\\"]::after,[class^=\\"ant-picker\\"] [class*=\\" ant-picker\\"]::after,[class*=\\" ant-picker\\"] [class*=\\" ant-picker\\"]::after{box-sizing:border-box;}.ant-picker-calendar{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';background:#141414;}.ant-picker-calendar .ant-picker-panel{display:inline-flex;flex-direction:column;text-align:center;background:#141414;border:1px solid rgba(253, 253, 253, 0.12);border-radius:8px;outline:none;}.ant-picker-calendar .ant-picker-panel-focused{border-color:#037003;}.ant-picker-calendar .ant-picker-panel-rtl{direction:rtl;}.ant-picker-calendar .ant-picker-panel-rtl .ant-picker-prev-icon,.ant-picker-calendar .ant-picker-panel-rtl .ant-picker-super-prev-icon{transform:rotate(45deg);}.ant-picker-calendar .ant-picker-panel-rtl .ant-picker-next-icon,.ant-picker-calendar .ant-picker-panel-rtl .ant-picker-super-next-icon{transform:rotate(-135deg);}.ant-picker-calendar .ant-picker-decade-panel,.ant-picker-calendar .ant-picker-year-panel,.ant-picker-calendar .ant-picker-quarter-panel,.ant-picker-calendar .ant-picker-month-panel,.ant-picker-calendar .ant-picker-week-panel,.ant-picker-calendar .ant-picker-date-panel,.ant-picker-calendar .ant-picker-time-panel{display:flex;flex-direction:column;width:280px;}.ant-picker-calendar .ant-picker-header{display:flex;padding:0 8px;color:rgba(255, 255, 255, 0.85);border-bottom:1px solid rgba(253, 253, 253, 0.12);}.ant-picker-calendar .ant-picker-header >*{flex:none;}.ant-picker-calendar .ant-picker-header button{padding:0;color:rgba(255, 255, 255, 0.45);line-height:40px;background:transparent;border:0;cursor:pointer;transition:color 0.2s;}.ant-picker-calendar .ant-picker-header >button{min-width:1.6em;font-size:14px;}.ant-picker-calendar .ant-picker-header >button:hover{color:rgba(255, 255, 255, 0.85);}.ant-picker-calendar .ant-picker-header-view{flex:auto;font-weight:600;line-height:40px;}.ant-picker-calendar .ant-picker-header-view button{color:inherit;font-weight:inherit;vertical-align:top;}.ant-picker-calendar .ant-picker-header-view button:not(:first-child){margin-inline-start:8px;}.ant-picker-calendar .ant-picker-header-view button:hover{color:#037003;}.ant-picker-calendar .ant-picker-prev-icon,.ant-picker-calendar .ant-picker-next-icon,.ant-picker-calendar .ant-picker-super-prev-icon,.ant-picker-calendar .ant-picker-super-next-icon{position:relative;display:inline-block;width:7px;height:7px;}.ant-picker-calendar .ant-picker-prev-icon::before,.ant-picker-calendar .ant-picker-next-icon::before,.ant-picker-calendar .ant-picker-super-prev-icon::before,.ant-picker-calendar .ant-picker-super-next-icon::before{position:absolute;top:0;inset-inline-start:0;display:inline-block;width:7px;height:7px;border:0 solid currentcolor;border-block-start-width:1.5px;border-block-end-width:0;border-inline-start-width:1.5px;border-inline-end-width:0;content:\\"\\";}.ant-picker-calendar .ant-picker-super-prev-icon::after,.ant-picker-calendar .ant-picker-super-next-icon::after{position:absolute;top:4px;inset-inline-start:4px;display:inline-block;width:7px;height:7px;border:0 solid currentcolor;border-block-start-width:1.5px;border-block-end-width:0;border-inline-start-width:1.5px;border-inline-end-width:0;content:\\"\\";}.ant-picker-calendar .ant-picker-prev-icon,.ant-picker-calendar .ant-picker-super-prev-icon{transform:rotate(-45deg);}.ant-picker-calendar .ant-picker-next-icon,.ant-picker-calendar .ant-picker-super-next-icon{transform:rotate(135deg);}.ant-picker-calendar .ant-picker-content{width:100%;table-layout:fixed;border-collapse:collapse;}.ant-picker-calendar .ant-picker-content th,.ant-picker-calendar .ant-picker-content td{position:relative;min-width:24px;font-weight:normal;}.ant-picker-calendar .ant-picker-content th{height:32px;color:rgba(255, 255, 255, 0.85);vertical-align:middle;}.ant-picker-calendar .ant-picker-cell{padding:4px 0;color:rgba(255, 255, 255, 0.25);cursor:pointer;}.ant-picker-calendar .ant-picker-cell-in-view{color:rgba(255, 255, 255, 0.85);}.ant-picker-calendar .ant-picker-cell::before{position:absolute;top:50%;inset-inline-start:0;inset-inline-end:0;z-index:1;height:24px;transform:translateY(-50%);transition:all 0.3s;content:\\"\\";}.ant-picker-calendar .ant-picker-cell .ant-picker-cell-inner{position:relative;z-index:2;display:inline-block;min-width:24px;height:24px;line-height:24px;border-radius:4px;transition:background 0.2s,border 0.2s;}.ant-picker-calendar .ant-picker-cell:hover:not(.ant-picker-cell-in-view) .ant-picker-cell-inner,.ant-picker-calendar .ant-picker-cell:hover:not(.ant-picker-cell-selected):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end):not(.ant-picker-cell-range-hover-start):not(.ant-picker-cell-range-hover-end) .ant-picker-cell-inner{background:rgba(255, 255, 255, 0.08);}.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner::before{position:absolute;top:0;inset-inline-end:0;bottom:0;inset-inline-start:0;z-index:1;border:1px solid #037003;border-radius:4px;content:\\"\\";}.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-in-range{position:relative;}.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-in-range::before{background:#111911;}.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner{color:#fff;background:#037003;}.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single)::before,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single)::before{background:#111911;}.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-start::before{inset-inline-start:50%;}.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-end::before{inset-inline-end:50%;}.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:not(.ant-picker-cell-in-range):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end)::after,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-hover-end:not(.ant-picker-cell-in-range):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end)::after,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-hover-start.ant-picker-cell-range-start-single::after,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-hover-start.ant-picker-cell-range-start.ant-picker-cell-range-end.ant-picker-cell-range-end-near-hover::after,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-hover-end.ant-picker-cell-range-start.ant-picker-cell-range-end.ant-picker-cell-range-start-near-hover::after,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-hover-end.ant-picker-cell-range-end-single::after,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-in-range)::after{position:absolute;top:50%;z-index:0;height:24px;border-top:1px dashed #06d306;border-bottom:1px dashed #06d306;transform:translateY(-50%);transition:all 0.3s;content:\\"\\";}.ant-picker-calendar .ant-picker-cell-range-hover-start::after,.ant-picker-calendar .ant-picker-cell-range-hover-end::after,.ant-picker-calendar .ant-picker-cell-range-hover::after{inset-inline-end:0;inset-inline-start:2px;}.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover::before,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-start.ant-picker-cell-range-hover::before,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-end.ant-picker-cell-range-hover::before,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single).ant-picker-cell-range-hover-start::before,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single).ant-picker-cell-range-hover-end::before,.ant-picker-panel>:not(.ant-picker-date-panel) .ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start::before,.ant-picker-panel>:not(.ant-picker-date-panel) .ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end::before{background:#2cf92c;}.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single):not(.ant-picker-cell-range-end) .ant-picker-cell-inner{border-start-start-radius:4px;border-end-start-radius:4px;border-start-end-radius:0;border-end-end-radius:0;}.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single):not(.ant-picker-cell-range-start) .ant-picker-cell-inner{border-start-start-radius:0;border-end-start-radius:0;border-start-end-radius:4px;border-end-end-radius:4px;}.ant-picker-calendar .ant-picker-cell-range-hover.ant-picker-cell-range-end::after{inset-inline-start:50%;}tr>.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-hover:first-child::after,tr>.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-hover-end:first-child::after,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start.ant-picker-cell-range-hover-edge-start-near-range::after,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover-edge-start-near-range)::after,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-hover-start::after{inset-inline-start:6px;border-inline-start:1px dashed #06d306;border-start-start-radius:1px;border-end-start-radius:1px;}tr>.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-hover:last-child::after,tr>.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::after,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-edge-end.ant-picker-cell-range-hover-edge-end-near-range::after,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover-edge-end-near-range)::after,.ant-picker-calendar .ant-picker-cell-in-view.ant-picker-cell-range-hover-end::after{inset-inline-end:6px;border-inline-end:1px dashed #06d306;border-start-end-radius:1px;border-end-end-radius:1px;}.ant-picker-calendar .ant-picker-cell-disabled{color:rgba(255, 255, 255, 0.25);pointer-events:none;}.ant-picker-calendar .ant-picker-cell-disabled .ant-picker-cell-inner{background:transparent;}.ant-picker-calendar .ant-picker-cell-disabled::before{background:rgba(255, 255, 255, 0.08);}.ant-picker-calendar .ant-picker-cell-disabled.ant-picker-cell-today .ant-picker-cell-inner::before{border-color:rgba(255, 255, 255, 0.25);}.ant-picker-calendar .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner::after,.ant-picker-calendar .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner::after{position:absolute;top:0;bottom:0;z-index:-1;background:#2cf92c;transition:all 0.3s;content:\\"\\";}.ant-picker-calendar .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner::after{inset-inline-end:-6px;inset-inline-start:0;}.ant-picker-calendar .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner::after{inset-inline-end:0;inset-inline-start:-6px;}.ant-picker-calendar .ant-picker-range-hover.ant-picker-range-start::after{inset-inline-end:50%;}.ant-picker-calendar .ant-picker-decade-panel .ant-picker-content,.ant-picker-calendar .ant-picker-year-panel .ant-picker-content,.ant-picker-calendar .ant-picker-quarter-panel .ant-picker-content,.ant-picker-calendar .ant-picker-month-panel .ant-picker-content{height:264px;}.ant-picker-calendar .ant-picker-decade-panel .ant-picker-cell-inner,.ant-picker-calendar .ant-picker-year-panel .ant-picker-cell-inner,.ant-picker-calendar .ant-picker-quarter-panel .ant-picker-cell-inner,.ant-picker-calendar .ant-picker-month-panel .ant-picker-cell-inner{padding:0 8px;}.ant-picker-calendar .ant-picker-quarter-panel .ant-picker-content{height:56px;}.ant-picker-calendar .ant-picker-panel .ant-picker-footer{border-top:1px solid rgba(253, 253, 253, 0.12);}.ant-picker-calendar .ant-picker-footer{width:min-content;min-width:100%;line-height:38px;text-align:center;}.ant-picker-calendar .ant-picker-footer-extra{padding:0 12;line-height:38px;text-align:start;}.ant-picker-calendar .ant-picker-footer-extra:not(:last-child){border-bottom:1px solid rgba(253, 253, 253, 0.12);}.ant-picker-calendar .ant-picker-now{text-align:start;}.ant-picker-calendar .ant-picker-today-btn{color:#1668dc;}.ant-picker-calendar .ant-picker-today-btn:hover{color:#15417e;}.ant-picker-calendar .ant-picker-today-btn:active{color:#1554ad;}.ant-picker-calendar .ant-picker-today-btn.ant-picker-today-btn-disabled{color:rgba(255, 255, 255, 0.25);cursor:not-allowed;}.ant-picker-calendar .ant-picker-decade-panel .ant-picker-cell-inner{padding:0 4px;}.ant-picker-calendar .ant-picker-decade-panel .ant-picker-cell::before{display:none;}.ant-picker-calendar .ant-picker-year-panel .ant-picker-body,.ant-picker-calendar .ant-picker-quarter-panel .ant-picker-body,.ant-picker-calendar .ant-picker-month-panel .ant-picker-body{padding:0 8px;}.ant-picker-calendar .ant-picker-year-panel .ant-picker-cell-inner,.ant-picker-calendar .ant-picker-quarter-panel .ant-picker-cell-inner,.ant-picker-calendar .ant-picker-month-panel .ant-picker-cell-inner{width:60px;}.ant-picker-calendar .ant-picker-year-panel .ant-picker-cell-range-hover-start::after,.ant-picker-calendar .ant-picker-quarter-panel .ant-picker-cell-range-hover-start::after,.ant-picker-calendar .ant-picker-month-panel .ant-picker-cell-range-hover-start::after{inset-inline-start:16px;border-inline-start:1px dashed #06d306;border-start-start-radius:4px;border-bottom-start-radius:4px;border-start-end-radius:0;border-bottom-end-radius:0;}.ant-picker-panel-rtl .ant-picker-calendar .ant-picker-year-panel .ant-picker-cell-range-hover-start::after,.ant-picker-panel-rtl .ant-picker-calendar .ant-picker-quarter-panel .ant-picker-cell-range-hover-start::after,.ant-picker-panel-rtl .ant-picker-calendar .ant-picker-month-panel .ant-picker-cell-range-hover-start::after{inset-inline-end:16px;border-inline-end:1px dashed #06d306;border-start-start-radius:0;border-bottom-start-radius:0;border-start-end-radius:4px;border-bottom-end-radius:4px;}.ant-picker-calendar .ant-picker-year-panel .ant-picker-cell-range-hover-end::after,.ant-picker-calendar .ant-picker-quarter-panel .ant-picker-cell-range-hover-end::after,.ant-picker-calendar .ant-picker-month-panel .ant-picker-cell-range-hover-end::after{inset-inline-end:16px;border-inline-end:1px dashed #06d306;border-start-start-radius:0;border-end-start-radius:0;border-start-end-radius:6px;border-end-end-radius:6px;}.ant-picker-panel-rtl .ant-picker-calendar .ant-picker-year-panel .ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl .ant-picker-calendar .ant-picker-quarter-panel .ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl .ant-picker-calendar .ant-picker-month-panel .ant-picker-cell-range-hover-end::after{inset-inline-start:16px;border-inline-start:1px dashed #06d306;border-start-start-radius:6px;border-end-start-radius:6px;border-start-end-radius:0;border-end-end-radius:0;}.ant-picker-calendar .ant-picker-week-panel .ant-picker-body{padding:8px 12px;}.ant-picker-calendar .ant-picker-week-panel .ant-picker-cell:hover .ant-picker-cell-inner,.ant-picker-calendar .ant-picker-week-panel .ant-picker-cell-selected .ant-picker-cell-inner,.ant-picker-calendar .ant-picker-week-panel .ant-picker-cell .ant-picker-cell-inner{background:transparent!important;}.ant-picker-calendar .ant-picker-week-panel-row td{transition:background 0.2s;}.ant-picker-calendar .ant-picker-week-panel-row td:first-child{border-start-start-radius:4px;border-end-start-radius:4px;}.ant-picker-calendar .ant-picker-week-panel-row td:last-child{border-start-end-radius:4px;border-end-end-radius:4px;}.ant-picker-calendar .ant-picker-week-panel-row:hover td{background:rgba(255, 255, 255, 0.08);}.ant-picker-calendar .ant-picker-week-panel-row-selected td,.ant-picker-calendar .ant-picker-week-panel-row-selected:hover td{background:#037003;}.ant-picker-calendar .ant-picker-week-panel-row-selected td.ant-picker-cell-week,.ant-picker-calendar .ant-picker-week-panel-row-selected:hover td.ant-picker-cell-week{color:#ffffff;}.ant-picker-calendar .ant-picker-week-panel-row-selected td.ant-picker-cell-today .ant-picker-cell-inner::before,.ant-picker-calendar .ant-picker-week-panel-row-selected:hover td.ant-picker-cell-today .ant-picker-cell-inner::before{border-color:#fff;}.ant-picker-calendar .ant-picker-week-panel-row-selected td .ant-picker-cell-inner,.ant-picker-calendar .ant-picker-week-panel-row-selected:hover td .ant-picker-cell-inner{color:#fff;}.ant-picker-calendar .ant-picker-date-panel .ant-picker-body{padding:8px 12px;}.ant-picker-calendar .ant-picker-date-panel .ant-picker-content{width:252px;}.ant-picker-calendar .ant-picker-date-panel .ant-picker-content th{width:36px;}.ant-picker-calendar .ant-picker-datetime-panel{display:flex;}.ant-picker-calendar .ant-picker-datetime-panel .ant-picker-time-panel{border-inline-start:1px solid rgba(253, 253, 253, 0.12);}.ant-picker-calendar .ant-picker-datetime-panel .ant-picker-date-panel,.ant-picker-calendar .ant-picker-datetime-panel .ant-picker-time-panel{transition:opacity 0.3s;}.ant-picker-calendar .ant-picker-datetime-panel-active .ant-picker-date-panel,.ant-picker-calendar .ant-picker-datetime-panel-active .ant-picker-time-panel{opacity:0.3;}.ant-picker-calendar .ant-picker-datetime-panel-active .ant-picker-date-panel-active,.ant-picker-calendar .ant-picker-datetime-panel-active .ant-picker-time-panel-active{opacity:1;}.ant-picker-calendar .ant-picker-time-panel{width:auto;min-width:auto;direction:ltr;}.ant-picker-calendar .ant-picker-time-panel .ant-picker-content{display:flex;flex:auto;height:224px;}.ant-picker-calendar .ant-picker-time-panel-column{flex:1 0 auto;width:56px;margin:4px 0;padding:0;overflow-y:hidden;text-align:start;list-style:none;transition:background 0.2s;overflow-x:hidden;}.ant-picker-calendar .ant-picker-time-panel-column::after{display:block;height:196px;content:\\"\\";}.ant-picker-calendar .ant-picker-time-panel-column:not(:first-child){border-inline-start:1px solid rgba(253, 253, 253, 0.12);}.ant-picker-calendar .ant-picker-time-panel-column-active{background:#111911;}.ant-picker-calendar .ant-picker-time-panel-column:hover{overflow-y:auto;}.ant-picker-calendar .ant-picker-time-panel-column >li{margin:0;padding:0;}.ant-picker-calendar .ant-picker-time-panel-column >li.ant-picker-time-panel-cell{margin-inline:4px;}.ant-picker-calendar .ant-picker-time-panel-column >li.ant-picker-time-panel-cell .ant-picker-time-panel-cell-inner{display:block;width:48px;height:28px;margin:0;padding-block:0;padding-inline-end:0;padding-inline-start:14px;color:rgba(255, 255, 255, 0.85);line-height:28px;border-radius:4px;cursor:pointer;transition:background 0.2s;}.ant-picker-calendar .ant-picker-time-panel-column >li.ant-picker-time-panel-cell .ant-picker-time-panel-cell-inner:hover{background:rgba(255, 255, 255, 0.08);}.ant-picker-calendar .ant-picker-time-panel-column >li.ant-picker-time-panel-cell-selected .ant-picker-time-panel-cell-inner{background:#111911;}.ant-picker-calendar .ant-picker-time-panel-column >li.ant-picker-time-panel-cell-disabled .ant-picker-time-panel-cell-inner{color:rgba(255, 255, 255, 0.25);background:transparent;cursor:not-allowed;}.ant-picker-calendar .ant-picker-datetime-panel .ant-picker-time-panel-column:after{height:204px;}.ant-picker-calendar-rtl{direction:rtl;}.ant-picker-calendar .ant-picker-calendar-header{display:flex;justify-content:flex-end;padding:12px 0;}.ant-picker-calendar .ant-picker-calendar-header .ant-picker-calendar-year-select{min-width:80px;}.ant-picker-calendar .ant-picker-calendar-header .ant-picker-calendar-month-select{min-width:70px;margin-inline-start:8px;}.ant-picker-calendar .ant-picker-calendar-header .ant-picker-calendar-mode-switch{margin-inline-start:8px;}.ant-picker-calendar .ant-picker-panel{background:#141414;border:0;border-top:1px solid rgba(253, 253, 253, 0.12);border-radius:0;}.ant-picker-calendar .ant-picker-panel .ant-picker-month-panel,.ant-picker-calendar .ant-picker-panel .ant-picker-date-panel{width:auto;}.ant-picker-calendar .ant-picker-panel .ant-picker-body{padding:8px 0;}.ant-picker-calendar .ant-picker-panel .ant-picker-content{width:100%;}.ant-picker-calendar-mini{border-radius:8px;}.ant-picker-calendar-mini .ant-picker-calendar-header{padding-inline-end:8px;padding-inline-start:8px;}.ant-picker-calendar-mini .ant-picker-panel{border-radius:0 0 8px 8px;}.ant-picker-calendar-mini .ant-picker-content{height:256px;}.ant-picker-calendar-mini .ant-picker-content th{height:auto;padding:0;line-height:18px;}.ant-picker-calendar-mini .ant-picker-cell::before{pointer-events:none;}.ant-picker-calendar.ant-picker-calendar-full .ant-picker-panel{display:block;width:100%;text-align:end;background:#141414;border:0;}.ant-picker-calendar.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th,.ant-picker-calendar.ant-picker-calendar-full .ant-picker-panel .ant-picker-body td{padding:0;}.ant-picker-calendar.ant-picker-calendar-full .ant-picker-panel .ant-picker-body th{height:auto;padding-inline-end:12px;padding-bottom:4px;line-height:18px;}.ant-picker-calendar.ant-picker-calendar-full .ant-picker-cell::before{display:none;}.ant-picker-calendar.ant-picker-calendar-full .ant-picker-cell:hover .ant-picker-calendar-date{background:rgba(255, 255, 255, 0.08);}.ant-picker-calendar.ant-picker-calendar-full .ant-picker-cell .ant-picker-calendar-date-today::before{display:none;}.ant-picker-calendar.ant-picker-calendar-full .ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-calendar-date,.ant-picker-calendar.ant-picker-calendar-full .ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-calendar-date-today{background:#111911;}.ant-picker-calendar.ant-picker-calendar-full .ant-picker-cell-selected .ant-picker-calendar-date .ant-picker-calendar-date-value,.ant-picker-calendar.ant-picker-calendar-full .ant-picker-cell-selected:hover .ant-picker-calendar-date .ant-picker-calendar-date-value,.ant-picker-calendar.ant-picker-calendar-full .ant-picker-cell-selected .ant-picker-calendar-date-today .ant-picker-calendar-date-value,.ant-picker-calendar.ant-picker-calendar-full .ant-picker-cell-selected:hover .ant-picker-calendar-date-today .ant-picker-calendar-date-value{color:#037003;}.ant-picker-calendar.ant-picker-calendar-full .ant-picker-calendar-date{display:block;width:auto;height:auto;margin:0 4px;padding:4px 8px 0;border:0;border-top:2px solid rgba(253, 253, 253, 0.12);border-radius:0;transition:background 0.3s;}.ant-picker-calendar.ant-picker-calendar-full .ant-picker-calendar-date-value{line-height:24px;transition:color 0.3s;}.ant-picker-calendar.ant-picker-calendar-full .ant-picker-calendar-date-content{position:static;width:auto;height:86px;overflow-y:auto;color:rgba(255, 255, 255, 0.85);line-height:1.5714285714285714;text-align:start;}.ant-picker-calendar.ant-picker-calendar-full .ant-picker-calendar-date-today{border-color:#037003;}.ant-picker-calendar.ant-picker-calendar-full .ant-picker-calendar-date-today .ant-picker-calendar-date-value{color:rgba(255, 255, 255, 0.85);}@media only screen and (max-width: 480px){.ant-picker-calendar .ant-picker-calendar-header{display:block;}.ant-picker-calendar .ant-picker-calendar-header .ant-picker-calendar-year-select{width:50%;}.ant-picker-calendar .ant-picker-calendar-header .ant-picker-calendar-month-select{width:calc(50% - 8px);}.ant-picker-calendar .ant-picker-calendar-header .ant-picker-calendar-mode-switch{width:100%;margin-top:8px;margin-inline-start:0;}.ant-picker-calendar .ant-picker-calendar-header .ant-picker-calendar-mode-switch >label{width:50%;text-align:center;}}[class^=\\"ant-radio\\"],[class*=\\" ant-radio\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-radio\\"]::before,[class*=\\" ant-radio\\"]::before,[class^=\\"ant-radio\\"]::after,[class*=\\" ant-radio\\"]::after{box-sizing:border-box;}[class^=\\"ant-radio\\"] [class^=\\"ant-radio\\"],[class*=\\" ant-radio\\"] [class^=\\"ant-radio\\"],[class^=\\"ant-radio\\"] [class*=\\" ant-radio\\"],[class*=\\" ant-radio\\"] [class*=\\" ant-radio\\"]{box-sizing:border-box;}[class^=\\"ant-radio\\"] [class^=\\"ant-radio\\"]::before,[class*=\\" ant-radio\\"] [class^=\\"ant-radio\\"]::before,[class^=\\"ant-radio\\"] [class*=\\" ant-radio\\"]::before,[class*=\\" ant-radio\\"] [class*=\\" ant-radio\\"]::before,[class^=\\"ant-radio\\"] [class^=\\"ant-radio\\"]::after,[class*=\\" ant-radio\\"] [class^=\\"ant-radio\\"]::after,[class^=\\"ant-radio\\"] [class*=\\" ant-radio\\"]::after,[class*=\\" ant-radio\\"] [class*=\\" ant-radio\\"]::after{box-sizing:border-box;}.ant-radio-group{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:0;line-height:1.5714285714285714;list-style:none;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';display:inline-block;}.ant-radio-group.ant-radio-group-rtl{direction:rtl;}.ant-radio-group .ant-badge .ant-badge-count{z-index:1;}.ant-radio-group >.ant-badge:not(:first-child)>.ant-button-wrapper{border-inline-start:none;}.ant-radio-wrapper{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:relative;display:inline-flex;align-items:baseline;margin-inline-start:0;margin-inline-end:8px;cursor:pointer;}.ant-radio-wrapper.ant-radio-wrapper-rtl{direction:rtl;}.ant-radio-wrapper-disabled{cursor:not-allowed;color:rgba(255, 255, 255, 0.25);}.ant-radio-wrapper::after{display:inline-block;width:0;overflow:hidden;content:\\"\\\\a0\\";}.ant-radio-wrapper .ant-radio-checked::after{position:absolute;inset-block-start:0;inset-inline-start:0;width:100%;height:100%;border:1px solid #037003;border-radius:50%;visibility:hidden;animation-name:antRadioEffect;animation-duration:0.3s;animation-timing-function:cubic-bezier(0.645, 0.045, 0.355, 1);animation-fill-mode:both;content:\\"\\";}.ant-radio-wrapper .ant-radio{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:relative;display:inline-block;outline:none;cursor:pointer;align-self:center;}.ant-radio-wrapper:hover .ant-radio-wrapper,.ant-radio-wrapper:hover .ant-radio-inner{border-color:#037003;}.ant-radio-wrapper .ant-radio-input:focus-visible+.ant-radio-inner{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-radio-wrapper .ant-radio:hover::after,.ant-radio-wrapper:hover .ant-radio-wrapper::after{visibility:visible;}.ant-radio-wrapper .ant-radio-inner{box-sizing:border-box;position:relative;inset-block-start:0;inset-inline-start:0;display:block;width:16px;height:16px;background-color:#141414;border-color:#424242;border-style:solid;border-width:1px;border-radius:50%;transition:all 0.2s;}.ant-radio-wrapper .ant-radio-inner::after{box-sizing:border-box;position:absolute;inset-block-start:50%;inset-inline-start:50%;display:block;width:16px;height:16px;margin-block-start:-8px;margin-inline-start:-8px;background-color:#fff;border-block-start:0;border-inline-start:0;border-radius:16px;transform:scale(0);opacity:0;transition:all 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);content:\\"\\";}.ant-radio-wrapper .ant-radio-input{position:absolute;inset-block-start:0;inset-inline-end:0;inset-block-end:0;inset-inline-start:0;z-index:1;cursor:pointer;opacity:0;}.ant-radio-wrapper .ant-radio-checked .ant-radio-inner{border-color:#037003;background-color:#037003;}.ant-radio-wrapper .ant-radio-checked .ant-radio-inner::after{transform:scale(0.375);opacity:1;transition:all 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);}.ant-radio-wrapper .ant-radio-disabled{cursor:not-allowed;}.ant-radio-wrapper .ant-radio-disabled .ant-radio-inner{background-color:rgba(255, 255, 255, 0.08);border-color:#424242;cursor:not-allowed;}.ant-radio-wrapper .ant-radio-disabled .ant-radio-inner::after{background-color:rgba(255, 255, 255, 0.25);}.ant-radio-wrapper .ant-radio-disabled .ant-radio-input{cursor:not-allowed;}.ant-radio-wrapper .ant-radio-disabled .ant-radio-disabled+span{color:rgba(255, 255, 255, 0.25);cursor:not-allowed;}.ant-radio-wrapper .ant-radio-disabled.ant-radio-checked .ant-radio-inner::after{transform:scale(0.5);}.ant-radio-wrapper span.ant-radio+*{padding-inline-start:8px;padding-inline-end:8px;}.ant-radio-button-wrapper{position:relative;display:inline-block;height:32px;margin:0;padding-inline:15px;padding-block:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:30px;background:#141414;border:1px solid #424242;border-block-start-width:1.02px;border-inline-start-width:0;border-inline-end-width:1px;cursor:pointer;transition:color 0.2s,background 0.2s,border-color 0.2s,box-shadow 0.2s;}.ant-radio-button-wrapper a{color:rgba(255, 255, 255, 0.85);}.ant-radio-button-wrapper >.ant-radio-button{position:absolute;inset-block-start:0;inset-inline-start:0;z-index:-1;width:100%;height:100%;}.ant-radio-button-wrapper:not(:first-child)::before{position:absolute;inset-block-start:-1px;inset-inline-start:-1px;display:block;box-sizing:content-box;width:1px;height:100%;padding-block:1px;padding-inline:0;background-color:#424242;transition:background-color 0.3s;content:\\"\\";}.ant-radio-button-wrapper:first-child{border-inline-start:1px solid #424242;border-start-start-radius:6px;border-end-start-radius:6px;}.ant-radio-button-wrapper:last-child{border-start-end-radius:6px;border-end-end-radius:6px;}.ant-radio-button-wrapper:first-child:last-child{border-radius:6px;}.ant-radio-group-large .ant-radio-button-wrapper{height:40px;font-size:16px;line-height:38px;}.ant-radio-group-large .ant-radio-button-wrapper:first-child{border-start-start-radius:8px;border-end-start-radius:8px;}.ant-radio-group-large .ant-radio-button-wrapper:last-child{border-start-end-radius:8px;border-end-end-radius:8px;}.ant-radio-group-small .ant-radio-button-wrapper{height:24px;padding-inline:7px;padding-block:0;line-height:22px;}.ant-radio-group-small .ant-radio-button-wrapper:first-child{border-start-start-radius:4px;border-end-start-radius:4px;}.ant-radio-group-small .ant-radio-button-wrapper:last-child{border-start-end-radius:4px;border-end-end-radius:4px;}.ant-radio-button-wrapper:hover{position:relative;color:#037003;}.ant-radio-button-wrapper:has(:focus-visible){outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-radio-button-wrapper .ant-radio-inner,.ant-radio-button-wrapper input[type='checkbox'],.ant-radio-button-wrapper input[type='radio']{width:0;height:0;opacity:0;pointer-events:none;}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){z-index:1;color:#037003;background:#141414;border-color:#037003;}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled)::before{background-color:#037003;}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):first-child{border-color:#037003;}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover{color:#198016;border-color:#198016;}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover::before{background-color:#198016;}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active{color:#075a07;border-color:#075a07;}.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active::before{background-color:#075a07;}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled){color:#fff;background:#037003;border-color:#037003;}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover{color:#fff;background:#198016;border-color:#198016;}.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active{color:#fff;background:#075a07;border-color:#075a07;}.ant-radio-button-wrapper-disabled{color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);border-color:#424242;cursor:not-allowed;}.ant-radio-button-wrapper-disabled:first-child,.ant-radio-button-wrapper-disabled:hover{color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);border-color:#424242;}.ant-radio-button-wrapper-disabled.ant-radio-button-wrapper-checked{color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.18);border-color:#424242;box-shadow:none;}@keyframes antRadioEffect{0%{transform:scale(1);opacity:0.5;}100%{transform:scale(1.6);opacity:0;}}[class^=\\"ant-card\\"],[class*=\\" ant-card\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-card\\"]::before,[class*=\\" ant-card\\"]::before,[class^=\\"ant-card\\"]::after,[class*=\\" ant-card\\"]::after{box-sizing:border-box;}[class^=\\"ant-card\\"] [class^=\\"ant-card\\"],[class*=\\" ant-card\\"] [class^=\\"ant-card\\"],[class^=\\"ant-card\\"] [class*=\\" ant-card\\"],[class*=\\" ant-card\\"] [class*=\\" ant-card\\"]{box-sizing:border-box;}[class^=\\"ant-card\\"] [class^=\\"ant-card\\"]::before,[class*=\\" ant-card\\"] [class^=\\"ant-card\\"]::before,[class^=\\"ant-card\\"] [class*=\\" ant-card\\"]::before,[class*=\\" ant-card\\"] [class*=\\" ant-card\\"]::before,[class^=\\"ant-card\\"] [class^=\\"ant-card\\"]::after,[class*=\\" ant-card\\"] [class^=\\"ant-card\\"]::after,[class^=\\"ant-card\\"] [class*=\\" ant-card\\"]::after,[class*=\\" ant-card\\"] [class*=\\" ant-card\\"]::after{box-sizing:border-box;}.ant-card{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:relative;background:#141414;border-radius:8px;}.ant-card:not(.ant-card-bordered){box-shadow: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-card .ant-card-head{display:flex;justify-content:center;flex-direction:column;min-height:56px;margin-bottom:-1px;padding:0 24px;color:rgba(255, 255, 255, 0.85);font-weight:600;font-size:16px;background:transparent;border-bottom:1px solid #303030;border-radius:8px 8px 0 0;}.ant-card .ant-card-head::before{display:table;content:\\"\\";}.ant-card .ant-card-head::after{display:table;clear:both;content:\\"\\";}.ant-card .ant-card-head-wrapper{width:100%;display:flex;align-items:center;}.ant-card .ant-card-head-title{display:inline-block;flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}.ant-card .ant-card-head-title >.ant-card-typography,.ant-card .ant-card-head-title >.ant-card-typography-edit-content{inset-inline-start:0;margin-top:0;margin-bottom:0;}.ant-card .ant-card-head .ant-tabs-top{clear:both;margin-bottom:-17px;color:rgba(255, 255, 255, 0.85);font-weight:normal;font-size:14px;}.ant-card .ant-card-head .ant-tabs-top-bar{border-bottom:1px solid #303030;}.ant-card .ant-card-extra{margin-inline-start:auto;font-weight:normal;font-size:14px;}.ant-card .ant-card-body{padding:24px;border-radius:0 0 8px 8px;}.ant-card .ant-card-body::before{display:table;content:\\"\\";}.ant-card .ant-card-body::after{display:table;clear:both;content:\\"\\";}.ant-card .ant-card-grid{width:33.33%;padding:24px;border:0;border-radius:0;box-shadow:1px 0 0 0 #303030,0 1px 0 0 #303030,1px 1px 0 0 #303030,1px 0 0 0 #303030 inset,0 1px 0 0 #303030 inset;transition:all 0.2s;}.ant-card .ant-card-grid-hoverable:hover{position:relative;z-index:1;box-shadow: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-card .ant-card-cover >*{display:block;width:100%;}.ant-card .ant-card-cover img{border-radius:8px 8px 0 0;}.ant-card .ant-card-actions{margin:0;padding:0;list-style:none;background:#141414;border-top:1px solid #303030;display:flex;border-radius:0 0 8px 8px;}.ant-card .ant-card-actions::before{display:table;content:\\"\\";}.ant-card .ant-card-actions::after{display:table;clear:both;content:\\"\\";}.ant-card .ant-card-actions>li{margin:12px 0;color:rgba(255, 255, 255, 0.45);text-align:center;}.ant-card .ant-card-actions>li >span{position:relative;display:block;min-width:28px;font-size:14px;line-height:1.5714285714285714;cursor:pointer;}.ant-card .ant-card-actions>li >span:hover{color:#037003;transition:color 0.2s;}.ant-card .ant-card-actions>li >span a:not(.ant-card-btn),.ant-card .ant-card-actions>li >span >.anticon{display:inline-block;width:100%;color:rgba(255, 255, 255, 0.45);line-height:22px;transition:color 0.2s;}.ant-card .ant-card-actions>li >span a:not(.ant-card-btn):hover,.ant-card .ant-card-actions>li >span >.anticon:hover{color:#037003;}.ant-card .ant-card-actions>li >span >.anticon{font-size:14px;line-height:22px;}.ant-card .ant-card-actions>li:not(:last-child){border-inline-end:1px solid #303030;}.ant-card .ant-card-meta{margin:-4px 0;display:flex;}.ant-card .ant-card-meta::before{display:table;content:\\"\\";}.ant-card .ant-card-meta::after{display:table;clear:both;content:\\"\\";}.ant-card .ant-card-meta-avatar{padding-inline-end:16px;}.ant-card .ant-card-meta-detail{overflow:hidden;flex:1;}.ant-card .ant-card-meta-detail >div:not(:last-child){margin-bottom:8px;}.ant-card .ant-card-meta-title{color:rgba(255, 255, 255, 0.85);font-weight:600;font-size:16px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}.ant-card .ant-card-meta-description{color:rgba(255, 255, 255, 0.45);}.ant-card-bordered{border:1px solid #303030;}.ant-card-bordered .ant-card-cover{margin-top:-1px;margin-inline-start:-1px;margin-inline-end:-1px;}.ant-card-hoverable{cursor:pointer;transition:box-shadow 0.2s,border-color 0.2s;}.ant-card-hoverable:hover{border-color:transparent;box-shadow: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-card-contain-grid .ant-card-body{display:flex;flex-wrap:wrap;}.ant-card-contain-grid:not(.ant-card-loading) .ant-card-body{margin-block-start:-1px;margin-inline-start:-1px;padding:0;}.ant-card-contain-tabs >.ant-card-head .ant-card-head-title,.ant-card-contain-tabs >.ant-card-head .ant-card-extra{padding-top:16px;}.ant-card-type-inner .ant-card-head{padding:0 24px;background:rgba(255, 255, 255, 0.04);}.ant-card-type-inner .ant-card-head-title{font-size:14px;}.ant-card-type-inner .ant-card-body{padding:16px 24px;}.ant-card-loading{overflow:hidden;}.ant-card-loading .ant-card-body{user-select:none;}.ant-card-rtl{direction:rtl;}.ant-card-small >.ant-card-head{min-height:38px;padding:0 12px;font-size:14px;}.ant-card-small >.ant-card-head >.ant-card-head-wrapper >.ant-card-extra{font-size:14px;}.ant-card-small >.ant-card-body{padding:12px;}.ant-card-small.ant-card-contain-tabs >.ant-card-head .ant-card-head-title,.ant-card-small.ant-card-contain-tabs >.ant-card-head .ant-card-extra{min-height:38px;padding-top:0;display:flex;align-items:center;}[class^=\\"ant-collapse\\"],[class*=\\" ant-collapse\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-collapse\\"]::before,[class*=\\" ant-collapse\\"]::before,[class^=\\"ant-collapse\\"]::after,[class*=\\" ant-collapse\\"]::after{box-sizing:border-box;}[class^=\\"ant-collapse\\"] [class^=\\"ant-collapse\\"],[class*=\\" ant-collapse\\"] [class^=\\"ant-collapse\\"],[class^=\\"ant-collapse\\"] [class*=\\" ant-collapse\\"],[class*=\\" ant-collapse\\"] [class*=\\" ant-collapse\\"]{box-sizing:border-box;}[class^=\\"ant-collapse\\"] [class^=\\"ant-collapse\\"]::before,[class*=\\" ant-collapse\\"] [class^=\\"ant-collapse\\"]::before,[class^=\\"ant-collapse\\"] [class*=\\" ant-collapse\\"]::before,[class*=\\" ant-collapse\\"] [class*=\\" ant-collapse\\"]::before,[class^=\\"ant-collapse\\"] [class^=\\"ant-collapse\\"]::after,[class*=\\" ant-collapse\\"] [class^=\\"ant-collapse\\"]::after,[class^=\\"ant-collapse\\"] [class*=\\" ant-collapse\\"]::after,[class*=\\" ant-collapse\\"] [class*=\\" ant-collapse\\"]::after{box-sizing:border-box;}.ant-collapse{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';background-color:rgba(255, 255, 255, 0.04);border:1px solid #424242;border-bottom:0;border-radius:8px;}.ant-collapse-rtl{direction:rtl;}.ant-collapse>.ant-collapse-item{border-bottom:1px solid #424242;}.ant-collapse>.ant-collapse-item:last-child,.ant-collapse>.ant-collapse-item:last-child>.ant-collapse-header{border-radius:0 0 8px 8px;}.ant-collapse>.ant-collapse-item >.ant-collapse-header{position:relative;display:flex;flex-wrap:nowrap;align-items:flex-start;padding:12px 16px;color:rgba(255, 255, 255, 0.85);line-height:1.5714285714285714;cursor:pointer;transition:all 0.3s,visibility 0s;}.ant-collapse>.ant-collapse-item >.ant-collapse-header >.ant-collapse-header-text{flex:auto;}.ant-collapse>.ant-collapse-item >.ant-collapse-header:focus{outline:none;}.ant-collapse>.ant-collapse-item >.ant-collapse-header .ant-collapse-expand-icon{height:22px;display:flex;align-items:center;padding-inline-end:12px;}.ant-collapse>.ant-collapse-item >.ant-collapse-header .ant-collapse-arrow{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;font-size:12px;}.ant-collapse>.ant-collapse-item >.ant-collapse-header .ant-collapse-arrow >*{line-height:1;}.ant-collapse>.ant-collapse-item >.ant-collapse-header .ant-collapse-arrow svg{transition:transform 0.3s;}.ant-collapse>.ant-collapse-item >.ant-collapse-header .ant-collapse-header-text{margin-inline-end:auto;}.ant-collapse>.ant-collapse-item .ant-collapse-header-collapsible-only{cursor:default;}.ant-collapse>.ant-collapse-item .ant-collapse-header-collapsible-only .ant-collapse-header-text{flex:none;cursor:pointer;}.ant-collapse>.ant-collapse-item .ant-collapse-header-collapsible-only .ant-collapse-expand-icon{cursor:pointer;}.ant-collapse>.ant-collapse-item .ant-collapse-icon-collapsible-only{cursor:default;}.ant-collapse>.ant-collapse-item .ant-collapse-icon-collapsible-only .ant-collapse-expand-icon{cursor:pointer;}.ant-collapse>.ant-collapse-item.ant-collapse-no-arrow >.ant-collapse-header{padding-inline-start:12px;}.ant-collapse .ant-collapse-content{color:rgba(255, 255, 255, 0.85);background-color:#141414;border-top:1px solid #424242;}.ant-collapse .ant-collapse-content>.ant-collapse-content-box{padding:16px 16px;}.ant-collapse .ant-collapse-content-hidden{display:none;}.ant-collapse .ant-collapse-item:last-child >.ant-collapse-content{border-radius:0 0 8px 8px;}.ant-collapse .ant-collapse-item-disabled>.ant-collapse-header,.ant-collapse .ant-collapse-item-disabled>.ant-collapse-header>.arrow{color:rgba(255, 255, 255, 0.25);cursor:not-allowed;}.ant-collapse.ant-collapse-icon-position-end>.ant-collapse-item >.ant-collapse-header .ant-collapse-expand-icon{order:1;padding-inline-end:0;padding-inline-start:12px;}.ant-collapse-borderless{background-color:rgba(255, 255, 255, 0.04);border:0;}.ant-collapse-borderless >.ant-collapse-item{border-bottom:1px solid #424242;}.ant-collapse-borderless >.ant-collapse-item:last-child,.ant-collapse-borderless >.ant-collapse-item:last-child .ant-collapse-header{border-radius:0;}.ant-collapse-borderless >.ant-collapse-item:last-child{border-bottom:0;}.ant-collapse-borderless >.ant-collapse-item>.ant-collapse-content{background-color:transparent;border-top:0;}.ant-collapse-borderless >.ant-collapse-item>.ant-collapse-content>.ant-collapse-content-box{padding-top:4px;}.ant-collapse-ghost{background-color:transparent;border:0;}.ant-collapse-ghost >.ant-collapse-item{border-bottom:0;}.ant-collapse-ghost >.ant-collapse-item >.ant-collapse-content{background-color:transparent;border:0;}.ant-collapse-ghost >.ant-collapse-item >.ant-collapse-content >.ant-collapse-content-box{padding-block:12px;}.ant-collapse-rtl >.ant-collapse-item>.ant-collapse-header .ant-collapse-arrow svg{transform:rotate(180deg);}.ant-collapse .ant-motion-collapse-legacy{overflow:hidden;}.ant-collapse .ant-motion-collapse-legacy-active{transition:height 0.2s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.2s cubic-bezier(0.645, 0.045, 0.355, 1)!important;}.ant-collapse .ant-motion-collapse{overflow:hidden;transition:height 0.2s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.2s cubic-bezier(0.645, 0.045, 0.355, 1)!important;}[class^=\\"ant-carousel\\"],[class*=\\" ant-carousel\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-carousel\\"]::before,[class*=\\" ant-carousel\\"]::before,[class^=\\"ant-carousel\\"]::after,[class*=\\" ant-carousel\\"]::after{box-sizing:border-box;}[class^=\\"ant-carousel\\"] [class^=\\"ant-carousel\\"],[class*=\\" ant-carousel\\"] [class^=\\"ant-carousel\\"],[class^=\\"ant-carousel\\"] [class*=\\" ant-carousel\\"],[class*=\\" ant-carousel\\"] [class*=\\" ant-carousel\\"]{box-sizing:border-box;}[class^=\\"ant-carousel\\"] [class^=\\"ant-carousel\\"]::before,[class*=\\" ant-carousel\\"] [class^=\\"ant-carousel\\"]::before,[class^=\\"ant-carousel\\"] [class*=\\" ant-carousel\\"]::before,[class*=\\" ant-carousel\\"] [class*=\\" ant-carousel\\"]::before,[class^=\\"ant-carousel\\"] [class^=\\"ant-carousel\\"]::after,[class*=\\" ant-carousel\\"] [class^=\\"ant-carousel\\"]::after,[class^=\\"ant-carousel\\"] [class*=\\" ant-carousel\\"]::after,[class*=\\" ant-carousel\\"] [class*=\\" ant-carousel\\"]::after{box-sizing:border-box;}.ant-carousel{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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-carousel .slick-slider{position:relative;display:block;box-sizing:border-box;touch-action:pan-y;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;}.ant-carousel .slick-slider .slick-track,.ant-carousel .slick-slider .slick-list{transform:translate3d(0, 0, 0);touch-action:pan-y;}.ant-carousel .slick-list{position:relative;display:block;margin:0;padding:0;overflow:hidden;}.ant-carousel .slick-list:focus{outline:none;}.ant-carousel .slick-list.dragging{cursor:pointer;}.ant-carousel .slick-list .slick-slide{pointer-events:none;}.ant-carousel .slick-list .slick-slide input.ant-radio-input,.ant-carousel .slick-list .slick-slide input.ant-checkbox-input{visibility:hidden;}.ant-carousel .slick-list .slick-slide.slick-active{pointer-events:auto;}.ant-carousel .slick-list .slick-slide.slick-active input.ant-radio-input,.ant-carousel .slick-list .slick-slide.slick-active input.ant-checkbox-input{visibility:visible;}.ant-carousel .slick-list .slick-slide >div>div{vertical-align:bottom;}.ant-carousel .slick-track{position:relative;top:0;inset-inline-start:0;display:block;}.ant-carousel .slick-track::before,.ant-carousel .slick-track::after{display:table;content:\\"\\";}.ant-carousel .slick-track::after{clear:both;}.ant-carousel .slick-slide{display:none;float:left;height:100%;min-height:1px;}.ant-carousel .slick-slide img{display:block;}.ant-carousel .slick-slide.dragging img{pointer-events:none;}.ant-carousel .slick-initialized .slick-slide{display:block;}.ant-carousel .slick-vertical .slick-slide{display:block;height:auto;}.ant-carousel .slick-arrow.slick-hidden{display:none;}.ant-carousel .slick-prev,.ant-carousel .slick-next{position:absolute;top:50%;display:block;width:20px;height:20px;margin-top:-10px;padding:0;color:transparent;font-size:0;line-height:0;background:transparent;border:0;outline:none;cursor:pointer;}.ant-carousel .slick-prev:hover,.ant-carousel .slick-next:hover,.ant-carousel .slick-prev:focus,.ant-carousel .slick-next:focus{color:transparent;background:transparent;outline:none;}.ant-carousel .slick-prev:hover::before,.ant-carousel .slick-next:hover::before,.ant-carousel .slick-prev:focus::before,.ant-carousel .slick-next:focus::before{opacity:1;}.ant-carousel .slick-prev.slick-disabled::before,.ant-carousel .slick-next.slick-disabled::before{opacity:0.25;}.ant-carousel .slick-prev{inset-inline-start:-25px;}.ant-carousel .slick-prev::before{content:\\"←\\";}.ant-carousel .slick-next{inset-inline-end:-25px;}.ant-carousel .slick-next::before{content:\\"→\\";}.ant-carousel .slick-dots{position:absolute;inset-inline-end:0;bottom:0;inset-inline-start:0;z-index:15;display:flex!important;justify-content:center;padding-inline-start:0;list-style:none;}.ant-carousel .slick-dots-bottom{bottom:12px;}.ant-carousel .slick-dots-top{top:12px;bottom:auto;}.ant-carousel .slick-dots li{position:relative;display:inline-block;flex:0 1 auto;box-sizing:content-box;width:16px;height:3px;margin-inline:4px;padding:0;text-align:center;text-indent:-999px;vertical-align:top;transition:all 0.3s;}.ant-carousel .slick-dots li button{position:relative;display:block;width:100%;height:3px;padding:0;color:transparent;font-size:0;background:#141414;border:0;border-radius:1px;outline:none;cursor:pointer;opacity:0.3;transition:all 0.3s;}.ant-carousel .slick-dots li button:hover,.ant-carousel .slick-dots li button:focus{opacity:0.75;}.ant-carousel .slick-dots li button::after{position:absolute;inset:-4px;content:\\"\\";}.ant-carousel .slick-dots li.slick-active{width:24px;}.ant-carousel .slick-dots li.slick-active button{background:#141414;opacity:1;}.ant-carousel .slick-dots li.slick-active:hover,.ant-carousel .slick-dots li.slick-active:focus{opacity:1;}.ant-carousel-vertical .slick-dots{top:50%;bottom:auto;flex-direction:column;width:3px;height:auto;margin:0;transform:translateY(-50%);}.ant-carousel-vertical .slick-dots-left{inset-inline-end:auto;inset-inline-start:12px;}.ant-carousel-vertical .slick-dots-right{inset-inline-end:12px;inset-inline-start:auto;}.ant-carousel-vertical .slick-dots li{width:3px;height:16px;margin:4px 0;vertical-align:baseline;}.ant-carousel-vertical .slick-dots li button{width:3px;height:16px;}.ant-carousel-vertical .slick-dots li.slick-active{width:3px;height:16px;}.ant-carousel-vertical .slick-dots li.slick-active button{width:3px;height:16px;}.ant-carousel-rtl{direction:rtl;}.ant-carousel-rtl.ant-carousel-rtl .slick-dots{flex-direction:row-reverse;}.ant-carousel-rtl.ant-carousel-vertical .slick-dots{flex-direction:column;}[class^=\\"ant-cascader\\"],[class*=\\" ant-cascader\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-cascader\\"]::before,[class*=\\" ant-cascader\\"]::before,[class^=\\"ant-cascader\\"]::after,[class*=\\" ant-cascader\\"]::after{box-sizing:border-box;}[class^=\\"ant-cascader\\"] [class^=\\"ant-cascader\\"],[class*=\\" ant-cascader\\"] [class^=\\"ant-cascader\\"],[class^=\\"ant-cascader\\"] [class*=\\" ant-cascader\\"],[class*=\\" ant-cascader\\"] [class*=\\" ant-cascader\\"]{box-sizing:border-box;}[class^=\\"ant-cascader\\"] [class^=\\"ant-cascader\\"]::before,[class*=\\" ant-cascader\\"] [class^=\\"ant-cascader\\"]::before,[class^=\\"ant-cascader\\"] [class*=\\" ant-cascader\\"]::before,[class*=\\" ant-cascader\\"] [class*=\\" ant-cascader\\"]::before,[class^=\\"ant-cascader\\"] [class^=\\"ant-cascader\\"]::after,[class*=\\" ant-cascader\\"] [class^=\\"ant-cascader\\"]::after,[class^=\\"ant-cascader\\"] [class*=\\" ant-cascader\\"]::after,[class*=\\" ant-cascader\\"] [class*=\\" ant-cascader\\"]::after{box-sizing:border-box;}.ant-cascader{width:184px;}.ant-cascader-dropdown .ant-cascader-checkbox-group{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';display:inline-flex;flex-wrap:wrap;column-gap:8px;}.ant-cascader-dropdown .ant-cascader-checkbox-group >.ant-row{flex:1;}.ant-cascader-dropdown .ant-cascader-checkbox-wrapper{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';display:inline-flex;align-items:baseline;cursor:pointer;}.ant-cascader-dropdown .ant-cascader-checkbox-wrapper:after{display:inline-block;width:0;overflow:hidden;content:'\\\\a0';}.ant-cascader-dropdown .ant-cascader-checkbox-wrapper+.ant-cascader-checkbox-wrapper{margin-inline-start:0;}.ant-cascader-dropdown .ant-cascader-checkbox-wrapper.ant-cascader-checkbox-wrapper-in-form-item input[type=\\"checkbox\\"]{width:14px;height:14px;}.ant-cascader-dropdown .ant-cascader-checkbox{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1;list-style:none;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';position:relative;white-space:nowrap;cursor:pointer;align-self:center;}.ant-cascader-dropdown .ant-cascader-checkbox .ant-cascader-checkbox-input{position:absolute;inset:0;z-index:1;cursor:pointer;opacity:0;margin:0;}.ant-cascader-dropdown .ant-cascader-checkbox .ant-cascader-checkbox-input:focus-visible+.ant-cascader-checkbox-inner{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-cascader-dropdown .ant-cascader-checkbox .ant-cascader-checkbox-inner{box-sizing:border-box;position:relative;top:0;inset-inline-start:0;display:block;width:16px;height:16px;direction:ltr;background-color:#141414;border:1px solid #424242;border-radius:4px;border-collapse:separate;transition:all 0.3s;}.ant-cascader-dropdown .ant-cascader-checkbox .ant-cascader-checkbox-inner:after{box-sizing:border-box;position:absolute;top:50%;inset-inline-start:21.5%;display:table;width:5.7142857142857135px;height:9.142857142857142px;border:2px solid #fff;border-top:0;border-inline-start:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;content:\\"\\";transition:all 0.1s cubic-bezier(0.71, -0.46, 0.88, 0.6),opacity 0.1s;}.ant-cascader-dropdown .ant-cascader-checkbox+span{padding-inline-start:8px;padding-inline-end:8px;}.ant-cascader-dropdown .ant-cascader-checkbox-indeterminate .ant-cascader-checkbox-inner:after{top:50%;inset-inline-start:50%;width:8px;height:8px;background-color:#037003;border:0;transform:translate(-50%, -50%) scale(1);opacity:1;content:\\"\\";}.ant-cascader-dropdown .ant-cascader-checkbox-wrapper:hover .ant-cascader-checkbox:after{visibility:visible;}.ant-cascader-dropdown .ant-cascader-checkbox-wrapper:not(.ant-cascader-checkbox-wrapper-disabled):hover .ant-cascader-checkbox-inner,.ant-cascader-dropdown .ant-cascader-checkbox:not(.ant-cascader-checkbox-disabled):hover .ant-cascader-checkbox-inner{border-color:#037003;}.ant-cascader-dropdown .ant-cascader-checkbox-wrapper:not(.ant-cascader-checkbox-wrapper-disabled):hover .ant-cascader-checkbox-checked:not(.ant-cascader-checkbox-disabled) .ant-cascader-checkbox-inner{background-color:#198016;border-color:transparent;}.ant-cascader-dropdown .ant-cascader-checkbox-wrapper:not(.ant-cascader-checkbox-wrapper-disabled):hover .ant-cascader-checkbox-checked:not(.ant-cascader-checkbox-disabled):after{border-color:#198016;}.ant-cascader-dropdown .ant-cascader-checkbox-checked .ant-cascader-checkbox-inner{background-color:#037003;border-color:#037003;}.ant-cascader-dropdown .ant-cascader-checkbox-checked .ant-cascader-checkbox-inner:after{opacity:1;transform:rotate(45deg) scale(1) translate(-50%,-50%);transition:all 0.2s cubic-bezier(0.12, 0.4, 0.29, 1.46) 0.1s;}.ant-cascader-dropdown .ant-cascader-checkbox-checked:after{position:absolute;top:0;inset-inline-start:0;width:100%;height:100%;border-radius:4px;visibility:hidden;border:2px solid #037003;animation-name:antCheckboxEffect;animation-duration:0.3s;animation-timing-function:ease-in-out;animation-fill-mode:backwards;content:\\"\\";transition:all 0.3s;}.ant-cascader-dropdown .ant-cascader-checkbox-wrapper-checked:not(.ant-cascader-checkbox-wrapper-disabled):hover .ant-cascader-checkbox-inner,.ant-cascader-dropdown .ant-cascader-checkbox-checked:not(.ant-cascader-checkbox-disabled):hover .ant-cascader-checkbox-inner{background-color:#198016;border-color:transparent;}.ant-cascader-dropdown .ant-cascader-checkbox-wrapper-checked:not(.ant-cascader-checkbox-wrapper-disabled):hover .ant-cascader-checkbox:after,.ant-cascader-dropdown .ant-cascader-checkbox-checked:not(.ant-cascader-checkbox-disabled):hover .ant-cascader-checkbox:after{border-color:#198016;}.ant-cascader-dropdown .ant-cascader-checkbox-wrapper-disabled{cursor:not-allowed;}.ant-cascader-dropdown .ant-cascader-checkbox-disabled,.ant-cascader-dropdown .ant-cascader-checkbox-disabled .ant-cascader-checkbox-input{cursor:not-allowed;pointer-events:none;}.ant-cascader-dropdown .ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner{background:rgba(255, 255, 255, 0.08);border-color:#424242;}.ant-cascader-dropdown .ant-cascader-checkbox-disabled .ant-cascader-checkbox-inner:after{border-color:rgba(255, 255, 255, 0.25);}.ant-cascader-dropdown .ant-cascader-checkbox-disabled:after{display:none;}.ant-cascader-dropdown .ant-cascader-checkbox-disabled+span{color:rgba(255, 255, 255, 0.25);}.ant-cascader-dropdown .ant-cascader-checkbox-disabled.ant-cascader-checkbox-indeterminate .ant-cascader-checkbox-inner::after{background:rgba(255, 255, 255, 0.25);}.ant-cascader-dropdown.ant-select-dropdown{padding:0;}.ant-cascader-dropdown .ant-cascader-checkbox{top:0;margin-inline-end:8px;}.ant-cascader-dropdown .ant-cascader-menus{display:flex;flex-wrap:nowrap;align-items:flex-start;}.ant-cascader-dropdown .ant-cascader-menus.ant-cascader-menu-empty .ant-cascader-menu{width:100%;height:auto;}.ant-cascader-dropdown .ant-cascader-menus.ant-cascader-menu-empty .ant-cascader-menu .ant-cascader-menu-item{color:rgba(255, 255, 255, 0.25);}.ant-cascader-dropdown .ant-cascader-menu{flex-grow:1;min-width:111px;height:180px;margin:0;padding:4px;overflow:auto;vertical-align:top;list-style:none;-ms-overflow-style:-ms-autohiding-scrollbar;}.ant-cascader-dropdown .ant-cascader-menu:not(:last-child){border-inline-end:1px solid rgba(253, 253, 253, 0.12);}.ant-cascader-dropdown .ant-cascader-menu-item{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;display:flex;flex-wrap:nowrap;align-items:center;padding:5px 12px;line-height:1.5714285714285714;cursor:pointer;transition:all 0.2s;border-radius:4px;}.ant-cascader-dropdown .ant-cascader-menu-item:hover{background:rgba(255, 255, 255, 0.08);}.ant-cascader-dropdown .ant-cascader-menu-item-disabled{color:rgba(255, 255, 255, 0.25);cursor:not-allowed;}.ant-cascader-dropdown .ant-cascader-menu-item-disabled:hover{background:transparent;}.ant-cascader-dropdown .ant-cascader-menu-item-disabled.ant-cascader-menu-item-expand .ant-cascader-menu-item-expand-icon,.ant-cascader-dropdown .ant-cascader-menu-item-disabled .ant-cascader-menu-item-loading-icon{color:rgba(255, 255, 255, 0.25);}.ant-cascader-dropdown .ant-cascader-menu-item-active:not(.ant-cascader-menu-item-disabled),.ant-cascader-dropdown .ant-cascader-menu-item-active:not(.ant-cascader-menu-item-disabled):hover{font-weight:600;background-color:#111911;}.ant-cascader-dropdown .ant-cascader-menu-item-content{flex:auto;}.ant-cascader-dropdown .ant-cascader-menu-item.ant-cascader-menu-item-expand .ant-cascader-menu-item-expand-icon,.ant-cascader-dropdown .ant-cascader-menu-item .ant-cascader-menu-item-loading-icon{margin-inline-start:4px;color:rgba(255, 255, 255, 0.45);font-size:12px;}.ant-cascader-dropdown .ant-cascader-menu-item-keyword{color:#dc4446;}.ant-cascader-dropdown-rtl{direction:rtl;}.ant-cascader-compact-item:not(.ant-cascader-compact-last-item){margin-inline-end:-1px;}.ant-cascader-compact-item:hover,.ant-cascader-compact-item:focus,.ant-cascader-compact-item:active{z-index:2;}.ant-cascader-compact-item[disabled]{z-index:0;}.ant-cascader-compact-item:not(.ant-cascader-compact-first-item):not(.ant-cascader-compact-last-item){border-radius:0;}.ant-cascader-compact-item:not(.ant-cascader-compact-last-item).ant-cascader-compact-first-item,.ant-cascader-compact-item:not(.ant-cascader-compact-last-item).ant-cascader-compact-first-item.ant-cascader-sm,.ant-cascader-compact-item:not(.ant-cascader-compact-last-item).ant-cascader-compact-first-item.ant-cascader-lg{border-start-end-radius:0;border-end-end-radius:0;}.ant-cascader-compact-item:not(.ant-cascader-compact-first-item).ant-cascader-compact-last-item,.ant-cascader-compact-item:not(.ant-cascader-compact-first-item).ant-cascader-compact-last-item.ant-cascader-sm,.ant-cascader-compact-item:not(.ant-cascader-compact-first-item).ant-cascader-compact-last-item.ant-cascader-lg{border-start-start-radius:0;border-end-start-radius:0;}@keyframes antCheckboxEffect{0%{transform:scale(1);opacity:0.5;}100%{transform:scale(1.6);opacity:0;}}[class^=\\"ant-checkbox\\"],[class*=\\" ant-checkbox\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-checkbox\\"]::before,[class*=\\" ant-checkbox\\"]::before,[class^=\\"ant-checkbox\\"]::after,[class*=\\" ant-checkbox\\"]::after{box-sizing:border-box;}[class^=\\"ant-checkbox\\"] [class^=\\"ant-checkbox\\"],[class*=\\" ant-checkbox\\"] [class^=\\"ant-checkbox\\"],[class^=\\"ant-checkbox\\"] [class*=\\" ant-checkbox\\"],[class*=\\" ant-checkbox\\"] [class*=\\" ant-checkbox\\"]{box-sizing:border-box;}[class^=\\"ant-checkbox\\"] [class^=\\"ant-checkbox\\"]::before,[class*=\\" ant-checkbox\\"] [class^=\\"ant-checkbox\\"]::before,[class^=\\"ant-checkbox\\"] [class*=\\" ant-checkbox\\"]::before,[class*=\\" ant-checkbox\\"] [class*=\\" ant-checkbox\\"]::before,[class^=\\"ant-checkbox\\"] [class^=\\"ant-checkbox\\"]::after,[class*=\\" ant-checkbox\\"] [class^=\\"ant-checkbox\\"]::after,[class^=\\"ant-checkbox\\"] [class*=\\" ant-checkbox\\"]::after,[class*=\\" ant-checkbox\\"] [class*=\\" ant-checkbox\\"]::after{box-sizing:border-box;}.ant-checkbox-group{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';display:inline-flex;flex-wrap:wrap;column-gap:8px;}.ant-checkbox-group >.ant-row{flex:1;}.ant-checkbox-wrapper{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';display:inline-flex;align-items:baseline;cursor:pointer;}.ant-checkbox-wrapper:after{display:inline-block;width:0;overflow:hidden;content:'\\\\a0';}.ant-checkbox-wrapper+.ant-checkbox-wrapper{margin-inline-start:0;}.ant-checkbox-wrapper.ant-checkbox-wrapper-in-form-item input[type=\\"checkbox\\"]{width:14px;height:14px;}.ant-checkbox{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1;list-style:none;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';position:relative;white-space:nowrap;cursor:pointer;align-self:center;}.ant-checkbox .ant-checkbox-input{position:absolute;inset:0;z-index:1;cursor:pointer;opacity:0;margin:0;}.ant-checkbox .ant-checkbox-input:focus-visible+.ant-checkbox-inner{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-checkbox .ant-checkbox-inner{box-sizing:border-box;position:relative;top:0;inset-inline-start:0;display:block;width:16px;height:16px;direction:ltr;background-color:#141414;border:1px solid #424242;border-radius:4px;border-collapse:separate;transition:all 0.3s;}.ant-checkbox .ant-checkbox-inner:after{box-sizing:border-box;position:absolute;top:50%;inset-inline-start:21.5%;display:table;width:5.7142857142857135px;height:9.142857142857142px;border:2px solid #fff;border-top:0;border-inline-start:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;content:\\"\\";transition:all 0.1s cubic-bezier(0.71, -0.46, 0.88, 0.6),opacity 0.1s;}.ant-checkbox+span{padding-inline-start:8px;padding-inline-end:8px;}.ant-checkbox-indeterminate .ant-checkbox-inner:after{top:50%;inset-inline-start:50%;width:8px;height:8px;background-color:#037003;border:0;transform:translate(-50%, -50%) scale(1);opacity:1;content:\\"\\";}.ant-checkbox-wrapper:hover .ant-checkbox:after{visibility:visible;}.ant-checkbox-wrapper:not(.ant-checkbox-wrapper-disabled):hover .ant-checkbox-inner,.ant-checkbox:not(.ant-checkbox-disabled):hover .ant-checkbox-inner{border-color:#037003;}.ant-checkbox-wrapper:not(.ant-checkbox-wrapper-disabled):hover .ant-checkbox-checked:not(.ant-checkbox-disabled) .ant-checkbox-inner{background-color:#198016;border-color:transparent;}.ant-checkbox-wrapper:not(.ant-checkbox-wrapper-disabled):hover .ant-checkbox-checked:not(.ant-checkbox-disabled):after{border-color:#198016;}.ant-checkbox-checked .ant-checkbox-inner{background-color:#037003;border-color:#037003;}.ant-checkbox-checked .ant-checkbox-inner:after{opacity:1;transform:rotate(45deg) scale(1) translate(-50%,-50%);transition:all 0.2s cubic-bezier(0.12, 0.4, 0.29, 1.46) 0.1s;}.ant-checkbox-checked:after{position:absolute;top:0;inset-inline-start:0;width:100%;height:100%;border-radius:4px;visibility:hidden;border:2px solid #037003;animation-name:antCheckboxEffect;animation-duration:0.3s;animation-timing-function:ease-in-out;animation-fill-mode:backwards;content:\\"\\";transition:all 0.3s;}.ant-checkbox-wrapper-checked:not(.ant-checkbox-wrapper-disabled):hover .ant-checkbox-inner,.ant-checkbox-checked:not(.ant-checkbox-disabled):hover .ant-checkbox-inner{background-color:#198016;border-color:transparent;}.ant-checkbox-wrapper-checked:not(.ant-checkbox-wrapper-disabled):hover .ant-checkbox:after,.ant-checkbox-checked:not(.ant-checkbox-disabled):hover .ant-checkbox:after{border-color:#198016;}.ant-checkbox-wrapper-disabled{cursor:not-allowed;}.ant-checkbox-disabled,.ant-checkbox-disabled .ant-checkbox-input{cursor:not-allowed;pointer-events:none;}.ant-checkbox-disabled .ant-checkbox-inner{background:rgba(255, 255, 255, 0.08);border-color:#424242;}.ant-checkbox-disabled .ant-checkbox-inner:after{border-color:rgba(255, 255, 255, 0.25);}.ant-checkbox-disabled:after{display:none;}.ant-checkbox-disabled+span{color:rgba(255, 255, 255, 0.25);}.ant-checkbox-disabled.ant-checkbox-indeterminate .ant-checkbox-inner::after{background:rgba(255, 255, 255, 0.25);}[class^=\\"ant-checkbox-group\\"],[class*=\\" ant-checkbox-group\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-checkbox-group\\"]::before,[class*=\\" ant-checkbox-group\\"]::before,[class^=\\"ant-checkbox-group\\"]::after,[class*=\\" ant-checkbox-group\\"]::after{box-sizing:border-box;}[class^=\\"ant-checkbox-group\\"] [class^=\\"ant-checkbox-group\\"],[class*=\\" ant-checkbox-group\\"] [class^=\\"ant-checkbox-group\\"],[class^=\\"ant-checkbox-group\\"] [class*=\\" ant-checkbox-group\\"],[class*=\\" ant-checkbox-group\\"] [class*=\\" ant-checkbox-group\\"]{box-sizing:border-box;}[class^=\\"ant-checkbox-group\\"] [class^=\\"ant-checkbox-group\\"]::before,[class*=\\" ant-checkbox-group\\"] [class^=\\"ant-checkbox-group\\"]::before,[class^=\\"ant-checkbox-group\\"] [class*=\\" ant-checkbox-group\\"]::before,[class*=\\" ant-checkbox-group\\"] [class*=\\" ant-checkbox-group\\"]::before,[class^=\\"ant-checkbox-group\\"] [class^=\\"ant-checkbox-group\\"]::after,[class*=\\" ant-checkbox-group\\"] [class^=\\"ant-checkbox-group\\"]::after,[class^=\\"ant-checkbox-group\\"] [class*=\\" ant-checkbox-group\\"]::after,[class*=\\" ant-checkbox-group\\"] [class*=\\" ant-checkbox-group\\"]::after{box-sizing:border-box;}.ant-checkbox-group-group{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';display:inline-flex;flex-wrap:wrap;column-gap:8px;}.ant-checkbox-group-group >.ant-row{flex:1;}.ant-checkbox-group-wrapper{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';display:inline-flex;align-items:baseline;cursor:pointer;}.ant-checkbox-group-wrapper:after{display:inline-block;width:0;overflow:hidden;content:'\\\\a0';}.ant-checkbox-group-wrapper+.ant-checkbox-group-wrapper{margin-inline-start:0;}.ant-checkbox-group-wrapper.ant-checkbox-group-wrapper-in-form-item input[type=\\"checkbox\\"]{width:14px;height:14px;}.ant-checkbox-group{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1;list-style:none;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';position:relative;white-space:nowrap;cursor:pointer;align-self:center;}.ant-checkbox-group .ant-checkbox-group-input{position:absolute;inset:0;z-index:1;cursor:pointer;opacity:0;margin:0;}.ant-checkbox-group .ant-checkbox-group-input:focus-visible+.ant-checkbox-group-inner{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-checkbox-group .ant-checkbox-group-inner{box-sizing:border-box;position:relative;top:0;inset-inline-start:0;display:block;width:16px;height:16px;direction:ltr;background-color:#141414;border:1px solid #424242;border-radius:4px;border-collapse:separate;transition:all 0.3s;}.ant-checkbox-group .ant-checkbox-group-inner:after{box-sizing:border-box;position:absolute;top:50%;inset-inline-start:21.5%;display:table;width:5.7142857142857135px;height:9.142857142857142px;border:2px solid #fff;border-top:0;border-inline-start:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;content:\\"\\";transition:all 0.1s cubic-bezier(0.71, -0.46, 0.88, 0.6),opacity 0.1s;}.ant-checkbox-group+span{padding-inline-start:8px;padding-inline-end:8px;}.ant-checkbox-group-indeterminate .ant-checkbox-group-inner:after{top:50%;inset-inline-start:50%;width:8px;height:8px;background-color:#037003;border:0;transform:translate(-50%, -50%) scale(1);opacity:1;content:\\"\\";}.ant-checkbox-group-wrapper:hover .ant-checkbox-group:after{visibility:visible;}.ant-checkbox-group-wrapper:not(.ant-checkbox-group-wrapper-disabled):hover .ant-checkbox-group-inner,.ant-checkbox-group:not(.ant-checkbox-group-disabled):hover .ant-checkbox-group-inner{border-color:#037003;}.ant-checkbox-group-wrapper:not(.ant-checkbox-group-wrapper-disabled):hover .ant-checkbox-group-checked:not(.ant-checkbox-group-disabled) .ant-checkbox-group-inner{background-color:#198016;border-color:transparent;}.ant-checkbox-group-wrapper:not(.ant-checkbox-group-wrapper-disabled):hover .ant-checkbox-group-checked:not(.ant-checkbox-group-disabled):after{border-color:#198016;}.ant-checkbox-group-checked .ant-checkbox-group-inner{background-color:#037003;border-color:#037003;}.ant-checkbox-group-checked .ant-checkbox-group-inner:after{opacity:1;transform:rotate(45deg) scale(1) translate(-50%,-50%);transition:all 0.2s cubic-bezier(0.12, 0.4, 0.29, 1.46) 0.1s;}.ant-checkbox-group-checked:after{position:absolute;top:0;inset-inline-start:0;width:100%;height:100%;border-radius:4px;visibility:hidden;border:2px solid #037003;animation-name:antCheckboxEffect;animation-duration:0.3s;animation-timing-function:ease-in-out;animation-fill-mode:backwards;content:\\"\\";transition:all 0.3s;}.ant-checkbox-group-wrapper-checked:not(.ant-checkbox-group-wrapper-disabled):hover .ant-checkbox-group-inner,.ant-checkbox-group-checked:not(.ant-checkbox-group-disabled):hover .ant-checkbox-group-inner{background-color:#198016;border-color:transparent;}.ant-checkbox-group-wrapper-checked:not(.ant-checkbox-group-wrapper-disabled):hover .ant-checkbox-group:after,.ant-checkbox-group-checked:not(.ant-checkbox-group-disabled):hover .ant-checkbox-group:after{border-color:#198016;}.ant-checkbox-group-wrapper-disabled{cursor:not-allowed;}.ant-checkbox-group-disabled,.ant-checkbox-group-disabled .ant-checkbox-group-input{cursor:not-allowed;pointer-events:none;}.ant-checkbox-group-disabled .ant-checkbox-group-inner{background:rgba(255, 255, 255, 0.08);border-color:#424242;}.ant-checkbox-group-disabled .ant-checkbox-group-inner:after{border-color:rgba(255, 255, 255, 0.25);}.ant-checkbox-group-disabled:after{display:none;}.ant-checkbox-group-disabled+span{color:rgba(255, 255, 255, 0.25);}.ant-checkbox-group-disabled.ant-checkbox-group-indeterminate .ant-checkbox-group-inner::after{background:rgba(255, 255, 255, 0.25);}[class^=\\"ant-col\\"],[class*=\\" ant-col\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-col\\"]::before,[class*=\\" ant-col\\"]::before,[class^=\\"ant-col\\"]::after,[class*=\\" ant-col\\"]::after{box-sizing:border-box;}[class^=\\"ant-col\\"] [class^=\\"ant-col\\"],[class*=\\" ant-col\\"] [class^=\\"ant-col\\"],[class^=\\"ant-col\\"] [class*=\\" ant-col\\"],[class*=\\" ant-col\\"] [class*=\\" ant-col\\"]{box-sizing:border-box;}[class^=\\"ant-col\\"] [class^=\\"ant-col\\"]::before,[class*=\\" ant-col\\"] [class^=\\"ant-col\\"]::before,[class^=\\"ant-col\\"] [class*=\\" ant-col\\"]::before,[class*=\\" ant-col\\"] [class*=\\" ant-col\\"]::before,[class^=\\"ant-col\\"] [class^=\\"ant-col\\"]::after,[class*=\\" ant-col\\"] [class^=\\"ant-col\\"]::after,[class^=\\"ant-col\\"] [class*=\\" ant-col\\"]::after,[class*=\\" ant-col\\"] [class*=\\" ant-col\\"]::after{box-sizing:border-box;}.ant-col{position:relative;max-width:100%;min-height:1px;}.ant-col-24{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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-end:0;}.ant-col-order-0{order:0;}.ant-col-xs-24{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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-end:0;}.ant-col-xs-order-0{order:0;}@media (min-width: 576px){.ant-col-sm-24{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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-end:0;}.ant-col-sm-order-0{order:0;}}@media (min-width: 768px){.ant-col-md-24{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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-end:0;}.ant-col-md-order-0{order:0;}}@media (min-width: 992px){.ant-col-lg-24{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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-end:0;}.ant-col-lg-order-0{order:0;}}@media (min-width: 1200px){.ant-col-xl-24{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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-end:0;}.ant-col-xl-order-0{order:0;}}@media (min-width: 1600px){.ant-col-xxl-24{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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{display:block;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-end:0;}.ant-col-xxl-order-0{order:0;}}[class^=\\"ant-comment\\"],[class*=\\" ant-comment\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-comment\\"]::before,[class*=\\" ant-comment\\"]::before,[class^=\\"ant-comment\\"]::after,[class*=\\" ant-comment\\"]::after{box-sizing:border-box;}[class^=\\"ant-comment\\"] [class^=\\"ant-comment\\"],[class*=\\" ant-comment\\"] [class^=\\"ant-comment\\"],[class^=\\"ant-comment\\"] [class*=\\" ant-comment\\"],[class*=\\" ant-comment\\"] [class*=\\" ant-comment\\"]{box-sizing:border-box;}[class^=\\"ant-comment\\"] [class^=\\"ant-comment\\"]::before,[class*=\\" ant-comment\\"] [class^=\\"ant-comment\\"]::before,[class^=\\"ant-comment\\"] [class*=\\" ant-comment\\"]::before,[class*=\\" ant-comment\\"] [class*=\\" ant-comment\\"]::before,[class^=\\"ant-comment\\"] [class^=\\"ant-comment\\"]::after,[class*=\\" ant-comment\\"] [class^=\\"ant-comment\\"]::after,[class^=\\"ant-comment\\"] [class*=\\" ant-comment\\"]::after,[class*=\\" ant-comment\\"] [class*=\\" ant-comment\\"]::after{box-sizing:border-box;}.ant-comment{position:relative;background-color:inherit;}.ant-comment .ant-comment-inner{display:flex;padding:20px 0;}.ant-comment .ant-comment-avatar{position:relative;flex-shrink:0;margin-right:12px;cursor:pointer;}.ant-comment .ant-comment-avatar img{width:32px;height:32px;border-radius:50%;}.ant-comment .ant-comment-content{position:relative;flex:1 1 auto;min-width:1px;font-size:14px;word-wrap:break-word;}.ant-comment .ant-comment-content-author{display:flex;flex-wrap:wrap;justify-content:flex-start;margin-bottom:4px;font-size:14px;}.ant-comment .ant-comment-content-author>a,.ant-comment .ant-comment-content-author>span{padding-right:8px;font-size:12px;line-height:18px;}.ant-comment .ant-comment-content-author-name{color:rgba(255, 255, 255, 0.45);font-size:14px;transition:color 0.3s;}.ant-comment .ant-comment-content-author-name >*{color:rgba(255, 255, 255, 0.45);}.ant-comment .ant-comment-content-author-name >*:hover{color:rgba(255, 255, 255, 0.45);}.ant-comment .ant-comment-content-author-time{color:rgba(255, 255, 255, 0.25);white-space:nowrap;cursor:auto;}.ant-comment .ant-comment-content-detail p{margin-bottom:inherit;white-space:pre-wrap;}.ant-comment .ant-comment-actions{margin-top:12px;margin-bottom:inherit;padding-left:0;}.ant-comment .ant-comment-actions >li{display:inline-block;color:rgba(255, 255, 255, 0.45);}.ant-comment .ant-comment-actions >li >span{margin-right:10px;color:rgba(255, 255, 255, 0.45);font-size:12px;cursor:pointer;transition:color 0.3s;user-select:none;}.ant-comment .ant-comment-actions >li >span:hover{color:rgba(255, 255, 255, 0.65);}.ant-comment .ant-comment-nested{margin-left:44px;}.ant-comment-rtl{direction:rtl;}[class^=\\"ant-picker\\"],[class*=\\" ant-picker\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-picker\\"]::before,[class*=\\" ant-picker\\"]::before,[class^=\\"ant-picker\\"]::after,[class*=\\" ant-picker\\"]::after{box-sizing:border-box;}[class^=\\"ant-picker\\"] [class^=\\"ant-picker\\"],[class*=\\" ant-picker\\"] [class^=\\"ant-picker\\"],[class^=\\"ant-picker\\"] [class*=\\" ant-picker\\"],[class*=\\" ant-picker\\"] [class*=\\" ant-picker\\"]{box-sizing:border-box;}[class^=\\"ant-picker\\"] [class^=\\"ant-picker\\"]::before,[class*=\\" ant-picker\\"] [class^=\\"ant-picker\\"]::before,[class^=\\"ant-picker\\"] [class*=\\" ant-picker\\"]::before,[class*=\\" ant-picker\\"] [class*=\\" ant-picker\\"]::before,[class^=\\"ant-picker\\"] [class^=\\"ant-picker\\"]::after,[class*=\\" ant-picker\\"] [class^=\\"ant-picker\\"]::after,[class^=\\"ant-picker\\"] [class*=\\" ant-picker\\"]::after,[class*=\\" ant-picker\\"] [class*=\\" ant-picker\\"]::after{box-sizing:border-box;}.ant-picker{box-sizing:border-box;margin:0;padding:4px 11px 4px;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1;list-style:none;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';position:relative;display:inline-flex;align-items:center;background:#141414;border:1px solid #424242;border-radius:6px;transition:border 0.2s,box-shadow 0.2s;}.ant-picker:hover,.ant-picker-focused{border-color:#198016;border-inline-end-width:1px;}.ant-picker-focused{border-color:#198016;box-shadow:0 0 0 2px rgba(0, 53, 0, 0.15);border-inline-end-width:1px;outline:0;}.ant-picker.ant-picker-disabled{background:rgba(255, 255, 255, 0.08);border-color:#424242;cursor:not-allowed;}.ant-picker.ant-picker-disabled .ant-picker-suffix{color:rgba(255, 255, 255, 0.25);}.ant-picker.ant-picker-borderless{background-color:transparent!important;border-color:transparent!important;box-shadow:none!important;}.ant-picker .ant-picker-input{position:relative;display:inline-flex;align-items:center;width:100%;}.ant-picker .ant-picker-input >input{position:relative;display:inline-block;width:100%;min-width:1px;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;background-color:#141414;background-image:none;border-width:1px;border-style:solid;border-color:#424242;border-radius:6px;transition:all 0.2s;flex:auto;height:auto;background:transparent;border:0;}.ant-picker .ant-picker-input >input::-moz-placeholder{opacity:1;}.ant-picker .ant-picker-input >input::placeholder{color:rgba(255, 255, 255, 0.25);user-select:none;}.ant-picker .ant-picker-input >input:placeholder-shown{text-overflow:ellipsis;}.ant-picker .ant-picker-input >input:hover{border-color:#198016;border-inline-end-width:1px;}.ant-picker .ant-picker-input >input:focus,.ant-picker .ant-picker-input >input-focused{border-color:#198016;box-shadow:0 0 0 2px rgba(0, 53, 0, 0.15);border-inline-end-width:1px;outline:0;}.ant-picker .ant-picker-input >input-disabled,.ant-picker .ant-picker-input >input[disabled]{color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);border-color:#424242;box-shadow:none;cursor:not-allowed;opacity:1;}.ant-picker .ant-picker-input >input-disabled:hover,.ant-picker .ant-picker-input >input[disabled]:hover{border-color:#424242;border-inline-end-width:1px;}.ant-picker .ant-picker-input >input-borderless,.ant-picker .ant-picker-input >input-borderless:hover,.ant-picker .ant-picker-input >input-borderless:focus,.ant-picker .ant-picker-input >input-borderless-focused,.ant-picker .ant-picker-input >input-borderless-disabled,.ant-picker .ant-picker-input >input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none;}textarea.ant-picker .ant-picker-input >input{max-width:100%;height:auto;min-height:32px;line-height:1.5714285714285714;vertical-align:bottom;transition:all 0.3s,height 0s;resize:vertical;}.ant-picker .ant-picker-input >input-lg{padding:7px 11px;font-size:16px;line-height:1.5;border-radius:8px;}.ant-picker .ant-picker-input >input-sm{padding:0px 7px;border-radius:4px;}.ant-picker .ant-picker-input >input-rtl{direction:rtl;}.ant-picker .ant-picker-input >input-textarea-rtl{direction:rtl;}.ant-picker .ant-picker-input >input:focus{box-shadow:none;}.ant-picker .ant-picker-input >input[disabled]{background:transparent;}.ant-picker .ant-picker-input:hover .ant-picker-clear{opacity:1;}.ant-picker .ant-picker-input-placeholder >input{color:rgba(255, 255, 255, 0.25);}.ant-picker-large{padding:6.5px 11px 6.5px;}.ant-picker-large .ant-picker-input>input{font-size:16px;}.ant-picker-small{padding:0px 7px 0px;}.ant-picker .ant-picker-suffix{display:flex;flex:none;align-self:center;margin-inline-start:4px;color:rgba(255, 255, 255, 0.25);line-height:1;pointer-events:none;}.ant-picker .ant-picker-suffix >*{vertical-align:top;}.ant-picker .ant-picker-suffix >*:not(:last-child){margin-inline-end:8px;}.ant-picker .ant-picker-clear{position:absolute;top:50%;inset-inline-end:0;color:rgba(255, 255, 255, 0.25);line-height:1;background:#141414;transform:translateY(-50%);cursor:pointer;opacity:0;transition:opacity 0.2s,color 0.2s;}.ant-picker .ant-picker-clear >*{vertical-align:top;}.ant-picker .ant-picker-clear:hover{color:rgba(255, 255, 255, 0.45);}.ant-picker .ant-picker-separator{position:relative;display:inline-block;width:1em;height:16px;color:rgba(255, 255, 255, 0.25);font-size:16px;vertical-align:top;cursor:default;}.ant-picker-focused .ant-picker .ant-picker-separator{color:rgba(255, 255, 255, 0.45);}.ant-picker-disabled .ant-picker-range-separator .ant-picker .ant-picker-separator{cursor:not-allowed;}.ant-picker-range{position:relative;display:inline-flex;}.ant-picker-range .ant-picker-clear{inset-inline-end:11px;}.ant-picker-range:hover .ant-picker-clear{opacity:1;}.ant-picker-range .ant-picker-active-bar{bottom:-1px;height:2px;margin-inline-start:11px;background:#037003;opacity:0;transition:all 0.3s ease-out;pointer-events:none;}.ant-picker-range.ant-picker-focused .ant-picker-active-bar{opacity:1;}.ant-picker-range .ant-picker-range-separator{align-items:center;padding:0 8px;line-height:1;}.ant-picker-range.ant-picker-small .ant-picker-clear{inset-inline-end:7px;}.ant-picker-range.ant-picker-small .ant-picker-active-bar{margin-inline-start:7px;}.ant-picker-dropdown{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:absolute;top:-9999px;left:-9999px;z-index:1050;}.ant-picker-dropdown .ant-picker-panel{display:inline-flex;flex-direction:column;text-align:center;background:#141414;border:1px solid rgba(253, 253, 253, 0.12);border-radius:8px;outline:none;}.ant-picker-dropdown .ant-picker-panel-focused{border-color:#037003;}.ant-picker-dropdown .ant-picker-panel-rtl{direction:rtl;}.ant-picker-dropdown .ant-picker-panel-rtl .ant-picker-prev-icon,.ant-picker-dropdown .ant-picker-panel-rtl .ant-picker-super-prev-icon{transform:rotate(45deg);}.ant-picker-dropdown .ant-picker-panel-rtl .ant-picker-next-icon,.ant-picker-dropdown .ant-picker-panel-rtl .ant-picker-super-next-icon{transform:rotate(-135deg);}.ant-picker-dropdown .ant-picker-decade-panel,.ant-picker-dropdown .ant-picker-year-panel,.ant-picker-dropdown .ant-picker-quarter-panel,.ant-picker-dropdown .ant-picker-month-panel,.ant-picker-dropdown .ant-picker-week-panel,.ant-picker-dropdown .ant-picker-date-panel,.ant-picker-dropdown .ant-picker-time-panel{display:flex;flex-direction:column;width:280px;}.ant-picker-dropdown .ant-picker-header{display:flex;padding:0 8px;color:rgba(255, 255, 255, 0.85);border-bottom:1px solid rgba(253, 253, 253, 0.12);}.ant-picker-dropdown .ant-picker-header >*{flex:none;}.ant-picker-dropdown .ant-picker-header button{padding:0;color:rgba(255, 255, 255, 0.45);line-height:40px;background:transparent;border:0;cursor:pointer;transition:color 0.2s;}.ant-picker-dropdown .ant-picker-header >button{min-width:1.6em;font-size:14px;}.ant-picker-dropdown .ant-picker-header >button:hover{color:rgba(255, 255, 255, 0.85);}.ant-picker-dropdown .ant-picker-header-view{flex:auto;font-weight:600;line-height:40px;}.ant-picker-dropdown .ant-picker-header-view button{color:inherit;font-weight:inherit;vertical-align:top;}.ant-picker-dropdown .ant-picker-header-view button:not(:first-child){margin-inline-start:8px;}.ant-picker-dropdown .ant-picker-header-view button:hover{color:#037003;}.ant-picker-dropdown .ant-picker-prev-icon,.ant-picker-dropdown .ant-picker-next-icon,.ant-picker-dropdown .ant-picker-super-prev-icon,.ant-picker-dropdown .ant-picker-super-next-icon{position:relative;display:inline-block;width:7px;height:7px;}.ant-picker-dropdown .ant-picker-prev-icon::before,.ant-picker-dropdown .ant-picker-next-icon::before,.ant-picker-dropdown .ant-picker-super-prev-icon::before,.ant-picker-dropdown .ant-picker-super-next-icon::before{position:absolute;top:0;inset-inline-start:0;display:inline-block;width:7px;height:7px;border:0 solid currentcolor;border-block-start-width:1.5px;border-block-end-width:0;border-inline-start-width:1.5px;border-inline-end-width:0;content:\\"\\";}.ant-picker-dropdown .ant-picker-super-prev-icon::after,.ant-picker-dropdown .ant-picker-super-next-icon::after{position:absolute;top:4px;inset-inline-start:4px;display:inline-block;width:7px;height:7px;border:0 solid currentcolor;border-block-start-width:1.5px;border-block-end-width:0;border-inline-start-width:1.5px;border-inline-end-width:0;content:\\"\\";}.ant-picker-dropdown .ant-picker-prev-icon,.ant-picker-dropdown .ant-picker-super-prev-icon{transform:rotate(-45deg);}.ant-picker-dropdown .ant-picker-next-icon,.ant-picker-dropdown .ant-picker-super-next-icon{transform:rotate(135deg);}.ant-picker-dropdown .ant-picker-content{width:100%;table-layout:fixed;border-collapse:collapse;}.ant-picker-dropdown .ant-picker-content th,.ant-picker-dropdown .ant-picker-content td{position:relative;min-width:24px;font-weight:normal;}.ant-picker-dropdown .ant-picker-content th{height:32px;color:rgba(255, 255, 255, 0.85);vertical-align:middle;}.ant-picker-dropdown .ant-picker-cell{padding:4px 0;color:rgba(255, 255, 255, 0.25);cursor:pointer;}.ant-picker-dropdown .ant-picker-cell-in-view{color:rgba(255, 255, 255, 0.85);}.ant-picker-dropdown .ant-picker-cell::before{position:absolute;top:50%;inset-inline-start:0;inset-inline-end:0;z-index:1;height:24px;transform:translateY(-50%);transition:all 0.3s;content:\\"\\";}.ant-picker-dropdown .ant-picker-cell .ant-picker-cell-inner{position:relative;z-index:2;display:inline-block;min-width:24px;height:24px;line-height:24px;border-radius:4px;transition:background 0.2s,border 0.2s;}.ant-picker-dropdown .ant-picker-cell:hover:not(.ant-picker-cell-in-view) .ant-picker-cell-inner,.ant-picker-dropdown .ant-picker-cell:hover:not(.ant-picker-cell-selected):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end):not(.ant-picker-cell-range-hover-start):not(.ant-picker-cell-range-hover-end) .ant-picker-cell-inner{background:rgba(255, 255, 255, 0.08);}.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner::before{position:absolute;top:0;inset-inline-end:0;bottom:0;inset-inline-start:0;z-index:1;border:1px solid #037003;border-radius:4px;content:\\"\\";}.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-in-range{position:relative;}.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-in-range::before{background:#111911;}.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner{color:#fff;background:#037003;}.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single)::before,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single)::before{background:#111911;}.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-start::before{inset-inline-start:50%;}.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-end::before{inset-inline-end:50%;}.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:not(.ant-picker-cell-in-range):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end)::after,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-hover-end:not(.ant-picker-cell-in-range):not(.ant-picker-cell-range-start):not(.ant-picker-cell-range-end)::after,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-hover-start.ant-picker-cell-range-start-single::after,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-hover-start.ant-picker-cell-range-start.ant-picker-cell-range-end.ant-picker-cell-range-end-near-hover::after,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-hover-end.ant-picker-cell-range-start.ant-picker-cell-range-end.ant-picker-cell-range-start-near-hover::after,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-hover-end.ant-picker-cell-range-end-single::after,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-hover:not(.ant-picker-cell-in-range)::after{position:absolute;top:50%;z-index:0;height:24px;border-top:1px dashed #06d306;border-bottom:1px dashed #06d306;transform:translateY(-50%);transition:all 0.3s;content:\\"\\";}.ant-picker-dropdown .ant-picker-cell-range-hover-start::after,.ant-picker-dropdown .ant-picker-cell-range-hover-end::after,.ant-picker-dropdown .ant-picker-cell-range-hover::after{inset-inline-end:0;inset-inline-start:2px;}.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover::before,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-start.ant-picker-cell-range-hover::before,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-end.ant-picker-cell-range-hover::before,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single).ant-picker-cell-range-hover-start::before,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single).ant-picker-cell-range-hover-end::before,.ant-picker-panel>:not(.ant-picker-date-panel) .ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start::before,.ant-picker-panel>:not(.ant-picker-date-panel) .ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end::before{background:#2cf92c;}.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-start:not(.ant-picker-cell-range-start-single):not(.ant-picker-cell-range-end) .ant-picker-cell-inner{border-start-start-radius:4px;border-end-start-radius:4px;border-start-end-radius:0;border-end-end-radius:0;}.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-end:not(.ant-picker-cell-range-end-single):not(.ant-picker-cell-range-start) .ant-picker-cell-inner{border-start-start-radius:0;border-end-start-radius:0;border-start-end-radius:4px;border-end-end-radius:4px;}.ant-picker-dropdown .ant-picker-cell-range-hover.ant-picker-cell-range-end::after{inset-inline-start:50%;}tr>.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-hover:first-child::after,tr>.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-hover-end:first-child::after,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-start.ant-picker-cell-range-hover-edge-start.ant-picker-cell-range-hover-edge-start-near-range::after,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-start:not(.ant-picker-cell-range-hover-edge-start-near-range)::after,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-hover-start::after{inset-inline-start:6px;border-inline-start:1px dashed #06d306;border-start-start-radius:1px;border-end-start-radius:1px;}tr>.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-hover:last-child::after,tr>.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::after,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-end.ant-picker-cell-range-hover-edge-end.ant-picker-cell-range-hover-edge-end-near-range::after,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-hover-edge-end:not(.ant-picker-cell-range-hover-edge-end-near-range)::after,.ant-picker-dropdown .ant-picker-cell-in-view.ant-picker-cell-range-hover-end::after{inset-inline-end:6px;border-inline-end:1px dashed #06d306;border-start-end-radius:1px;border-end-end-radius:1px;}.ant-picker-dropdown .ant-picker-cell-disabled{color:rgba(255, 255, 255, 0.25);pointer-events:none;}.ant-picker-dropdown .ant-picker-cell-disabled .ant-picker-cell-inner{background:transparent;}.ant-picker-dropdown .ant-picker-cell-disabled::before{background:rgba(255, 255, 255, 0.08);}.ant-picker-dropdown .ant-picker-cell-disabled.ant-picker-cell-today .ant-picker-cell-inner::before{border-color:rgba(255, 255, 255, 0.25);}.ant-picker-dropdown .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner::after,.ant-picker-dropdown .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner::after{position:absolute;top:0;bottom:0;z-index:-1;background:#2cf92c;transition:all 0.3s;content:\\"\\";}.ant-picker-dropdown .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-start .ant-picker-cell-inner::after{inset-inline-end:-6px;inset-inline-start:0;}.ant-picker-dropdown .ant-picker-date-panel .ant-picker-cell-in-view.ant-picker-cell-in-range.ant-picker-cell-range-hover-end .ant-picker-cell-inner::after{inset-inline-end:0;inset-inline-start:-6px;}.ant-picker-dropdown .ant-picker-range-hover.ant-picker-range-start::after{inset-inline-end:50%;}.ant-picker-dropdown .ant-picker-decade-panel .ant-picker-content,.ant-picker-dropdown .ant-picker-year-panel .ant-picker-content,.ant-picker-dropdown .ant-picker-quarter-panel .ant-picker-content,.ant-picker-dropdown .ant-picker-month-panel .ant-picker-content{height:264px;}.ant-picker-dropdown .ant-picker-decade-panel .ant-picker-cell-inner,.ant-picker-dropdown .ant-picker-year-panel .ant-picker-cell-inner,.ant-picker-dropdown .ant-picker-quarter-panel .ant-picker-cell-inner,.ant-picker-dropdown .ant-picker-month-panel .ant-picker-cell-inner{padding:0 8px;}.ant-picker-dropdown .ant-picker-quarter-panel .ant-picker-content{height:56px;}.ant-picker-dropdown .ant-picker-panel .ant-picker-footer{border-top:1px solid rgba(253, 253, 253, 0.12);}.ant-picker-dropdown .ant-picker-footer{width:min-content;min-width:100%;line-height:38px;text-align:center;}.ant-picker-dropdown .ant-picker-footer-extra{padding:0 12;line-height:38px;text-align:start;}.ant-picker-dropdown .ant-picker-footer-extra:not(:last-child){border-bottom:1px solid rgba(253, 253, 253, 0.12);}.ant-picker-dropdown .ant-picker-now{text-align:start;}.ant-picker-dropdown .ant-picker-today-btn{color:#1668dc;}.ant-picker-dropdown .ant-picker-today-btn:hover{color:#15417e;}.ant-picker-dropdown .ant-picker-today-btn:active{color:#1554ad;}.ant-picker-dropdown .ant-picker-today-btn.ant-picker-today-btn-disabled{color:rgba(255, 255, 255, 0.25);cursor:not-allowed;}.ant-picker-dropdown .ant-picker-decade-panel .ant-picker-cell-inner{padding:0 4px;}.ant-picker-dropdown .ant-picker-decade-panel .ant-picker-cell::before{display:none;}.ant-picker-dropdown .ant-picker-year-panel .ant-picker-body,.ant-picker-dropdown .ant-picker-quarter-panel .ant-picker-body,.ant-picker-dropdown .ant-picker-month-panel .ant-picker-body{padding:0 8px;}.ant-picker-dropdown .ant-picker-year-panel .ant-picker-cell-inner,.ant-picker-dropdown .ant-picker-quarter-panel .ant-picker-cell-inner,.ant-picker-dropdown .ant-picker-month-panel .ant-picker-cell-inner{width:60px;}.ant-picker-dropdown .ant-picker-year-panel .ant-picker-cell-range-hover-start::after,.ant-picker-dropdown .ant-picker-quarter-panel .ant-picker-cell-range-hover-start::after,.ant-picker-dropdown .ant-picker-month-panel .ant-picker-cell-range-hover-start::after{inset-inline-start:16px;border-inline-start:1px dashed #06d306;border-start-start-radius:4px;border-bottom-start-radius:4px;border-start-end-radius:0;border-bottom-end-radius:0;}.ant-picker-panel-rtl .ant-picker-dropdown .ant-picker-year-panel .ant-picker-cell-range-hover-start::after,.ant-picker-panel-rtl .ant-picker-dropdown .ant-picker-quarter-panel .ant-picker-cell-range-hover-start::after,.ant-picker-panel-rtl .ant-picker-dropdown .ant-picker-month-panel .ant-picker-cell-range-hover-start::after{inset-inline-end:16px;border-inline-end:1px dashed #06d306;border-start-start-radius:0;border-bottom-start-radius:0;border-start-end-radius:4px;border-bottom-end-radius:4px;}.ant-picker-dropdown .ant-picker-year-panel .ant-picker-cell-range-hover-end::after,.ant-picker-dropdown .ant-picker-quarter-panel .ant-picker-cell-range-hover-end::after,.ant-picker-dropdown .ant-picker-month-panel .ant-picker-cell-range-hover-end::after{inset-inline-end:16px;border-inline-end:1px dashed #06d306;border-start-start-radius:0;border-end-start-radius:0;border-start-end-radius:6px;border-end-end-radius:6px;}.ant-picker-panel-rtl .ant-picker-dropdown .ant-picker-year-panel .ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl .ant-picker-dropdown .ant-picker-quarter-panel .ant-picker-cell-range-hover-end::after,.ant-picker-panel-rtl .ant-picker-dropdown .ant-picker-month-panel .ant-picker-cell-range-hover-end::after{inset-inline-start:16px;border-inline-start:1px dashed #06d306;border-start-start-radius:6px;border-end-start-radius:6px;border-start-end-radius:0;border-end-end-radius:0;}.ant-picker-dropdown .ant-picker-week-panel .ant-picker-body{padding:8px 12px;}.ant-picker-dropdown .ant-picker-week-panel .ant-picker-cell:hover .ant-picker-cell-inner,.ant-picker-dropdown .ant-picker-week-panel .ant-picker-cell-selected .ant-picker-cell-inner,.ant-picker-dropdown .ant-picker-week-panel .ant-picker-cell .ant-picker-cell-inner{background:transparent!important;}.ant-picker-dropdown .ant-picker-week-panel-row td{transition:background 0.2s;}.ant-picker-dropdown .ant-picker-week-panel-row td:first-child{border-start-start-radius:4px;border-end-start-radius:4px;}.ant-picker-dropdown .ant-picker-week-panel-row td:last-child{border-start-end-radius:4px;border-end-end-radius:4px;}.ant-picker-dropdown .ant-picker-week-panel-row:hover td{background:rgba(255, 255, 255, 0.08);}.ant-picker-dropdown .ant-picker-week-panel-row-selected td,.ant-picker-dropdown .ant-picker-week-panel-row-selected:hover td{background:#037003;}.ant-picker-dropdown .ant-picker-week-panel-row-selected td.ant-picker-cell-week,.ant-picker-dropdown .ant-picker-week-panel-row-selected:hover td.ant-picker-cell-week{color:#ffffff;}.ant-picker-dropdown .ant-picker-week-panel-row-selected td.ant-picker-cell-today .ant-picker-cell-inner::before,.ant-picker-dropdown .ant-picker-week-panel-row-selected:hover td.ant-picker-cell-today .ant-picker-cell-inner::before{border-color:#fff;}.ant-picker-dropdown .ant-picker-week-panel-row-selected td .ant-picker-cell-inner,.ant-picker-dropdown .ant-picker-week-panel-row-selected:hover td .ant-picker-cell-inner{color:#fff;}.ant-picker-dropdown .ant-picker-date-panel .ant-picker-body{padding:8px 12px;}.ant-picker-dropdown .ant-picker-date-panel .ant-picker-content{width:252px;}.ant-picker-dropdown .ant-picker-date-panel .ant-picker-content th{width:36px;}.ant-picker-dropdown .ant-picker-datetime-panel{display:flex;}.ant-picker-dropdown .ant-picker-datetime-panel .ant-picker-time-panel{border-inline-start:1px solid rgba(253, 253, 253, 0.12);}.ant-picker-dropdown .ant-picker-datetime-panel .ant-picker-date-panel,.ant-picker-dropdown .ant-picker-datetime-panel .ant-picker-time-panel{transition:opacity 0.3s;}.ant-picker-dropdown .ant-picker-datetime-panel-active .ant-picker-date-panel,.ant-picker-dropdown .ant-picker-datetime-panel-active .ant-picker-time-panel{opacity:0.3;}.ant-picker-dropdown .ant-picker-datetime-panel-active .ant-picker-date-panel-active,.ant-picker-dropdown .ant-picker-datetime-panel-active .ant-picker-time-panel-active{opacity:1;}.ant-picker-dropdown .ant-picker-time-panel{width:auto;min-width:auto;direction:ltr;}.ant-picker-dropdown .ant-picker-time-panel .ant-picker-content{display:flex;flex:auto;height:224px;}.ant-picker-dropdown .ant-picker-time-panel-column{flex:1 0 auto;width:56px;margin:4px 0;padding:0;overflow-y:hidden;text-align:start;list-style:none;transition:background 0.2s;overflow-x:hidden;}.ant-picker-dropdown .ant-picker-time-panel-column::after{display:block;height:196px;content:\\"\\";}.ant-picker-dropdown .ant-picker-time-panel-column:not(:first-child){border-inline-start:1px solid rgba(253, 253, 253, 0.12);}.ant-picker-dropdown .ant-picker-time-panel-column-active{background:#111911;}.ant-picker-dropdown .ant-picker-time-panel-column:hover{overflow-y:auto;}.ant-picker-dropdown .ant-picker-time-panel-column >li{margin:0;padding:0;}.ant-picker-dropdown .ant-picker-time-panel-column >li.ant-picker-time-panel-cell{margin-inline:4px;}.ant-picker-dropdown .ant-picker-time-panel-column >li.ant-picker-time-panel-cell .ant-picker-time-panel-cell-inner{display:block;width:48px;height:28px;margin:0;padding-block:0;padding-inline-end:0;padding-inline-start:14px;color:rgba(255, 255, 255, 0.85);line-height:28px;border-radius:4px;cursor:pointer;transition:background 0.2s;}.ant-picker-dropdown .ant-picker-time-panel-column >li.ant-picker-time-panel-cell .ant-picker-time-panel-cell-inner:hover{background:rgba(255, 255, 255, 0.08);}.ant-picker-dropdown .ant-picker-time-panel-column >li.ant-picker-time-panel-cell-selected .ant-picker-time-panel-cell-inner{background:#111911;}.ant-picker-dropdown .ant-picker-time-panel-column >li.ant-picker-time-panel-cell-disabled .ant-picker-time-panel-cell-inner{color:rgba(255, 255, 255, 0.25);background:transparent;cursor:not-allowed;}.ant-picker-dropdown .ant-picker-datetime-panel .ant-picker-time-panel-column:after{height:204px;}.ant-picker-dropdown.ant-picker-dropdown-hidden{display:none;}.ant-picker-dropdown.ant-picker-dropdown-placement-bottomLeft .ant-picker-range-arrow{top:0;display:block;transform:translateY(-100%);}.ant-picker-dropdown.ant-picker-dropdown-placement-topLeft .ant-picker-range-arrow{bottom:0;display:block;transform:translateY(100%) rotate(180deg);}.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-topRight,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-topRight{animation-name:antSlideDownIn;}.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-picker-dropdown-placement-bottomRight,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-picker-dropdown-placement-bottomRight{animation-name:antSlideUpIn;}.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-topLeft,.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-topRight{animation-name:antSlideDownOut;}.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-bottomLeft,.ant-picker-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-picker-dropdown-placement-bottomRight{animation-name:antSlideUpOut;}.ant-picker-dropdown .ant-picker-panel>.ant-picker-time-panel{padding-top:4px;}.ant-picker-dropdown .ant-picker-ranges{margin-bottom:0;padding:4px 12px;overflow:hidden;line-height:34px;text-align:start;list-style:none;display:flex;justify-content:space-between;}.ant-picker-dropdown .ant-picker-ranges >li{display:inline-block;}.ant-picker-dropdown .ant-picker-ranges .ant-picker-preset>.ant-tag-blue{color:#037003;background:#111911;border-color:#0e340e;cursor:pointer;}.ant-picker-dropdown .ant-picker-ranges .ant-picker-ok{margin-inline-start:auto;}.ant-picker-dropdown .ant-picker-range-wrapper{display:flex;position:relative;}.ant-picker-dropdown .ant-picker-range-arrow{position:absolute;z-index:1;display:none;margin-inline-start:16.5px;transition:left 0.3s ease-out;pointer-events:none;width:16px;height:16px;overflow:hidden;}.ant-picker-dropdown .ant-picker-range-arrow::after{content:\\"\\";position:absolute;width:8.970562748477143px;height:8.970562748477143px;bottom:0;inset-inline:0;margin:auto;border-radius:0 0 2px 0;transform:translateY(50%) rotate(-135deg);box-shadow:3px 3px 7px rgba(0, 0, 0, 0.1);z-index:0;background:transparent;}.ant-picker-dropdown .ant-picker-range-arrow::before{position:absolute;bottom:0;inset-inline-start:0;width:16px;height:8px;background:#1f1f1f;clip-path:polygon(1.6568542494923806px 100%, 50% 1.6568542494923806px, 14.34314575050762px 100%, 1.6568542494923806px 100%);clip-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');content:\\"\\";}.ant-picker-dropdown .ant-picker-panel-container{overflow:hidden;vertical-align:top;background:#1f1f1f;border-radius:8px;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);transition:margin 0.3s;}.ant-picker-dropdown .ant-picker-panel-container .ant-picker-panel-layout{display:flex;flex-wrap:nowrap;align-items:stretch;}.ant-picker-dropdown .ant-picker-panel-container .ant-picker-presets{display:flex;flex-direction:column;min-width:120px;max-width:200px;}.ant-picker-dropdown .ant-picker-panel-container .ant-picker-presets ul{height:0;flex:auto;list-style:none;overflow:auto;margin:0;padding:8px;border-inline-end:1px solid rgba(253, 253, 253, 0.12);}.ant-picker-dropdown .ant-picker-panel-container .ant-picker-presets ul li{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;border-radius:4px;padding-inline:8px;padding-block:1px;cursor:pointer;transition:all 0.3s;}.ant-picker-dropdown .ant-picker-panel-container .ant-picker-presets ul li +li{margin-top:8px;}.ant-picker-dropdown .ant-picker-panel-container .ant-picker-presets ul li:hover{background:rgba(255, 255, 255, 0.08);}.ant-picker-dropdown .ant-picker-panel-container .ant-picker-panels{display:inline-flex;flex-wrap:nowrap;direction:ltr;}.ant-picker-dropdown .ant-picker-panel-container .ant-picker-panels .ant-picker-panel{border-width:0 0 1px;}.ant-picker-dropdown .ant-picker-panel-container .ant-picker-panels:last-child .ant-picker-panel{border-width:0;}.ant-picker-dropdown .ant-picker-panel-container .ant-picker-panel{vertical-align:top;background:transparent;border-radius:0;border-width:0;}.ant-picker-dropdown .ant-picker-panel-container .ant-picker-panel .ant-picker-content,.ant-picker-dropdown .ant-picker-panel-container .ant-picker-panel table{text-align:center;}.ant-picker-dropdown .ant-picker-panel-container .ant-picker-panel-focused{border-color:#424242;}.ant-picker-dropdown-range{padding:10.666666666666666px 0;}.ant-picker-dropdown-range-hidden{display:none;}.ant-picker-rtl{direction:rtl;}.ant-picker-rtl .ant-picker-separator{transform:rotate(180deg);}.ant-picker-rtl .ant-picker-footer-extra{direction:rtl;}.ant-slide-up-enter,.ant-slide-up-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-slide-up-leave{animation-duration:0.2s;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:cubic-bezier(0.23, 1, 0.32, 1);}.ant-slide-up-leave{animation-timing-function:cubic-bezier(0.755, 0.05, 0.855, 0.06);}.ant-slide-down-enter,.ant-slide-down-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-slide-down-leave{animation-duration:0.2s;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:cubic-bezier(0.23, 1, 0.32, 1);}.ant-slide-down-leave{animation-timing-function:cubic-bezier(0.755, 0.05, 0.855, 0.06);}.ant-move-up-enter,.ant-move-up-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-move-up-leave{animation-duration:0.2s;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:cubic-bezier(0.08, 0.82, 0.17, 1);}.ant-move-up-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}.ant-move-down-enter,.ant-move-down-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-move-down-leave{animation-duration:0.2s;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:cubic-bezier(0.08, 0.82, 0.17, 1);}.ant-move-down-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}.ant-picker-status-error.ant-picker,.ant-picker-status-error.ant-picker:not([disabled]):hover{background-color:#141414;border-color:#dc4446;}.ant-picker-status-error.ant-picker-focused,.ant-picker-status-error.ant-picker:focus{border-color:#dc4446;box-shadow:0 0 0 2px rgba(238, 38, 56, 0.11);border-inline-end-width:1px;outline:0;}.ant-picker-status-error.ant-picker .ant-picker-active-bar{background:#dc4446;}.ant-picker-status-warning.ant-picker,.ant-picker-status-warning.ant-picker:not([disabled]):hover{background-color:#141414;border-color:#d89614;}.ant-picker-status-warning.ant-picker-focused,.ant-picker-status-warning.ant-picker:focus{border-color:#d89614;box-shadow:0 0 0 2px rgba(173, 107, 0, 0.15);border-inline-end-width:1px;outline:0;}.ant-picker-status-warning.ant-picker .ant-picker-active-bar{background:#d89614;}.ant-picker-compact-item:not(.ant-picker-compact-last-item){margin-inline-end:-1px;}.ant-picker-compact-item:hover,.ant-picker-compact-item:active{z-index:2;}.ant-picker-compact-item.ant-picker-focused{z-index:2;}.ant-picker-compact-item[disabled]{z-index:0;}.ant-picker-compact-item:not(.ant-picker-compact-first-item):not(.ant-picker-compact-last-item){border-radius:0;}.ant-picker-compact-item:not(.ant-picker-compact-last-item).ant-picker-compact-first-item,.ant-picker-compact-item:not(.ant-picker-compact-last-item).ant-picker-compact-first-item.ant-picker-sm,.ant-picker-compact-item:not(.ant-picker-compact-last-item).ant-picker-compact-first-item.ant-picker-lg{border-start-end-radius:0;border-end-end-radius:0;}.ant-picker-compact-item:not(.ant-picker-compact-first-item).ant-picker-compact-last-item,.ant-picker-compact-item:not(.ant-picker-compact-first-item).ant-picker-compact-last-item.ant-picker-sm,.ant-picker-compact-item:not(.ant-picker-compact-first-item).ant-picker-compact-last-item.ant-picker-lg{border-start-start-radius:0;border-end-start-radius:0;}[class^=\\"ant-descriptions\\"],[class*=\\" ant-descriptions\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-descriptions\\"]::before,[class*=\\" ant-descriptions\\"]::before,[class^=\\"ant-descriptions\\"]::after,[class*=\\" ant-descriptions\\"]::after{box-sizing:border-box;}[class^=\\"ant-descriptions\\"] [class^=\\"ant-descriptions\\"],[class*=\\" ant-descriptions\\"] [class^=\\"ant-descriptions\\"],[class^=\\"ant-descriptions\\"] [class*=\\" ant-descriptions\\"],[class*=\\" ant-descriptions\\"] [class*=\\" ant-descriptions\\"]{box-sizing:border-box;}[class^=\\"ant-descriptions\\"] [class^=\\"ant-descriptions\\"]::before,[class*=\\" ant-descriptions\\"] [class^=\\"ant-descriptions\\"]::before,[class^=\\"ant-descriptions\\"] [class*=\\" ant-descriptions\\"]::before,[class*=\\" ant-descriptions\\"] [class*=\\" ant-descriptions\\"]::before,[class^=\\"ant-descriptions\\"] [class^=\\"ant-descriptions\\"]::after,[class*=\\" ant-descriptions\\"] [class^=\\"ant-descriptions\\"]::after,[class^=\\"ant-descriptions\\"] [class*=\\" ant-descriptions\\"]::after,[class*=\\" ant-descriptions\\"] [class*=\\" ant-descriptions\\"]::after{box-sizing:border-box;}.ant-descriptions{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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-descriptions.ant-descriptions-bordered .ant-descriptions-view{border:1px solid rgba(253, 253, 253, 0.12);}.ant-descriptions.ant-descriptions-bordered .ant-descriptions-view >table{table-layout:auto;border-collapse:collapse;}.ant-descriptions.ant-descriptions-bordered .ant-descriptions-item-label,.ant-descriptions.ant-descriptions-bordered .ant-descriptions-item-content{padding:16px 24px;border-inline-end:1px solid rgba(253, 253, 253, 0.12);}.ant-descriptions.ant-descriptions-bordered .ant-descriptions-item-label:last-child,.ant-descriptions.ant-descriptions-bordered .ant-descriptions-item-content:last-child{border-inline-end:none;}.ant-descriptions.ant-descriptions-bordered .ant-descriptions-item-label{background-color:rgba(255, 255, 255, 0.04);}.ant-descriptions.ant-descriptions-bordered .ant-descriptions-item-label::after{display:none;}.ant-descriptions.ant-descriptions-bordered .ant-descriptions-row{border-bottom:1px solid rgba(253, 253, 253, 0.12);}.ant-descriptions.ant-descriptions-bordered .ant-descriptions-row:last-child{border-bottom:none;}.ant-descriptions.ant-descriptions-bordered.ant-descriptions-middle .ant-descriptions-item-label,.ant-descriptions.ant-descriptions-bordered.ant-descriptions-middle .ant-descriptions-item-content{padding:12px 24px;}.ant-descriptions.ant-descriptions-bordered.ant-descriptions-small .ant-descriptions-item-label,.ant-descriptions.ant-descriptions-bordered.ant-descriptions-small .ant-descriptions-item-content{padding:8px 16px;}.ant-descriptions-rtl{direction:rtl;}.ant-descriptions .ant-descriptions-header{display:flex;align-items:center;margin-bottom:20px;}.ant-descriptions .ant-descriptions-title{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:auto;color:rgba(255, 255, 255, 0.85);font-weight:600;font-size:16px;line-height:1.5;}.ant-descriptions .ant-descriptions-extra{margin-inline-start:auto;color:rgba(255, 255, 255, 0.85);font-size:14px;}.ant-descriptions .ant-descriptions-view{width:100%;border-radius:8px;}.ant-descriptions .ant-descriptions-view table{width:100%;table-layout:fixed;}.ant-descriptions .ant-descriptions-row >th,.ant-descriptions .ant-descriptions-row >td{padding-bottom:16px;}.ant-descriptions .ant-descriptions-row:last-child{border-bottom:none;}.ant-descriptions .ant-descriptions-item-label{color:rgba(255, 255, 255, 0.85);font-weight:normal;font-size:14px;line-height:1.5714285714285714;text-align:start;}.ant-descriptions .ant-descriptions-item-label::after{content:\\":\\";position:relative;top:-0.5px;margin-inline:2px 8px;}.ant-descriptions .ant-descriptions-item-label.ant-descriptions-item-no-colon::after{content:\\"\\";}.ant-descriptions .ant-descriptions-item-no-label::after{margin:0;content:\\"\\";}.ant-descriptions .ant-descriptions-item-content{display:table-cell;flex:1;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;word-break:break-word;overflow-wrap:break-word;}.ant-descriptions .ant-descriptions-item{padding-bottom:0;vertical-align:top;}.ant-descriptions .ant-descriptions-item-container{display:flex;}.ant-descriptions .ant-descriptions-item-container .ant-descriptions-item-label{display:inline-flex;align-items:baseline;}.ant-descriptions .ant-descriptions-item-container .ant-descriptions-item-content{display:inline-flex;align-items:baseline;}.ant-descriptions-middle .ant-descriptions-row >th,.ant-descriptions-middle .ant-descriptions-row >td{padding-bottom:12px;}.ant-descriptions-small .ant-descriptions-row >th,.ant-descriptions-small .ant-descriptions-row >td{padding-bottom:8px;}[class^=\\"ant-divider\\"],[class*=\\" ant-divider\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-divider\\"]::before,[class*=\\" ant-divider\\"]::before,[class^=\\"ant-divider\\"]::after,[class*=\\" ant-divider\\"]::after{box-sizing:border-box;}[class^=\\"ant-divider\\"] [class^=\\"ant-divider\\"],[class*=\\" ant-divider\\"] [class^=\\"ant-divider\\"],[class^=\\"ant-divider\\"] [class*=\\" ant-divider\\"],[class*=\\" ant-divider\\"] [class*=\\" ant-divider\\"]{box-sizing:border-box;}[class^=\\"ant-divider\\"] [class^=\\"ant-divider\\"]::before,[class*=\\" ant-divider\\"] [class^=\\"ant-divider\\"]::before,[class^=\\"ant-divider\\"] [class*=\\" ant-divider\\"]::before,[class*=\\" ant-divider\\"] [class*=\\" ant-divider\\"]::before,[class^=\\"ant-divider\\"] [class^=\\"ant-divider\\"]::after,[class*=\\" ant-divider\\"] [class^=\\"ant-divider\\"]::after,[class^=\\"ant-divider\\"] [class*=\\" ant-divider\\"]::after,[class*=\\" ant-divider\\"] [class*=\\" ant-divider\\"]::after{box-sizing:border-box;}.ant-divider{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';border-block-start:1px solid rgba(253, 253, 253, 0.12);}.ant-divider-vertical{position:relative;top:-0.06em;display:inline-block;height:0.9em;margin:0 8px;vertical-align:middle;border-top:0;border-inline-start:1px solid rgba(253, 253, 253, 0.12);}.ant-divider-horizontal{display:flex;clear:both;width:100%;min-width:100%;margin:24px 0;}.ant-divider-horizontal.ant-divider-with-text{display:flex;align-items:center;margin:16px 0;color:rgba(255, 255, 255, 0.85);font-weight:500;font-size:16px;white-space:nowrap;text-align:center;border-block-start:0 rgba(253, 253, 253, 0.12);}.ant-divider-horizontal.ant-divider-with-text::before,.ant-divider-horizontal.ant-divider-with-text::after{position:relative;width:50%;border-block-start:1px solid transparent;border-block-start-color:inherit;border-block-end:0;transform:translateY(50%);content:'';}.ant-divider-horizontal.ant-divider-with-text-left::before{width:5%;}.ant-divider-horizontal.ant-divider-with-text-left::after{width:95%;}.ant-divider-horizontal.ant-divider-with-text-right::before{width:95%;}.ant-divider-horizontal.ant-divider-with-text-right::after{width:5%;}.ant-divider .ant-divider-inner-text{display:inline-block;padding:0 1em;}.ant-divider-dashed{background:none;border-color:rgba(253, 253, 253, 0.12);border-style:dashed;border-width:1px 0 0;}.ant-divider-horizontal.ant-divider-with-text.ant-divider-dashed::before,.ant-divider-horizontal.ant-divider-with-text.ant-divider-dashed::after{border-style:dashed none none;}.ant-divider-vertical.ant-divider-dashed{border-inline-start:1px;border-inline-end:0;border-block-start:0;border-block-end:0;}.ant-divider-plain.ant-divider-with-text{color:rgba(255, 255, 255, 0.85);font-weight:normal;font-size:14px;}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left::before{width:0;}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left::after{width:100%;}.ant-divider-horizontal.ant-divider-with-text-left.ant-divider-no-default-orientation-margin-left .ant-divider-inner-text{padding-inline-start:0;}.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right::before{width:100%;}.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right::after{width:0;}.ant-divider-horizontal.ant-divider-with-text-right.ant-divider-no-default-orientation-margin-right .ant-divider-inner-text{padding-inline-end:0;}[class^=\\"ant-dropdown\\"],[class*=\\" ant-dropdown\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-dropdown\\"]::before,[class*=\\" ant-dropdown\\"]::before,[class^=\\"ant-dropdown\\"]::after,[class*=\\" ant-dropdown\\"]::after{box-sizing:border-box;}[class^=\\"ant-dropdown\\"] [class^=\\"ant-dropdown\\"],[class*=\\" ant-dropdown\\"] [class^=\\"ant-dropdown\\"],[class^=\\"ant-dropdown\\"] [class*=\\" ant-dropdown\\"],[class*=\\" ant-dropdown\\"] [class*=\\" ant-dropdown\\"]{box-sizing:border-box;}[class^=\\"ant-dropdown\\"] [class^=\\"ant-dropdown\\"]::before,[class*=\\" ant-dropdown\\"] [class^=\\"ant-dropdown\\"]::before,[class^=\\"ant-dropdown\\"] [class*=\\" ant-dropdown\\"]::before,[class*=\\" ant-dropdown\\"] [class*=\\" ant-dropdown\\"]::before,[class^=\\"ant-dropdown\\"] [class^=\\"ant-dropdown\\"]::after,[class*=\\" ant-dropdown\\"] [class^=\\"ant-dropdown\\"]::after,[class^=\\"ant-dropdown\\"] [class*=\\" ant-dropdown\\"]::after,[class*=\\" ant-dropdown\\"] [class*=\\" ant-dropdown\\"]::after{box-sizing:border-box;}.ant-dropdown{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:absolute;top:-9999px;left:-9999px;z-index:1050;display:block;}.ant-dropdown::before{position:absolute;inset-block:-4px;z-index:-9999;opacity:0.0001;content:\\"\\";}.ant-dropdown .ant-dropdown-wrap{position:relative;}.ant-dropdown .ant-dropdown-wrap .ant-btn>.anticon-down{font-size:12px;}.ant-dropdown .ant-dropdown-wrap .anticon-down::before{transition:transform 0.2s;}.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-show-arrow.ant-dropdown-placement-topLeft,.ant-dropdown-show-arrow.ant-dropdown-placement-top,.ant-dropdown-show-arrow.ant-dropdown-placement-topRight{padding-bottom:12px;}.ant-dropdown-show-arrow.ant-dropdown-placement-bottomLeft,.ant-dropdown-show-arrow.ant-dropdown-placement-bottom,.ant-dropdown-show-arrow.ant-dropdown-placement-bottomRight{padding-top:12px;}.ant-dropdown .ant-dropdown-arrow{position:absolute;z-index:1;display:block;pointer-events:none;width:16px;height:16px;overflow:hidden;}.ant-dropdown .ant-dropdown-arrow::after{content:\\"\\";position:absolute;width:8.970562748477143px;height:8.970562748477143px;bottom:0;inset-inline:0;margin:auto;border-radius:0 0 2px 0;transform:translateY(50%) rotate(-135deg);box-shadow:3px 3px 7px rgba(0, 0, 0, 0.1);z-index:0;background:transparent;}.ant-dropdown .ant-dropdown-arrow::before{position:absolute;bottom:0;inset-inline-start:0;width:16px;height:8px;background:#1f1f1f;clip-path:polygon(1.6568542494923806px 100%, 50% 1.6568542494923806px, 14.34314575050762px 100%, 1.6568542494923806px 100%);clip-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');content:\\"\\";}.ant-dropdown-placement-top>.ant-dropdown-arrow,.ant-dropdown-placement-topLeft>.ant-dropdown-arrow,.ant-dropdown-placement-topRight>.ant-dropdown-arrow{bottom:12px;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>.ant-dropdown-arrow{left:6px;}.ant-dropdown-placement-topRight>.ant-dropdown-arrow{right:6px;}.ant-dropdown-placement-bottom>.ant-dropdown-arrow,.ant-dropdown-placement-bottomLeft>.ant-dropdown-arrow,.ant-dropdown-placement-bottomRight>.ant-dropdown-arrow{top:12px;transform:translateY(-100%);}.ant-dropdown-placement-bottom>.ant-dropdown-arrow{left:50%;transform:translateY(-100%) translateX(-50%);}.ant-dropdown-placement-bottomLeft>.ant-dropdown-arrow{left:6px;}.ant-dropdown-placement-bottomRight>.ant-dropdown-arrow{right:6px;}.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-menu{position:relative;margin:0;}.ant-dropdown-menu-submenu-popup{position:absolute;z-index:1050;background:transparent;box-shadow:none;transform-origin:0 0;}.ant-dropdown-menu-submenu-popup ul,.ant-dropdown-menu-submenu-popup li{list-style:none;}.ant-dropdown-menu-submenu-popup ul{margin-inline:0.3em;}.ant-dropdown .ant-dropdown-menu,.ant-dropdown-menu-submenu .ant-dropdown-menu{padding:4px;list-style-type:none;background-color:#1f1f1f;background-clip:padding-box;border-radius:8px;outline:none;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-dropdown .ant-dropdown-menu:focus-visible,.ant-dropdown-menu-submenu .ant-dropdown-menu:focus-visible{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.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:5px 12px;color:rgba(255, 255, 255, 0.45);transition:all 0.2s;}.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;border-radius:4px;}.ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-icon,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-icon{min-width:14px;margin-inline-end:8px;font-size:12px;}.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 >a,.ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-title-content >a{color:inherit;transition:all 0.2s;}.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-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{clear:both;margin:0;padding:5px 12px;color:rgba(255, 255, 255, 0.85);font-weight:normal;font-size:14px;line-height:1.5714285714285714;cursor:pointer;transition:all 0.2s;}.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:rgba(255, 255, 255, 0.08);}.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:2px solid #0e340e;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:#037003;background-color:#111911;}.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:#0f2510;}.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:rgba(255, 255, 255, 0.25);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:rgba(255, 255, 255, 0.25);background-color:#1f1f1f;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:4px 0;overflow:hidden;line-height:0;background-color:rgba(253, 253, 253, 0.12);}.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:8px;}.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:rgba(255, 255, 255, 0.45);font-size:12px;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 8px;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:24px;}.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:rgba(255, 255, 255, 0.25);background-color:#1f1f1f;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:#037003;}.ant-slide-up-enter,.ant-slide-up-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-slide-up-leave{animation-duration:0.2s;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:cubic-bezier(0.23, 1, 0.32, 1);}.ant-slide-up-leave{animation-timing-function:cubic-bezier(0.755, 0.05, 0.855, 0.06);}.ant-slide-down-enter,.ant-slide-down-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-slide-down-leave{animation-duration:0.2s;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:cubic-bezier(0.23, 1, 0.32, 1);}.ant-slide-down-leave{animation-timing-function:cubic-bezier(0.755, 0.05, 0.855, 0.06);}.ant-move-up-enter,.ant-move-up-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-move-up-leave{animation-duration:0.2s;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:cubic-bezier(0.08, 0.82, 0.17, 1);}.ant-move-up-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}.ant-move-down-enter,.ant-move-down-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-move-down-leave{animation-duration:0.2s;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:cubic-bezier(0.08, 0.82, 0.17, 1);}.ant-move-down-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}.ant-zoom-big-enter,.ant-zoom-big-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-zoom-big-leave{animation-duration:0.2s;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:cubic-bezier(0.08, 0.82, 0.17, 1);}.ant-zoom-big-enter-prepare,.ant-zoom-big-appear-prepare{transform:none;}.ant-zoom-big-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}.ant-dropdown-button{white-space:nowrap;}.ant-dropdown-button.ant-btn-group>.ant-btn-loading,.ant-dropdown-button.ant-btn-group>.ant-btn-loading+.ant-btn{cursor:default;pointer-events:none;opacity:0.65;}.ant-dropdown-button.ant-btn-group>.ant-btn:last-child:not(:first-child):not(.ant-btn-icon-only){padding-inline:8px;}.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:#dc4446;}.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:#fff;background-color:#dc4446;}@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;}}[class^=\\"ant-drawer\\"],[class*=\\" ant-drawer\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-drawer\\"]::before,[class*=\\" ant-drawer\\"]::before,[class^=\\"ant-drawer\\"]::after,[class*=\\" ant-drawer\\"]::after{box-sizing:border-box;}[class^=\\"ant-drawer\\"] [class^=\\"ant-drawer\\"],[class*=\\" ant-drawer\\"] [class^=\\"ant-drawer\\"],[class^=\\"ant-drawer\\"] [class*=\\" ant-drawer\\"],[class*=\\" ant-drawer\\"] [class*=\\" ant-drawer\\"]{box-sizing:border-box;}[class^=\\"ant-drawer\\"] [class^=\\"ant-drawer\\"]::before,[class*=\\" ant-drawer\\"] [class^=\\"ant-drawer\\"]::before,[class^=\\"ant-drawer\\"] [class*=\\" ant-drawer\\"]::before,[class*=\\" ant-drawer\\"] [class*=\\" ant-drawer\\"]::before,[class^=\\"ant-drawer\\"] [class^=\\"ant-drawer\\"]::after,[class*=\\" ant-drawer\\"] [class^=\\"ant-drawer\\"]::after,[class^=\\"ant-drawer\\"] [class*=\\" ant-drawer\\"]::after,[class*=\\" ant-drawer\\"] [class*=\\" ant-drawer\\"]::after{box-sizing:border-box;}.ant-drawer{position:fixed;inset:0;z-index:1000;pointer-events:none;}.ant-drawer-pure{position:relative;background:#1f1f1f;}.ant-drawer-pure.ant-drawer-left{box-shadow: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-drawer-pure.ant-drawer-right{box-shadow:-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-drawer-pure.ant-drawer-top{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-drawer-pure.ant-drawer-bottom{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-drawer-inline{position:absolute;}.ant-drawer .ant-drawer-mask{position:absolute;inset:0;z-index:1000;background:rgba(0, 0, 0, 0.45);pointer-events:auto;}.ant-drawer .ant-drawer-content-wrapper{position:absolute;z-index:1000;transition:all 0.3s;}.ant-drawer .ant-drawer-content-wrapper-hidden{display:none;}.ant-drawer-left>.ant-drawer-content-wrapper{top:0;bottom:0;left:0;box-shadow: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-drawer-right>.ant-drawer-content-wrapper{top:0;right:0;bottom:0;box-shadow:-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-drawer-top>.ant-drawer-content-wrapper{top:0;inset-inline:0;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-drawer-bottom>.ant-drawer-content-wrapper{bottom:0;inset-inline:0;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-drawer .ant-drawer-content{width:100%;height:100%;overflow:auto;background:#1f1f1f;pointer-events:auto;}.ant-drawer .ant-drawer-wrapper-body{display:flex;flex-direction:column;width:100%;height:100%;}.ant-drawer .ant-drawer-header{display:flex;flex:0;align-items:center;padding:16px 24px;font-size:16px;line-height:1.5;border-bottom:1px solid rgba(253, 253, 253, 0.12);}.ant-drawer .ant-drawer-header-title{display:flex;flex:1;align-items:center;min-width:0;min-height:0;}.ant-drawer .ant-drawer-extra{flex:none;}.ant-drawer .ant-drawer-close{display:inline-block;margin-inline-end:12px;color:rgba(255, 255, 255, 0.45);font-weight:600;font-size:16px;font-style:normal;line-height:1;text-align:center;text-transform:none;text-decoration:none;background:transparent;border:0;outline:0;cursor:pointer;transition:color 0.2s;text-rendering:auto;}.ant-drawer .ant-drawer-close:focus,.ant-drawer .ant-drawer-close:hover{color:rgba(255, 255, 255, 0.85);text-decoration:none;}.ant-drawer .ant-drawer-title{flex:1;margin:0;color:rgba(255, 255, 255, 0.85);font-weight:600;font-size:16px;line-height:1.5;}.ant-drawer .ant-drawer-body{flex:1;min-width:0;min-height:0;padding:24px;overflow:auto;}.ant-drawer .ant-drawer-footer{flex-shrink:0;padding:8px 16px;border-top:1px solid rgba(253, 253, 253, 0.12);}.ant-drawer-rtl{direction:rtl;}.ant-drawer .ant-drawer-mask-motion-enter-active,.ant-drawer .ant-drawer-mask-motion-appear-active,.ant-drawer .ant-drawer-mask-motion-leave-active{transition:all 0.3s;}.ant-drawer .ant-drawer-mask-motion-enter,.ant-drawer .ant-drawer-mask-motion-appear{opacity:0;}.ant-drawer .ant-drawer-mask-motion-enter-active,.ant-drawer .ant-drawer-mask-motion-appear-active{opacity:1;}.ant-drawer .ant-drawer-mask-motion-leave{opacity:1;}.ant-drawer .ant-drawer-mask-motion-leave-active{opacity:0;}.ant-drawer .ant-drawer-panel-motion-left-enter-start,.ant-drawer .ant-drawer-panel-motion-left-appear-start,.ant-drawer .ant-drawer-panel-motion-left-leave-start{transition:none;}.ant-drawer .ant-drawer-panel-motion-left-enter-active,.ant-drawer .ant-drawer-panel-motion-left-appear-active,.ant-drawer .ant-drawer-panel-motion-left-leave-active{transition:all 0.3s;}.ant-drawer .ant-drawer-panel-motion-left-enter-start,.ant-drawer .ant-drawer-panel-motion-left-appear-start{transform:translateX(-100%)!important;}.ant-drawer .ant-drawer-panel-motion-left-enter-active,.ant-drawer .ant-drawer-panel-motion-left-appear-active{transform:translateX(0);}.ant-drawer .ant-drawer-panel-motion-left-leave{transform:translateX(0);}.ant-drawer .ant-drawer-panel-motion-left-leave-active{transform:translateX(-100%);}.ant-drawer .ant-drawer-panel-motion-right-enter-start,.ant-drawer .ant-drawer-panel-motion-right-appear-start,.ant-drawer .ant-drawer-panel-motion-right-leave-start{transition:none;}.ant-drawer .ant-drawer-panel-motion-right-enter-active,.ant-drawer .ant-drawer-panel-motion-right-appear-active,.ant-drawer .ant-drawer-panel-motion-right-leave-active{transition:all 0.3s;}.ant-drawer .ant-drawer-panel-motion-right-enter-start,.ant-drawer .ant-drawer-panel-motion-right-appear-start{transform:translateX(100%)!important;}.ant-drawer .ant-drawer-panel-motion-right-enter-active,.ant-drawer .ant-drawer-panel-motion-right-appear-active{transform:translateX(0);}.ant-drawer .ant-drawer-panel-motion-right-leave{transform:translateX(0);}.ant-drawer .ant-drawer-panel-motion-right-leave-active{transform:translateX(100%);}.ant-drawer .ant-drawer-panel-motion-top-enter-start,.ant-drawer .ant-drawer-panel-motion-top-appear-start,.ant-drawer .ant-drawer-panel-motion-top-leave-start{transition:none;}.ant-drawer .ant-drawer-panel-motion-top-enter-active,.ant-drawer .ant-drawer-panel-motion-top-appear-active,.ant-drawer .ant-drawer-panel-motion-top-leave-active{transition:all 0.3s;}.ant-drawer .ant-drawer-panel-motion-top-enter-start,.ant-drawer .ant-drawer-panel-motion-top-appear-start{transform:translateY(-100%)!important;}.ant-drawer .ant-drawer-panel-motion-top-enter-active,.ant-drawer .ant-drawer-panel-motion-top-appear-active{transform:translateY(0);}.ant-drawer .ant-drawer-panel-motion-top-leave{transform:translateY(0);}.ant-drawer .ant-drawer-panel-motion-top-leave-active{transform:translateY(-100%);}.ant-drawer .ant-drawer-panel-motion-bottom-enter-start,.ant-drawer .ant-drawer-panel-motion-bottom-appear-start,.ant-drawer .ant-drawer-panel-motion-bottom-leave-start{transition:none;}.ant-drawer .ant-drawer-panel-motion-bottom-enter-active,.ant-drawer .ant-drawer-panel-motion-bottom-appear-active,.ant-drawer .ant-drawer-panel-motion-bottom-leave-active{transition:all 0.3s;}.ant-drawer .ant-drawer-panel-motion-bottom-enter-start,.ant-drawer .ant-drawer-panel-motion-bottom-appear-start{transform:translateY(100%)!important;}.ant-drawer .ant-drawer-panel-motion-bottom-enter-active,.ant-drawer .ant-drawer-panel-motion-bottom-appear-active{transform:translateY(0);}.ant-drawer .ant-drawer-panel-motion-bottom-leave{transform:translateY(0);}.ant-drawer .ant-drawer-panel-motion-bottom-leave-active{transform:translateY(100%);}[class^=\\"ant-empty\\"],[class*=\\" ant-empty\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-empty\\"]::before,[class*=\\" ant-empty\\"]::before,[class^=\\"ant-empty\\"]::after,[class*=\\" ant-empty\\"]::after{box-sizing:border-box;}[class^=\\"ant-empty\\"] [class^=\\"ant-empty\\"],[class*=\\" ant-empty\\"] [class^=\\"ant-empty\\"],[class^=\\"ant-empty\\"] [class*=\\" ant-empty\\"],[class*=\\" ant-empty\\"] [class*=\\" ant-empty\\"]{box-sizing:border-box;}[class^=\\"ant-empty\\"] [class^=\\"ant-empty\\"]::before,[class*=\\" ant-empty\\"] [class^=\\"ant-empty\\"]::before,[class^=\\"ant-empty\\"] [class*=\\" ant-empty\\"]::before,[class*=\\" ant-empty\\"] [class*=\\" ant-empty\\"]::before,[class^=\\"ant-empty\\"] [class^=\\"ant-empty\\"]::after,[class*=\\" ant-empty\\"] [class^=\\"ant-empty\\"]::after,[class^=\\"ant-empty\\"] [class*=\\" ant-empty\\"]::after,[class*=\\" ant-empty\\"] [class*=\\" ant-empty\\"]::after{box-sizing:border-box;}.ant-empty{margin-inline:8px;font-size:14px;line-height:1.5714285714285714;text-align:center;}.ant-empty .ant-empty-image{height:100px;margin-bottom:8px;opacity:1;}.ant-empty .ant-empty-image img{height:100%;}.ant-empty .ant-empty-image svg{height:100%;margin:auto;}.ant-empty .ant-empty-footer{margin-top:16px;}.ant-empty-normal{margin-block:32px;color:rgba(255, 255, 255, 0.25);}.ant-empty-normal .ant-empty-image{height:40px;}.ant-empty-small{margin-block:8px;color:rgba(255, 255, 255, 0.25);}.ant-empty-small .ant-empty-image{height:35px;}[class^=\\"ant-float-btn\\"],[class*=\\" ant-float-btn\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-float-btn\\"]::before,[class*=\\" ant-float-btn\\"]::before,[class^=\\"ant-float-btn\\"]::after,[class*=\\" ant-float-btn\\"]::after{box-sizing:border-box;}[class^=\\"ant-float-btn\\"] [class^=\\"ant-float-btn\\"],[class*=\\" ant-float-btn\\"] [class^=\\"ant-float-btn\\"],[class^=\\"ant-float-btn\\"] [class*=\\" ant-float-btn\\"],[class*=\\" ant-float-btn\\"] [class*=\\" ant-float-btn\\"]{box-sizing:border-box;}[class^=\\"ant-float-btn\\"] [class^=\\"ant-float-btn\\"]::before,[class*=\\" ant-float-btn\\"] [class^=\\"ant-float-btn\\"]::before,[class^=\\"ant-float-btn\\"] [class*=\\" ant-float-btn\\"]::before,[class*=\\" ant-float-btn\\"] [class*=\\" ant-float-btn\\"]::before,[class^=\\"ant-float-btn\\"] [class^=\\"ant-float-btn\\"]::after,[class*=\\" ant-float-btn\\"] [class^=\\"ant-float-btn\\"]::after,[class^=\\"ant-float-btn\\"] [class*=\\" ant-float-btn\\"]::after,[class*=\\" ant-float-btn\\"] [class*=\\" ant-float-btn\\"]::after{box-sizing:border-box;}.ant-float-btn-group{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';z-index:99;display:block;border:none;position:fixed;width:40px;height:auto;box-shadow:none;min-height:40px;inset-inline-end:24px;inset-block-end:48px;border-radius:8px;}.ant-float-btn-group .ant-float-btn-group-wrap{z-index:-1;display:block;position:relative;margin-bottom:16px;}.ant-float-btn-group.ant-float-btn-group-rtl{direction:rtl;}.ant-float-btn-group .ant-float-btn{position:static;}.ant-float-btn-group-circle .ant-float-btn-circle:not(:last-child){margin-bottom:16px;}.ant-float-btn-group-circle .ant-float-btn-circle:not(:last-child) .ant-float-btn-body{width:40px;height:40px;border-radius:50%;}.ant-float-btn-group-square .ant-float-btn-square{border-radius:0;padding:0;}.ant-float-btn-group-square .ant-float-btn-square:first-child{border-start-start-radius:8px;border-start-end-radius:8px;}.ant-float-btn-group-square .ant-float-btn-square:last-child{border-end-start-radius:8px;border-end-end-radius:8px;}.ant-float-btn-group-square .ant-float-btn-square:not(:last-child){border-bottom:1px solid rgba(253, 253, 253, 0.12);}.ant-float-btn-group-square .ant-float-btn-square .ant-badge .ant-badge-count{top:-10px;inset-inline-end:-10px;}.ant-float-btn-group-square .ant-float-btn-group-wrap{display:block;border-radius:8px;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-float-btn-group-square .ant-float-btn-group-wrap .ant-float-btn-square{box-shadow:none;margin-top:0;border-radius:0;padding:4px;}.ant-float-btn-group-square .ant-float-btn-group-wrap .ant-float-btn-square:first-child{border-start-start-radius:8px;border-start-end-radius:8px;}.ant-float-btn-group-square .ant-float-btn-group-wrap .ant-float-btn-square:last-child{border-end-start-radius:8px;border-end-end-radius:8px;}.ant-float-btn-group-square .ant-float-btn-group-wrap .ant-float-btn-square:not(:last-child){border-bottom:1px solid rgba(253, 253, 253, 0.12);}.ant-float-btn-group-square .ant-float-btn-group-wrap .ant-float-btn-square .ant-float-btn-body{width:32px;height:32px;}.ant-float-btn-group-circle-shadow{box-shadow:none;}.ant-float-btn-group-square-shadow{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-float-btn-group-square-shadow .ant-float-btn-square{box-shadow:none;padding:4px;}.ant-float-btn-group-square-shadow .ant-float-btn-square .ant-float-btn-body{width:32px;height:32px;border-radius:4px;}.ant-float-btn{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';border:none;position:fixed;cursor:pointer;z-index:99;display:block;justify-content:center;align-items:center;width:40px;height:40px;inset-inline-end:24px;inset-block-end:48px;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-float-btn-pure{position:relative;inset:auto;}.ant-float-btn:empty{display:none;}.ant-float-btn .ant-badge{width:100%;height:100%;}.ant-float-btn .ant-badge .ant-badge-count{transform:translate(0, 0);transform-origin:center;top:-6px;inset-inline-end:-6px;}.ant-float-btn .ant-float-btn-body{width:100%;height:100%;display:flex;justify-content:center;align-items:center;transition:all 0.2s;}.ant-float-btn .ant-float-btn-body .ant-float-btn-content{overflow:hidden;text-align:center;min-height:40px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:2px 4px;}.ant-float-btn .ant-float-btn-body .ant-float-btn-content .ant-float-btn-icon{text-align:center;margin:auto;width:18px;font-size:18px;line-height:1;}.ant-float-btn-rtl{direction:rtl;}.ant-float-btn-circle{height:40px;border-radius:50%;}.ant-float-btn-circle .ant-badge .ant-badge-dot{top:5.857864376269049px;inset-inline-end:5.857864376269049px;}.ant-float-btn-circle .ant-float-btn-body{border-radius:50%;}.ant-float-btn-square{height:auto;min-height:40px;border-radius:8px;}.ant-float-btn-square .ant-badge .ant-badge-dot{top:2.3431457505076194px;inset-inline-end:2.3431457505076194px;}.ant-float-btn-square .ant-float-btn-body{height:auto;border-radius:8px;}.ant-float-btn-default{background-color:#1f1f1f;transition:background-color 0.2s;}.ant-float-btn-default .ant-float-btn-body{background-color:#1f1f1f;transition:background-color 0.2s;}.ant-float-btn-default .ant-float-btn-body:hover{background-color:rgba(255, 255, 255, 0.12);}.ant-float-btn-default .ant-float-btn-body .ant-float-btn-content .ant-float-btn-icon{color:rgba(255, 255, 255, 0.85);}.ant-float-btn-default .ant-float-btn-body .ant-float-btn-content .ant-float-btn-description{display:flex;align-items:center;line-height:16px;color:rgba(255, 255, 255, 0.85);font-size:12px;}.ant-float-btn-primary{background-color:#037003;}.ant-float-btn-primary .ant-float-btn-body{background-color:#037003;transition:background-color 0.2s;}.ant-float-btn-primary .ant-float-btn-body:hover{background-color:#198016;}.ant-float-btn-primary .ant-float-btn-body .ant-float-btn-content .ant-float-btn-icon{color:#fff;}.ant-float-btn-primary .ant-float-btn-body .ant-float-btn-content .ant-float-btn-description{display:flex;align-items:center;line-height:16px;color:#fff;font-size:12px;}.ant-fade-enter,.ant-fade-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-fade-leave{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-fade-enter.ant-fade-enter-active,.ant-fade-appear.ant-fade-appear-active{animation-name:antFadeIn;animation-play-state:running;}.ant-fade-leave.ant-fade-leave-active{animation-name:antFadeOut;animation-play-state:running;pointer-events:none;}.ant-fade-enter,.ant-fade-appear{opacity:0;animation-timing-function:linear;}.ant-fade-leave{animation-timing-function:linear;}.ant-float-btn-group-wrap.ant-float-btn-group-wrap-enter,.ant-float-btn-group-wrap.ant-float-btn-group-wrap-appear{animation-duration:0.3s;animation-fill-mode:both;animation-play-state:paused;}.ant-float-btn-group-wrap.ant-float-btn-group-wrap-leave{animation-duration:0.3s;animation-fill-mode:both;animation-play-state:paused;}.ant-float-btn-group-wrap.ant-float-btn-group-wrap-enter.ant-float-btn-group-wrap-enter-active,.ant-float-btn-group-wrap.ant-float-btn-group-wrap-appear.ant-float-btn-group-wrap-appear-active{animation-name:antFloatButtonMoveDownIn;animation-play-state:running;}.ant-float-btn-group-wrap.ant-float-btn-group-wrap-leave.ant-float-btn-group-wrap-leave-active{animation-name:antFloatButtonMoveDownOut;animation-play-state:running;pointer-events:none;}.ant-float-btn-group-wrap.ant-float-btn-group-wrap-enter,.ant-float-btn-group-wrap.ant-float-btn-group-wrap-appear{opacity:0;animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}.ant-float-btn-group-wrap.ant-float-btn-group-wrap-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}@keyframes antFadeIn{0%{opacity:0;}100%{opacity:1;}}@keyframes antFadeOut{0%{opacity:1;}100%{opacity:0;}}@keyframes antFloatButtonMoveDownIn{0%{transform:translate3d(0, 40px, 0);transform-origin:0 0;opacity:0;}100%{transform:translate3d(0, 0, 0);transform-origin:0 0;opacity:1;}}@keyframes antFloatButtonMoveDownOut{0%{transform:translate3d(0, 0, 0);transform-origin:0 0;opacity:1;}100%{transform:translate3d(0, 40px, 0);transform-origin:0 0;opacity:0;}}[class^=\\"ant-tooltip\\"],[class*=\\" ant-tooltip\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-tooltip\\"]::before,[class*=\\" ant-tooltip\\"]::before,[class^=\\"ant-tooltip\\"]::after,[class*=\\" ant-tooltip\\"]::after{box-sizing:border-box;}[class^=\\"ant-tooltip\\"] [class^=\\"ant-tooltip\\"],[class*=\\" ant-tooltip\\"] [class^=\\"ant-tooltip\\"],[class^=\\"ant-tooltip\\"] [class*=\\" ant-tooltip\\"],[class*=\\" ant-tooltip\\"] [class*=\\" ant-tooltip\\"]{box-sizing:border-box;}[class^=\\"ant-tooltip\\"] [class^=\\"ant-tooltip\\"]::before,[class*=\\" ant-tooltip\\"] [class^=\\"ant-tooltip\\"]::before,[class^=\\"ant-tooltip\\"] [class*=\\" ant-tooltip\\"]::before,[class*=\\" ant-tooltip\\"] [class*=\\" ant-tooltip\\"]::before,[class^=\\"ant-tooltip\\"] [class^=\\"ant-tooltip\\"]::after,[class*=\\" ant-tooltip\\"] [class^=\\"ant-tooltip\\"]::after,[class^=\\"ant-tooltip\\"] [class*=\\" ant-tooltip\\"]::after,[class*=\\" ant-tooltip\\"] [class*=\\" ant-tooltip\\"]::after{box-sizing:border-box;}.ant-tooltip{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:absolute;z-index:1070;display:block;max-width:250px;visibility:visible;--antd-arrow-background-color:#424242;}.ant-tooltip{width:max-content;width:intrinsic;}.ant-tooltip-hidden{display:none;}.ant-tooltip .ant-tooltip-inner{min-width:32px;min-height:32px;padding:6px 8px;color:#fff;text-align:start;text-decoration:none;word-wrap:break-word;background-color:#424242;border-radius:6px;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-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:6px;}.ant-tooltip .ant-tooltip-content{position:relative;}.ant-tooltip.ant-tooltip-blue .ant-tooltip-inner{background-color:#1668dc;}.ant-tooltip.ant-tooltip-blue .ant-tooltip-arrow{--antd-arrow-background-color:#1668dc;}.ant-tooltip.ant-tooltip-purple .ant-tooltip-inner{background-color:#642ab5;}.ant-tooltip.ant-tooltip-purple .ant-tooltip-arrow{--antd-arrow-background-color:#642ab5;}.ant-tooltip.ant-tooltip-cyan .ant-tooltip-inner{background-color:#13a8a8;}.ant-tooltip.ant-tooltip-cyan .ant-tooltip-arrow{--antd-arrow-background-color:#13a8a8;}.ant-tooltip.ant-tooltip-green .ant-tooltip-inner{background-color:#49aa19;}.ant-tooltip.ant-tooltip-green .ant-tooltip-arrow{--antd-arrow-background-color:#49aa19;}.ant-tooltip.ant-tooltip-magenta .ant-tooltip-inner{background-color:#cb2b83;}.ant-tooltip.ant-tooltip-magenta .ant-tooltip-arrow{--antd-arrow-background-color:#cb2b83;}.ant-tooltip.ant-tooltip-pink .ant-tooltip-inner{background-color:#cb2b83;}.ant-tooltip.ant-tooltip-pink .ant-tooltip-arrow{--antd-arrow-background-color:#cb2b83;}.ant-tooltip.ant-tooltip-red .ant-tooltip-inner{background-color:#d32029;}.ant-tooltip.ant-tooltip-red .ant-tooltip-arrow{--antd-arrow-background-color:#d32029;}.ant-tooltip.ant-tooltip-orange .ant-tooltip-inner{background-color:#d87a16;}.ant-tooltip.ant-tooltip-orange .ant-tooltip-arrow{--antd-arrow-background-color:#d87a16;}.ant-tooltip.ant-tooltip-yellow .ant-tooltip-inner{background-color:#d8bd14;}.ant-tooltip.ant-tooltip-yellow .ant-tooltip-arrow{--antd-arrow-background-color:#d8bd14;}.ant-tooltip.ant-tooltip-volcano .ant-tooltip-inner{background-color:#d84a1b;}.ant-tooltip.ant-tooltip-volcano .ant-tooltip-arrow{--antd-arrow-background-color:#d84a1b;}.ant-tooltip.ant-tooltip-geekblue .ant-tooltip-inner{background-color:#2b4acb;}.ant-tooltip.ant-tooltip-geekblue .ant-tooltip-arrow{--antd-arrow-background-color:#2b4acb;}.ant-tooltip.ant-tooltip-lime .ant-tooltip-inner{background-color:#8bbb11;}.ant-tooltip.ant-tooltip-lime .ant-tooltip-arrow{--antd-arrow-background-color:#8bbb11;}.ant-tooltip.ant-tooltip-gold .ant-tooltip-inner{background-color:#d89614;}.ant-tooltip.ant-tooltip-gold .ant-tooltip-arrow{--antd-arrow-background-color:#d89614;}.ant-tooltip-rtl{direction:rtl;}.ant-tooltip .ant-tooltip-arrow{position:absolute;z-index:1;display:block;pointer-events:none;width:16px;height:16px;overflow:hidden;}.ant-tooltip .ant-tooltip-arrow::after{content:\\"\\";position:absolute;width:8.970562748477143px;height:8.970562748477143px;bottom:0;inset-inline:0;margin:auto;border-radius:0 0 2px 0;transform:translateY(50%) rotate(-135deg);box-shadow:3px 3px 7px rgba(0, 0, 0, 0.1);z-index:0;background:transparent;}.ant-tooltip .ant-tooltip-arrow::before{position:absolute;bottom:0;inset-inline-start:0;width:16px;height:8px;background:var(--antd-arrow-background-color);clip-path:polygon(1.6568542494923806px 100%, 50% 1.6568542494923806px, 14.34314575050762px 100%, 1.6568542494923806px 100%);clip-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');content:\\"\\";}.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 .ant-tooltip-arrow{left:6px;}.ant-tooltip-placement-topRight .ant-tooltip-arrow{right:6px;}.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 .ant-tooltip-arrow{left:6px;}.ant-tooltip-placement-bottomRight .ant-tooltip-arrow{right:6px;}.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:2px;}.ant-tooltip-placement-leftBottom .ant-tooltip-arrow{bottom:2px;}.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:2px;}.ant-tooltip-placement-rightBottom .ant-tooltip-arrow{bottom:2px;}.ant-tooltip-placement-topLeft,.ant-tooltip-placement-top,.ant-tooltip-placement-topRight{padding-bottom:12px;}.ant-tooltip-placement-bottomLeft,.ant-tooltip-placement-bottom,.ant-tooltip-placement-bottomRight{padding-top:12px;}.ant-tooltip-placement-leftTop,.ant-tooltip-placement-left,.ant-tooltip-placement-leftBottom{padding-right:12px;}.ant-tooltip-placement-rightTop,.ant-tooltip-placement-right,.ant-tooltip-placement-rightBottom{padding-left:12px;}.ant-tooltip-pure{position:relative;max-width:none;}.ant-zoom-big-fast-enter,.ant-zoom-big-fast-appear{animation-duration:0.1s;animation-fill-mode:both;animation-play-state:paused;}.ant-zoom-big-fast-leave{animation-duration:0.1s;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:cubic-bezier(0.08, 0.82, 0.17, 1);}.ant-zoom-big-fast-enter-prepare,.ant-zoom-big-fast-appear-prepare{transform:none;}.ant-zoom-big-fast-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}[class^=\\"ant-form\\"],[class*=\\" ant-form\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-form\\"]::before,[class*=\\" ant-form\\"]::before,[class^=\\"ant-form\\"]::after,[class*=\\" ant-form\\"]::after{box-sizing:border-box;}[class^=\\"ant-form\\"] [class^=\\"ant-form\\"],[class*=\\" ant-form\\"] [class^=\\"ant-form\\"],[class^=\\"ant-form\\"] [class*=\\" ant-form\\"],[class*=\\" ant-form\\"] [class*=\\" ant-form\\"]{box-sizing:border-box;}[class^=\\"ant-form\\"] [class^=\\"ant-form\\"]::before,[class*=\\" ant-form\\"] [class^=\\"ant-form\\"]::before,[class^=\\"ant-form\\"] [class*=\\" ant-form\\"]::before,[class*=\\" ant-form\\"] [class*=\\" ant-form\\"]::before,[class^=\\"ant-form\\"] [class^=\\"ant-form\\"]::after,[class*=\\" ant-form\\"] [class^=\\"ant-form\\"]::after,[class^=\\"ant-form\\"] [class*=\\" ant-form\\"]::after,[class*=\\" ant-form\\"] [class*=\\" ant-form\\"]::after{box-sizing:border-box;}.ant-form{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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-form legend{display:block;width:100%;margin-bottom:24px;padding:0;color:rgba(255, 255, 255, 0.45);font-size:16px;line-height:inherit;border:0;border-bottom:1px solid #424242;}.ant-form label{font-size:14px;}.ant-form input[type=\\"search\\"]{box-sizing:border-box;}.ant-form input[type=\\"radio\\"],.ant-form input[type=\\"checkbox\\"]{line-height:normal;}.ant-form input[type=\\"file\\"]{display:block;}.ant-form input[type=\\"range\\"]{display:block;width:100%;}.ant-form select[multiple],.ant-form select[size]{height:auto;}.ant-form input[type='file']:focus,.ant-form input[type='radio']:focus,.ant-form input[type='checkbox']:focus{outline:0;box-shadow:0 0 0 2px rgba(0, 53, 0, 0.15);}.ant-form output{display:block;padding-top:15px;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;}.ant-form .ant-form-text{display:inline-block;padding-inline-end:12px;}.ant-form-small .ant-form-item .ant-form-item-label>label{height:24px;}.ant-form-small .ant-form-item .ant-form-item-control-input{min-height:24px;}.ant-form-large .ant-form-item .ant-form-item-label>label{height:40px;}.ant-form-large .ant-form-item .ant-form-item-control-input{min-height:40px;}.ant-form-item{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';margin-bottom:24px;vertical-align:top;}.ant-form-item-with-help{transition:none;}.ant-form-item-hidden,.ant-form-item-hidden.ant-row{display:none;}.ant-form-item-has-warning .ant-form-item-split{color:#dc4446;}.ant-form-item-has-error .ant-form-item-split{color:#d89614;}.ant-form-item .ant-form-item-label{display:inline-block;flex-grow:0;overflow:hidden;white-space:nowrap;text-align:end;vertical-align:middle;}.ant-form-item .ant-form-item-label-left{text-align:start;}.ant-form-item .ant-form-item-label-wrap{overflow:unset;line-height:1.5714285714285714 - 0.25em;white-space:unset;}.ant-form-item .ant-form-item-label >label{position:relative;display:inline-flex;align-items:center;max-width:100%;height:32px;color:rgba(255, 255, 255, 0.85);font-size:14px;}.ant-form-item .ant-form-item-label >label >.anticon{font-size:14px;vertical-align:top;}.ant-form-item .ant-form-item-label >label.ant-form-item-required:not(.ant-form-item-required-mark-optional)::before{display:inline-block;margin-inline-end:4px;color:#dc4446;font-size:14px;font-family:SimSun,sans-serif;line-height:1;content:\\"*\\";}.ant-form-hide-required-mark .ant-form-item .ant-form-item-label >label.ant-form-item-required:not(.ant-form-item-required-mark-optional)::before{display:none;}.ant-form-item .ant-form-item-label >label .ant-form-item-optional{display:inline-block;margin-inline-start:4px;color:rgba(255, 255, 255, 0.45);}.ant-form-hide-required-mark .ant-form-item .ant-form-item-label >label .ant-form-item-optional{display:none;}.ant-form-item .ant-form-item-label >label .ant-form-item-tooltip{color:rgba(255, 255, 255, 0.45);cursor:help;writing-mode:horizontal-tb;margin-inline-start:4px;}.ant-form-item .ant-form-item-label >label::after{content:\\":\\";position:relative;margin-block:0;margin-inline-start:2px;margin-inline-end:8px;}.ant-form-item .ant-form-item-label >label.ant-form-item-no-colon::after{content:\\" \\";}.ant-form-item .ant-form-item-control{display:flex;flex-direction:column;flex-grow:1;}.ant-form-item .ant-form-item-control:first-child:not([class^=\\"'ant-col-'\\"]):not([class*=\\"' ant-col-'\\"]){width:100%;}.ant-form-item .ant-form-item-control-input{position:relative;display:flex;align-items:center;min-height:32px;}.ant-form-item .ant-form-item-control-input-content{flex:auto;max-width:100%;}.ant-form-item .ant-form-item-explain,.ant-form-item .ant-form-item-extra{clear:both;color:rgba(255, 255, 255, 0.45);font-size:14px;line-height:1.5714285714285714;}.ant-form-item .ant-form-item-explain-connected{width:100%;}.ant-form-item .ant-form-item-extra{min-height:24px;transition:color 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);}.ant-form-item .ant-form-item-explain-error{color:#dc4446;}.ant-form-item .ant-form-item-explain-warning{color:#d89614;}.ant-form-item-with-help .ant-form-item-explain{height:auto;opacity:1;}.ant-form-item .ant-form-item-feedback-icon{font-size:14px;text-align:center;visibility:visible;animation-name:antZoomIn;animation-duration:0.2s;animation-timing-function:cubic-bezier(0.12, 0.4, 0.29, 1.46);pointer-events:none;}.ant-form-item .ant-form-item-feedback-icon-success{color:#49aa19;}.ant-form-item .ant-form-item-feedback-icon-error{color:#dc4446;}.ant-form-item .ant-form-item-feedback-icon-warning{color:#d89614;}.ant-form-item .ant-form-item-feedback-icon-validating{color:#037003;}.ant-form-show-help{transition:opacity 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);}.ant-form-show-help-appear,.ant-form-show-help-enter{opacity:0;}.ant-form-show-help-appear-active,.ant-form-show-help-enter-active{opacity:1;}.ant-form-show-help-leave{opacity:1;}.ant-form-show-help-leave-active{opacity:0;}.ant-form-show-help .ant-form-show-help-item{overflow:hidden;transition:height 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),transform 0.3s cubic-bezier(0.645, 0.045, 0.355, 1)!important;}.ant-form-show-help .ant-form-show-help-item.ant-form-show-help-item-appear,.ant-form-show-help .ant-form-show-help-item.ant-form-show-help-item-enter{transform:translateY(-5px);opacity:0;}.ant-form-show-help .ant-form-show-help-item.ant-form-show-help-item-appear-active,.ant-form-show-help .ant-form-show-help-item.ant-form-show-help-item-enter-active{transform:translateY(0);opacity:1;}.ant-form-show-help .ant-form-show-help-item.ant-form-show-help-item-leave-active{transform:translateY(-5px);}.ant-form-horizontal .ant-form-item-label{flex-grow:0;}.ant-form-horizontal .ant-form-item-control{flex:1 1 0;min-width:0;}.ant-form-horizontal .ant-form-item-label.ant-col-24+.ant-form-item-control{min-width:unset;}.ant-form-inline{display:flex;flex-wrap:wrap;}.ant-form-inline .ant-form-item{flex:none;flex-wrap:nowrap;margin-inline-end:16px;margin-bottom:0;}.ant-form-inline .ant-form-item-with-help{margin-bottom:24px;}.ant-form-inline .ant-form-item >.ant-form-item-label,.ant-form-inline .ant-form-item >.ant-form-item-control{display:inline-block;vertical-align:top;}.ant-form-inline .ant-form-item >.ant-form-item-label{flex:none;}.ant-form-inline .ant-form-item .ant-form-text{display:inline-block;}.ant-form-inline .ant-form-item .ant-form-item-has-feedback{display:inline-block;}.ant-form-vertical .ant-form-item-row{flex-direction:column;}.ant-form-vertical .ant-form-item-label>label{height:auto;}.ant-form-vertical .ant-form-item .ant-form-item-control{width:100%;}.ant-form-vertical .ant-form-item-label,.ant-col-24.ant-form-item-label,.ant-col-xl-24.ant-form-item-label{margin:0;padding:0 0 8px;white-space:initial;text-align:start;}.ant-form-vertical .ant-form-item-label >label,.ant-col-24.ant-form-item-label >label,.ant-col-xl-24.ant-form-item-label >label{margin:0;}.ant-form-vertical .ant-form-item-label >label::after,.ant-col-24.ant-form-item-label >label::after,.ant-col-xl-24.ant-form-item-label >label::after{display:none;}@media (max-width: 575px){.ant-form-item .ant-form-item-label{margin:0;padding:0 0 8px;white-space:initial;text-align:start;}.ant-form-item .ant-form-item-label >label{margin:0;}.ant-form-item .ant-form-item-label >label::after{display:none;}.ant-form .ant-form-item{flex-wrap:wrap;}.ant-form .ant-form-item .ant-form-item-label,.ant-form .ant-form-item .ant-form-item-control{flex:0 0 100%;max-width:100%;}.ant-form .ant-col-xs-24.ant-form-item-label{margin:0;padding:0 0 8px;white-space:initial;text-align:start;}.ant-form .ant-col-xs-24.ant-form-item-label >label{margin:0;}.ant-form .ant-col-xs-24.ant-form-item-label >label::after{display:none;}}@media (max-width: 767px){.ant-form .ant-col-sm-24.ant-form-item-label{margin:0;padding:0 0 8px;white-space:initial;text-align:start;}.ant-form .ant-col-sm-24.ant-form-item-label >label{margin:0;}.ant-form .ant-col-sm-24.ant-form-item-label >label::after{display:none;}}@media (max-width: 991px){.ant-form .ant-col-md-24.ant-form-item-label{margin:0;padding:0 0 8px;white-space:initial;text-align:start;}.ant-form .ant-col-md-24.ant-form-item-label >label{margin:0;}.ant-form .ant-col-md-24.ant-form-item-label >label::after{display:none;}}@media (max-width: 1199px){.ant-form .ant-col-lg-24.ant-form-item-label{margin:0;padding:0 0 8px;white-space:initial;text-align:start;}.ant-form .ant-col-lg-24.ant-form-item-label >label{margin:0;}.ant-form .ant-col-lg-24.ant-form-item-label >label::after{display:none;}}.ant-form .ant-motion-collapse-legacy{overflow:hidden;}.ant-form .ant-motion-collapse-legacy-active{transition:height 0.2s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.2s cubic-bezier(0.645, 0.045, 0.355, 1)!important;}.ant-form .ant-motion-collapse{overflow:hidden;transition:height 0.2s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.2s cubic-bezier(0.645, 0.045, 0.355, 1)!important;}@keyframes antZoomIn{0%{transform:scale(0.2);opacity:0;}100%{transform:scale(1);opacity:1;}}[class^=\\"ant-row\\"],[class*=\\" ant-row\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-row\\"]::before,[class*=\\" ant-row\\"]::before,[class^=\\"ant-row\\"]::after,[class*=\\" ant-row\\"]::after{box-sizing:border-box;}[class^=\\"ant-row\\"] [class^=\\"ant-row\\"],[class*=\\" ant-row\\"] [class^=\\"ant-row\\"],[class^=\\"ant-row\\"] [class*=\\" ant-row\\"],[class*=\\" ant-row\\"] [class*=\\" ant-row\\"]{box-sizing:border-box;}[class^=\\"ant-row\\"] [class^=\\"ant-row\\"]::before,[class*=\\" ant-row\\"] [class^=\\"ant-row\\"]::before,[class^=\\"ant-row\\"] [class*=\\" ant-row\\"]::before,[class*=\\" ant-row\\"] [class*=\\" ant-row\\"]::before,[class^=\\"ant-row\\"] [class^=\\"ant-row\\"]::after,[class*=\\" ant-row\\"] [class^=\\"ant-row\\"]::after,[class^=\\"ant-row\\"] [class*=\\" ant-row\\"]::after,[class*=\\" 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-top{align-items:flex-start;}.ant-row-middle{align-items:center;}.ant-row-bottom{align-items:flex-end;}[class^=\\"ant-input\\"],[class*=\\" ant-input\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-input\\"]::before,[class*=\\" ant-input\\"]::before,[class^=\\"ant-input\\"]::after,[class*=\\" ant-input\\"]::after{box-sizing:border-box;}[class^=\\"ant-input\\"] [class^=\\"ant-input\\"],[class*=\\" ant-input\\"] [class^=\\"ant-input\\"],[class^=\\"ant-input\\"] [class*=\\" ant-input\\"],[class*=\\" ant-input\\"] [class*=\\" ant-input\\"]{box-sizing:border-box;}[class^=\\"ant-input\\"] [class^=\\"ant-input\\"]::before,[class*=\\" ant-input\\"] [class^=\\"ant-input\\"]::before,[class^=\\"ant-input\\"] [class*=\\" ant-input\\"]::before,[class*=\\" ant-input\\"] [class*=\\" ant-input\\"]::before,[class^=\\"ant-input\\"] [class^=\\"ant-input\\"]::after,[class*=\\" ant-input\\"] [class^=\\"ant-input\\"]::after,[class^=\\"ant-input\\"] [class*=\\" ant-input\\"]::after,[class*=\\" ant-input\\"] [class*=\\" ant-input\\"]::after{box-sizing:border-box;}.ant-input{box-sizing:border-box;margin:0;padding:4px 11px;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:relative;display:inline-block;width:100%;min-width:0;background-color:#141414;background-image:none;border-width:1px;border-style:solid;border-color:#424242;border-radius:6px;transition:all 0.2s;}.ant-input::-moz-placeholder{opacity:1;}.ant-input::placeholder{color:rgba(255, 255, 255, 0.25);user-select:none;}.ant-input:placeholder-shown{text-overflow:ellipsis;}.ant-input:hover{border-color:#198016;border-inline-end-width:1px;}.ant-input:focus,.ant-input-focused{border-color:#198016;box-shadow:0 0 0 2px rgba(0, 53, 0, 0.15);border-inline-end-width:1px;outline:0;}.ant-input-disabled,.ant-input[disabled]{color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);border-color:#424242;box-shadow:none;cursor:not-allowed;opacity:1;}.ant-input-disabled:hover,.ant-input[disabled]:hover{border-color:#424242;border-inline-end-width:1px;}.ant-input-borderless,.ant-input-borderless:hover,.ant-input-borderless:focus,.ant-input-borderless-focused,.ant-input-borderless-disabled,.ant-input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none;}textarea.ant-input{max-width:100%;height:auto;min-height:32px;line-height:1.5714285714285714;vertical-align:bottom;transition:all 0.3s,height 0s;resize:vertical;}.ant-input-lg{padding:7px 11px;font-size:16px;line-height:1.5;border-radius:8px;}.ant-input-sm{padding:0px 7px;border-radius:4px;}.ant-input-rtl{direction:rtl;}.ant-input-textarea-rtl{direction:rtl;}.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input{border-color:#dc4446;}.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:hover{border-color:#7e2e2f;}.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:focus,.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input-focused{border-color:#dc4446;box-shadow:0 0 0 2px rgba(238, 38, 56, 0.11);border-inline-end-width:1px;outline:0;}.ant-input-status-error:not(.ant-input-disabled):not(.ant-input-borderless).ant-input .ant-input-prefix{color:#dc4446;}.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input{border-color:#d89614;}.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:hover{border-color:#7c5914;}.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input:focus,.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input-focused{border-color:#d89614;box-shadow:0 0 0 2px rgba(173, 107, 0, 0.15);border-inline-end-width:1px;outline:0;}.ant-input-status-warning:not(.ant-input-disabled):not(.ant-input-borderless).ant-input .ant-input-prefix{color:#d89614;}.ant-input[type=\\"color\\"]{height:32px;}.ant-input[type=\\"color\\"].ant-input-lg{height:40px;}.ant-input[type=\\"color\\"].ant-input-sm{height:24px;padding-top:3px;padding-bottom:3px;}.ant-input-textarea{position:relative;}.ant-input-textarea .ant-input-textarea-suffix{position:absolute;top:0;inset-inline-end:11px;bottom:0;z-index:1;display:inline-flex;align-items:center;margin:auto;}.ant-input-textarea-status-error.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-warning.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-success.ant-input-textarea-has-feedback .ant-input,.ant-input-textarea-status-validating.ant-input-textarea-has-feedback .ant-input{padding-inline-end:24px;}.ant-input-textarea-show-count >.ant-input{height:100%;}.ant-input-textarea-show-count::after{color:rgba(255, 255, 255, 0.45);white-space:nowrap;content:attr(data-count);pointer-events:none;float:right;}.ant-input-textarea-rtl::after{float:left;}.ant-input-affix-wrapper{position:relative;display:inline-flex;width:100%;min-width:0;padding:4px 11px;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;background-color:#141414;background-image:none;border-width:1px;border-style:solid;border-color:#424242;border-radius:6px;transition:all 0.2s;}.ant-input-affix-wrapper::-moz-placeholder{opacity:1;}.ant-input-affix-wrapper::placeholder{color:rgba(255, 255, 255, 0.25);user-select:none;}.ant-input-affix-wrapper:placeholder-shown{text-overflow:ellipsis;}.ant-input-affix-wrapper:hover{border-color:#198016;border-inline-end-width:1px;}.ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-focused{border-color:#198016;box-shadow:0 0 0 2px rgba(0, 53, 0, 0.15);border-inline-end-width:1px;outline:0;}.ant-input-affix-wrapper-disabled,.ant-input-affix-wrapper[disabled]{color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);border-color:#424242;box-shadow:none;cursor:not-allowed;opacity:1;}.ant-input-affix-wrapper-disabled:hover,.ant-input-affix-wrapper[disabled]:hover{border-color:#424242;border-inline-end-width:1px;}.ant-input-affix-wrapper-borderless,.ant-input-affix-wrapper-borderless:hover,.ant-input-affix-wrapper-borderless:focus,.ant-input-affix-wrapper-borderless-focused,.ant-input-affix-wrapper-borderless-disabled,.ant-input-affix-wrapper-borderless[disabled]{background-color:transparent;border:none;box-shadow:none;}textarea.ant-input-affix-wrapper{max-width:100%;height:auto;min-height:32px;line-height:1.5714285714285714;vertical-align:bottom;transition:all 0.3s,height 0s;resize:vertical;}.ant-input-affix-wrapper-lg{padding:7px 11px;font-size:16px;line-height:1.5;border-radius:8px;}.ant-input-affix-wrapper-sm{padding:0px 7px;border-radius:4px;}.ant-input-affix-wrapper-rtl{direction:rtl;}.ant-input-affix-wrapper-textarea-rtl{direction:rtl;}.ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{border-color:#198016;border-inline-end-width:1px;z-index:1;}.ant-input-search-with-button .ant-input-affix-wrapper:not(.ant-input-affix-wrapper-disabled):hover{z-index:0;}.ant-input-affix-wrapper-focused,.ant-input-affix-wrapper:focus{z-index:1;}.ant-input-affix-wrapper-disabled .ant-input[disabled]{background:transparent;}.ant-input-affix-wrapper >input.ant-input{padding:0;font-size:inherit;border:none;border-radius:0;outline:none;}.ant-input-affix-wrapper >input.ant-input:focus{box-shadow:none!important;}.ant-input-affix-wrapper::before{width:0;visibility:hidden;content:\\"\\\\a0\\";}.ant-input-affix-wrapper .ant-input-prefix,.ant-input-affix-wrapper .ant-input-suffix{display:flex;flex:none;align-items:center;}.ant-input-affix-wrapper .ant-input-prefix >*:not(:last-child),.ant-input-affix-wrapper .ant-input-suffix >*:not(:last-child){margin-inline-end:8px;}.ant-input-affix-wrapper .ant-input-show-count-suffix{color:rgba(255, 255, 255, 0.45);}.ant-input-affix-wrapper .ant-input-show-count-has-suffix{margin-inline-end:4px;}.ant-input-affix-wrapper .ant-input-prefix{margin-inline-end:4px;}.ant-input-affix-wrapper .ant-input-suffix{margin-inline-start:4px;}.ant-input-affix-wrapper .ant-input-clear-icon{margin:0;color:rgba(255, 255, 255, 0.25);font-size:12px;vertical-align:-1px;cursor:pointer;transition:color 0.3s;}.ant-input-affix-wrapper .ant-input-clear-icon:hover{color:rgba(255, 255, 255, 0.45);}.ant-input-affix-wrapper .ant-input-clear-icon:active{color:rgba(255, 255, 255, 0.85);}.ant-input-affix-wrapper .ant-input-clear-icon-hidden{visibility:hidden;}.ant-input-affix-wrapper .ant-input-clear-icon-has-suffix{margin:0 4px;}.ant-input-affix-wrapper-textarea-with-clear-btn{padding:0!important;border:0!important;}.ant-input-affix-wrapper-textarea-with-clear-btn .ant-input-clear-icon{position:absolute;inset-block-start:8px;inset-inline-end:8px;z-index:1;}.ant-input-affix-wrapper .anticon.ant-input-password-icon{color:rgba(255, 255, 255, 0.45);cursor:pointer;transition:all 0.3s;}.ant-input-affix-wrapper .anticon.ant-input-password-icon:hover{color:rgba(255, 255, 255, 0.85);}.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper{border-color:#dc4446;}.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:hover{border-color:#7e2e2f;}.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper-focused{border-color:#dc4446;box-shadow:0 0 0 2px rgba(238, 38, 56, 0.11);border-inline-end-width:1px;outline:0;}.ant-input-affix-wrapper-status-error:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper .ant-input-prefix{color:#dc4446;}.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper{border-color:#d89614;}.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:hover{border-color:#7c5914;}.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper-focused{border-color:#d89614;box-shadow:0 0 0 2px rgba(173, 107, 0, 0.15);border-inline-end-width:1px;outline:0;}.ant-input-affix-wrapper-status-warning:not(.ant-input-affix-wrapper-disabled):not(.ant-input-affix-wrapper-borderless).ant-input-affix-wrapper .ant-input-prefix{color:#d89614;}.ant-input-group{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:relative;display:table;width:100%;border-collapse:separate;border-spacing:0;}.ant-input-group[class*='col-']{padding-inline-end:8px;}.ant-input-group[class*='col-']:last-child{padding-inline-end:0;}.ant-input-group-lg .ant-input,.ant-input-group-lg>.ant-input-group-addon{padding:7px 11px;font-size:16px;line-height:1.5;border-radius:8px;}.ant-input-group-sm .ant-input,.ant-input-group-sm>.ant-input-group-addon{padding:0px 7px;border-radius:4px;}.ant-input-group >.ant-input{display:table-cell;}.ant-input-group >.ant-input:not(:first-child):not(:last-child){border-radius:0;}.ant-input-group .ant-input-group-addon,.ant-input-group .ant-input-group-wrap{display:table-cell;width:1px;white-space:nowrap;vertical-align:middle;}.ant-input-group .ant-input-group-addon:not(:first-child):not(:last-child),.ant-input-group .ant-input-group-wrap:not(:first-child):not(:last-child){border-radius:0;}.ant-input-group .ant-input-group-wrap>*{display:block!important;}.ant-input-group .ant-input-group-addon{position:relative;padding:0 11px;color:rgba(255, 255, 255, 0.85);font-weight:normal;font-size:14px;text-align:center;background-color:rgba(255, 255, 255, 0.04);border:1px solid #424242;border-radius:6px;transition:all 0.3s;line-height:1;}.ant-input-group .ant-input-group-addon .ant-select{margin:-5px -11px;}.ant-input-group .ant-input-group-addon .ant-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{background-color:inherit;border:1px solid transparent;box-shadow:none;}.ant-input-group .ant-input-group-addon .ant-select-open .ant-select-selector,.ant-input-group .ant-input-group-addon .ant-select-focused .ant-select-selector{color:#037003;}.ant-input-group .ant-input-group-addon .ant-cascader-picker{margin:-9px -11px;background-color:transparent;}.ant-input-group .ant-input-group-addon .ant-cascader-picker .ant-cascader-input{text-align:start;border:0;box-shadow:none;}.ant-input-group .ant-input-group-addon:first-child{border-inline-end:0;}.ant-input-group .ant-input-group-addon:last-child{border-inline-start:0;}.ant-input-group .ant-input{float:inline-start;width:100%;margin-bottom:0;text-align:inherit;}.ant-input-group .ant-input:focus{z-index:1;border-inline-end-width:1px;}.ant-input-group .ant-input:hover{z-index:1;border-inline-end-width:1px;}.ant-input-search-with-button .ant-input-group .ant-input:hover{z-index:0;}.ant-input-group >.ant-input:first-child,.ant-input-group .ant-input-group-addon:first-child{border-start-end-radius:0;border-end-end-radius:0;}.ant-input-group >.ant-input:first-child .ant-select .ant-select-selector,.ant-input-group .ant-input-group-addon:first-child .ant-select .ant-select-selector{border-start-end-radius:0;border-end-end-radius:0;}.ant-input-group >.ant-input-affix-wrapper:not(:first-child) .ant-input{border-start-start-radius:0;border-end-start-radius:0;}.ant-input-group >.ant-input-affix-wrapper:not(:last-child) .ant-input{border-start-end-radius:0;border-end-end-radius:0;}.ant-input-group >.ant-input:last-child,.ant-input-group .ant-input-group-addon:last-child{border-start-start-radius:0;border-end-start-radius:0;}.ant-input-group >.ant-input:last-child .ant-select .ant-select-selector,.ant-input-group .ant-input-group-addon:last-child .ant-select .ant-select-selector{border-start-start-radius:0;border-end-start-radius:0;}.ant-input-group .ant-input-affix-wrapper:not(:last-child){border-start-end-radius:0;border-end-end-radius:0;}.ant-input-search .ant-input-group .ant-input-affix-wrapper:not(:last-child){border-start-start-radius:6px;border-end-start-radius:6px;}.ant-input-group .ant-input-affix-wrapper:not(:first-child),.ant-input-search .ant-input-group .ant-input-affix-wrapper:not(:first-child){border-start-start-radius:0;border-end-start-radius:0;}.ant-input-group.ant-input-group-compact{display:block;}.ant-input-group.ant-input-group-compact::before{display:table;content:\\"\\";}.ant-input-group.ant-input-group-compact::after{display:table;clear:both;content:\\"\\";}.ant-input-group.ant-input-group-compact .ant-input-group-addon:not(:first-child):not(:last-child),.ant-input-group.ant-input-group-compact .ant-input-group-wrap:not(:first-child):not(:last-child),.ant-input-group.ant-input-group-compact >.ant-input:not(:first-child):not(:last-child){border-inline-end-width:1px;}.ant-input-group.ant-input-group-compact .ant-input-group-addon:not(:first-child):not(:last-child):hover,.ant-input-group.ant-input-group-compact .ant-input-group-wrap:not(:first-child):not(:last-child):hover,.ant-input-group.ant-input-group-compact >.ant-input:not(:first-child):not(:last-child):hover{z-index:1;}.ant-input-group.ant-input-group-compact .ant-input-group-addon:not(:first-child):not(:last-child):focus,.ant-input-group.ant-input-group-compact .ant-input-group-wrap:not(:first-child):not(:last-child):focus,.ant-input-group.ant-input-group-compact >.ant-input:not(:first-child):not(:last-child):focus{z-index:1;}.ant-input-group.ant-input-group-compact>*{display:inline-block;float:none;vertical-align:top;border-radius:0;}.ant-input-group.ant-input-group-compact>.ant-input-affix-wrapper{display:inline-flex;}.ant-input-group.ant-input-group-compact>.ant-picker-range{display:inline-flex;}.ant-input-group.ant-input-group-compact>*:not(:last-child){margin-inline-end:-1px;border-inline-end-width:1px;}.ant-input-group.ant-input-group-compact .ant-input{float:none;}.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input,.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input{border-inline-end-width:1px;border-radius:0;}.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector:hover,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input:hover,.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input:hover,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input:hover{z-index:1;}.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-selector:focus,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input:focus,.ant-input-group.ant-input-group-compact>.ant-cascader-picker .ant-input:focus,.ant-input-group.ant-input-group-compact>.ant-input-group-wrapper .ant-input:focus{z-index:1;}.ant-input-group.ant-input-group-compact>.ant-select-focused{z-index:1;}.ant-input-group.ant-input-group-compact>.ant-select>.ant-select-arrow{z-index:1;}.ant-input-group.ant-input-group-compact>*:first-child,.ant-input-group.ant-input-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-group.ant-input-group-compact>.ant-select-auto-complete:first-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-cascader-picker:first-child .ant-input{border-start-start-radius:6px;border-end-start-radius:6px;}.ant-input-group.ant-input-group-compact>*:last-child,.ant-input-group.ant-input-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-group.ant-input-group-compact>.ant-cascader-picker:last-child .ant-input,.ant-input-group.ant-input-group-compact>.ant-cascader-picker-focused:last-child .ant-input{border-inline-end-width:1px;border-start-end-radius:6px;border-end-end-radius:6px;}.ant-input-group.ant-input-group-compact>.ant-select-auto-complete .ant-input{vertical-align:top;}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper{margin-inline-start:-1px;}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper+.ant-input-group-wrapper .ant-input-affix-wrapper{border-radius:0;}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input-group-addon>.ant-input-search-button{border-radius:0;}.ant-input-group.ant-input-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search>.ant-input-group>.ant-input{border-start-start-radius:6px;border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:6px;}.ant-input-group.ant-input-group-sm .ant-btn{font-size:12px;height:24px;line-height:normal;}.ant-input-group.ant-input-group-lg .ant-btn{font-size:16px;height:40px;line-height:normal;}.ant-input-group.ant-input-group-lg .ant-select-single .ant-select-selector{height:40px;}.ant-input-group.ant-input-group-lg .ant-select-single .ant-select-selector .ant-select-selection-item,.ant-input-group.ant-input-group-lg .ant-select-single .ant-select-selector .ant-select-selection-placeholder{line-height:38px;}.ant-input-group.ant-input-group-lg .ant-select-single .ant-select-selector .ant-select-selection-search-input{height:40px;}.ant-input-group.ant-input-group-sm .ant-select-single .ant-select-selector{height:24px;}.ant-input-group.ant-input-group-sm .ant-select-single .ant-select-selector .ant-select-selection-item,.ant-input-group.ant-input-group-sm .ant-select-single .ant-select-selector .ant-select-selection-placeholder{line-height:22px;}.ant-input-group.ant-input-group-sm .ant-select-single .ant-select-selector .ant-select-selection-search-input{height:24px;}.ant-input-group-rtl{direction:rtl;}.ant-input-group-wrapper{display:inline-block;width:100%;text-align:start;vertical-align:top;}.ant-input-group-wrapper-rtl{direction:rtl;}.ant-input-group-wrapper-lg .ant-input-group-addon{border-radius:8px;}.ant-input-group-wrapper-sm .ant-input-group-addon{border-radius:4px;}.ant-input-group-wrapper-status-error .ant-input-group-addon{color:#dc4446;border-color:#dc4446;}.ant-input-group-wrapper-status-warning .ant-input-group-addon:last-child{color:#49aa19;border-color:#49aa19;}.ant-input-search .ant-input:hover,.ant-input-search .ant-input:focus{border-color:#198016;}.ant-input-search .ant-input:hover +.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary),.ant-input-search .ant-input:focus +.ant-input-group-addon .ant-input-search-button:not(.ant-btn-primary){border-inline-start-color:#198016;}.ant-input-search .ant-input-affix-wrapper{border-radius:0;}.ant-input-search .ant-input-lg{line-height:1.4998;}.ant-input-search >.ant-input-group >.ant-input-group-addon:last-child{inset-inline-start:-1px;padding:0;border:0;}.ant-input-search >.ant-input-group >.ant-input-group-addon:last-child .ant-input-search-button{padding-top:0;padding-bottom:0;border-start-start-radius:0;border-start-end-radius:6px;border-end-end-radius:6px;border-end-start-radius:0;}.ant-input-search >.ant-input-group >.ant-input-group-addon:last-child .ant-input-search-button:not(.ant-btn-primary){color:rgba(255, 255, 255, 0.45);}.ant-input-search >.ant-input-group >.ant-input-group-addon:last-child .ant-input-search-button:not(.ant-btn-primary):hover{color:#198016;}.ant-input-search >.ant-input-group >.ant-input-group-addon:last-child .ant-input-search-button:not(.ant-btn-primary):active{color:#075a07;}.ant-input-search >.ant-input-group >.ant-input-group-addon:last-child .ant-input-search-button:not(.ant-btn-primary).ant-btn-loading::before{inset-inline-start:0;inset-inline-end:0;inset-block-start:0;inset-block-end:0;}.ant-input-search .ant-input-search-button{height:32px;}.ant-input-search .ant-input-search-button:hover,.ant-input-search .ant-input-search-button:focus{z-index:1;}.ant-input-search-large .ant-input-search-button{height:40px;}.ant-input-search-small .ant-input-search-button{height:24px;}.ant-input-search-rtl{direction:rtl;}.ant-input-search.ant-input-compact-item:not(.ant-input-compact-last-item) .ant-input-group-addon .ant-input-search-button{margin-inline-end:-1px;border-radius:0;}.ant-input-search.ant-input-compact-item:not(.ant-input-compact-first-item) .ant-input,.ant-input-search.ant-input-compact-item:not(.ant-input-compact-first-item) .ant-input-affix-wrapper{border-radius:0;}.ant-input-search.ant-input-compact-item >.ant-input-group-addon .ant-input-search-button:hover,.ant-input-search.ant-input-compact-item >.ant-input:hover,.ant-input-search.ant-input-compact-item .ant-input-affix-wrapper:hover,.ant-input-search.ant-input-compact-item >.ant-input-group-addon .ant-input-search-button:focus,.ant-input-search.ant-input-compact-item >.ant-input:focus,.ant-input-search.ant-input-compact-item .ant-input-affix-wrapper:focus,.ant-input-search.ant-input-compact-item >.ant-input-group-addon .ant-input-search-button:active,.ant-input-search.ant-input-compact-item >.ant-input:active,.ant-input-search.ant-input-compact-item .ant-input-affix-wrapper:active{z-index:2;}.ant-input-search.ant-input-compact-item >.ant-input-affix-wrapper-focused{z-index:2;}.ant-input-compact-item:not(.ant-input-compact-last-item){margin-inline-end:-1px;}.ant-input-compact-item:hover,.ant-input-compact-item:focus,.ant-input-compact-item:active{z-index:2;}.ant-input-compact-item[disabled]{z-index:0;}.ant-input-compact-item:not(.ant-input-compact-first-item):not(.ant-input-compact-last-item){border-radius:0;}.ant-input-compact-item:not(.ant-input-compact-last-item).ant-input-compact-first-item,.ant-input-compact-item:not(.ant-input-compact-last-item).ant-input-compact-first-item.ant-input-sm,.ant-input-compact-item:not(.ant-input-compact-last-item).ant-input-compact-first-item.ant-input-lg{border-start-end-radius:0;border-end-end-radius:0;}.ant-input-compact-item:not(.ant-input-compact-first-item).ant-input-compact-last-item,.ant-input-compact-item:not(.ant-input-compact-first-item).ant-input-compact-last-item.ant-input-sm,.ant-input-compact-item:not(.ant-input-compact-first-item).ant-input-compact-last-item.ant-input-lg{border-start-start-radius:0;border-end-start-radius:0;}[class^=\\"ant-image\\"],[class*=\\" ant-image\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-image\\"]::before,[class*=\\" ant-image\\"]::before,[class^=\\"ant-image\\"]::after,[class*=\\" ant-image\\"]::after{box-sizing:border-box;}[class^=\\"ant-image\\"] [class^=\\"ant-image\\"],[class*=\\" ant-image\\"] [class^=\\"ant-image\\"],[class^=\\"ant-image\\"] [class*=\\" ant-image\\"],[class*=\\" ant-image\\"] [class*=\\" ant-image\\"]{box-sizing:border-box;}[class^=\\"ant-image\\"] [class^=\\"ant-image\\"]::before,[class*=\\" ant-image\\"] [class^=\\"ant-image\\"]::before,[class^=\\"ant-image\\"] [class*=\\" ant-image\\"]::before,[class*=\\" ant-image\\"] [class*=\\" ant-image\\"]::before,[class^=\\"ant-image\\"] [class^=\\"ant-image\\"]::after,[class*=\\" ant-image\\"] [class^=\\"ant-image\\"]::after,[class^=\\"ant-image\\"] [class*=\\" ant-image\\"]::after,[class*=\\" ant-image\\"] [class*=\\" ant-image\\"]::after{box-sizing:border-box;}.ant-image{position:relative;display:inline-block;}.ant-image .ant-image-img{width:100%;height:auto;vertical-align:middle;}.ant-image .ant-image-img-placeholder{background-color:rgba(255, 255, 255, 0.08);background-image:url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNMTQuNSAyLjVoLTEzQS41LjUgMCAwIDAgMSAzdjEwYS41LjUgMCAwIDAgLjUuNWgxM2EuNS41IDAgMCAwIC41LS41VjNhLjUuNSAwIDAgMC0uNS0uNXpNNS4yODEgNC43NWExIDEgMCAwIDEgMCAyIDEgMSAwIDAgMSAwLTJ6bTguMDMgNi44M2EuMTI3LjEyNyAwIDAgMS0uMDgxLjAzSDIuNzY5YS4xMjUuMTI1IDAgMCAxLS4wOTYtLjIwN2wyLjY2MS0zLjE1NmEuMTI2LjEyNiAwIDAgMSAuMTc3LS4wMTZsLjAxNi4wMTZMNy4wOCAxMC4wOWwyLjQ3LTIuOTNhLjEyNi4xMjYgMCAwIDEgLjE3Ny0uMDE2bC4wMTUuMDE2IDMuNTg4IDQuMjQ0YS4xMjcuMTI3IDAgMCAxLS4wMi4xNzV6IiBmaWxsPSIjOEM4QzhDIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz48L3N2Zz4=');background-repeat:no-repeat;background-position:center center;background-size:30%;}.ant-image .ant-image-mask{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(0, 0, 0, 0.5);cursor:pointer;opacity:0;transition:opacity 0.3s;}.ant-image .ant-image-mask .ant-image-mask-info{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:0 4px;}.ant-image .ant-image-mask .ant-image-mask-info .anticon{margin-inline-end:4px;}.ant-image .ant-image-mask .ant-image-mask-info .anticon svg{vertical-align:baseline;}.ant-image .ant-image-mask:hover{opacity:1;}.ant-image .ant-image-placeholder{position:absolute;inset:0;}.ant-image-preview-root .ant-image-preview{height:100%;text-align:center;pointer-events:none;}.ant-image-preview-root .ant-image-preview-body{position:absolute;inset:0;overflow:hidden;}.ant-image-preview-root .ant-image-preview-img{max-width:100%;max-height:100%;vertical-align:middle;transform:scale3d(1, 1, 1);cursor:grab;transition:transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;user-select:none;pointer-events:auto;}.ant-image-preview-root .ant-image-preview-img-wrapper{position:absolute;inset:0;transition:transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;display:flex;justify-content:center;align-items:center;}.ant-image-preview-root .ant-image-preview-img-wrapper::before{display:inline-block;width:1px;height:50%;margin-inline-end:-1px;content:\\"\\";}.ant-image-preview-root .ant-image-preview-moving .ant-image-preview-preview-img{cursor:grabbing;}.ant-image-preview-root .ant-image-preview-moving .ant-image-preview-preview-img-wrapper{transition-duration:0s;}.ant-image-preview-root .ant-image-preview-wrap{z-index:1080;}.ant-image-preview-operations-wrapper{position:fixed;inset-block-start:0;inset-inline-end:0;z-index:1081;width:100%;}.ant-image-preview-operations{box-sizing:border-box;margin:0;padding:0;color:rgb(255, 255, 255);font-size:14px;line-height:1.5714285714285714;list-style:none;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';display:flex;flex-direction:row-reverse;align-items:center;background:rgba(0, 0, 0, 0.1);pointer-events:auto;}.ant-image-preview-operations-operation{margin-inline-start:12px;padding:12px;cursor:pointer;transition:all 0.3s;user-select:none;}.ant-image-preview-operations-operation:hover{background:rgba(0, 0, 0, 0.2);}.ant-image-preview-operations-operation-disabled{color:rgba(255, 255, 255, 0.25);pointer-events:none;}.ant-image-preview-operations-operation:last-of-type{margin-inline-start:0;}.ant-image-preview-operations-progress{position:absolute;left:50%;transform:translateX(-50%);}.ant-image-preview-operations-icon{font-size:18px;}.ant-image-preview-switch-left,.ant-image-preview-switch-right{position:fixed;inset-block-start:50%;z-index:1081;display:flex;align-items:center;justify-content:center;width:40px;height:40px;margin-top:-20px;color:rgb(255, 255, 255);background:rgba(0, 0, 0, 0.1);border-radius:50%;transform:translateY(-50%);cursor:pointer;transition:all 0.3s;pointer-events:auto;user-select:none;}.ant-image-preview-switch-left:hover,.ant-image-preview-switch-right:hover{background:rgba(0, 0, 0, 0.2);}.ant-image-preview-switch-left-disabled,.ant-image-preview-switch-right-disabled,.ant-image-preview-switch-left-disabled:hover,.ant-image-preview-switch-right-disabled:hover{color:rgba(255, 255, 255, 0.25);background:transparent;cursor:not-allowed;}.ant-image-preview-switch-left-disabled >.anticon,.ant-image-preview-switch-right-disabled >.anticon,.ant-image-preview-switch-left-disabled:hover >.anticon,.ant-image-preview-switch-right-disabled:hover >.anticon{cursor:not-allowed;}.ant-image-preview-switch-left >.anticon,.ant-image-preview-switch-right >.anticon{font-size:18px;}.ant-image-preview-switch-left{inset-inline-start:12px;}.ant-image-preview-switch-right{inset-inline-end:12px;}.ant-image-preview-root .ant-image-preview.ant-zoom-enter,.ant-image-preview-root .ant-image-preview.ant-zoom-appear{transform:none;opacity:0;animation-duration:0.3s;user-select:none;}.ant-image-preview-root .ant-image-preview.ant-zoom-leave .ant-image-preview-content{pointer-events:none;}.ant-image-preview-root .ant-image-preview-mask{position:fixed;top:0;inset-inline-end:0;bottom:0;inset-inline-start:0;z-index:1000;height:100%;background-color:rgba(0, 0, 0, 0.45);}.ant-image-preview-root .ant-image-preview-mask .ant-image-preview-hidden{display:none;}.ant-image-preview-root .ant-image-preview-wrap{position:fixed;top:0;inset-inline-end:0;bottom:0;inset-inline-start:0;overflow:auto;outline:0;-webkit-overflow-scrolling:touch;}.ant-image-preview-root .ant-fade-enter,.ant-image-preview-root .ant-fade-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-image-preview-root .ant-fade-leave{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-image-preview-root .ant-fade-enter.ant-fade-enter-active,.ant-image-preview-root .ant-fade-appear.ant-fade-appear-active{animation-name:antFadeIn;animation-play-state:running;}.ant-image-preview-root .ant-fade-leave.ant-fade-leave-active{animation-name:antFadeOut;animation-play-state:running;pointer-events:none;}.ant-image-preview-root .ant-fade-enter,.ant-image-preview-root .ant-fade-appear{opacity:0;animation-timing-function:linear;}.ant-image-preview-root .ant-fade-leave{animation-timing-function:linear;}.ant-image-preview-root .ant-zoom-enter,.ant-image-preview-root .ant-zoom-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-image-preview-root .ant-zoom-leave{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-image-preview-root .ant-zoom-enter.ant-zoom-enter-active,.ant-image-preview-root .ant-zoom-appear.ant-zoom-appear-active{animation-name:antZoomIn;animation-play-state:running;}.ant-image-preview-root .ant-zoom-leave.ant-zoom-leave-active{animation-name:antZoomOut;animation-play-state:running;pointer-events:none;}.ant-image-preview-root .ant-zoom-enter,.ant-image-preview-root .ant-zoom-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(0.08, 0.82, 0.17, 1);}.ant-image-preview-root .ant-zoom-enter-prepare,.ant-image-preview-root .ant-zoom-appear-prepare{transform:none;}.ant-image-preview-root .ant-zoom-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}.ant-fade-enter,.ant-fade-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-fade-leave{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-fade-enter.ant-fade-enter-active,.ant-fade-appear.ant-fade-appear-active{animation-name:antFadeIn;animation-play-state:running;}.ant-fade-leave.ant-fade-leave-active{animation-name:antFadeOut;animation-play-state:running;pointer-events:none;}.ant-fade-enter,.ant-fade-appear{opacity:0;animation-timing-function:linear;}.ant-fade-leave{animation-timing-function:linear;}@keyframes antZoomOut{0%{transform:scale(1);}100%{transform:scale(0.2);opacity:0;}}[class^=\\"ant-input-number\\"],[class*=\\" ant-input-number\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-input-number\\"]::before,[class*=\\" ant-input-number\\"]::before,[class^=\\"ant-input-number\\"]::after,[class*=\\" ant-input-number\\"]::after{box-sizing:border-box;}[class^=\\"ant-input-number\\"] [class^=\\"ant-input-number\\"],[class*=\\" ant-input-number\\"] [class^=\\"ant-input-number\\"],[class^=\\"ant-input-number\\"] [class*=\\" ant-input-number\\"],[class*=\\" ant-input-number\\"] [class*=\\" ant-input-number\\"]{box-sizing:border-box;}[class^=\\"ant-input-number\\"] [class^=\\"ant-input-number\\"]::before,[class*=\\" ant-input-number\\"] [class^=\\"ant-input-number\\"]::before,[class^=\\"ant-input-number\\"] [class*=\\" ant-input-number\\"]::before,[class*=\\" ant-input-number\\"] [class*=\\" ant-input-number\\"]::before,[class^=\\"ant-input-number\\"] [class^=\\"ant-input-number\\"]::after,[class*=\\" ant-input-number\\"] [class^=\\"ant-input-number\\"]::after,[class^=\\"ant-input-number\\"] [class*=\\" ant-input-number\\"]::after,[class*=\\" ant-input-number\\"] [class*=\\" ant-input-number\\"]::after{box-sizing:border-box;}.ant-input-number{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:relative;display:inline-block;width:90px;min-width:0;background-color:#141414;background-image:none;border-width:1px;border-style:solid;border-color:#424242;border-radius:6px;transition:all 0.2s;border:1px solid #424242;}.ant-input-number::-moz-placeholder{opacity:1;}.ant-input-number::placeholder{color:rgba(255, 255, 255, 0.25);user-select:none;}.ant-input-number:placeholder-shown{text-overflow:ellipsis;}.ant-input-number:hover{border-color:#198016;border-inline-end-width:1px;}.ant-input-number:focus,.ant-input-number-focused{border-color:#198016;box-shadow:0 0 0 2px rgba(0, 53, 0, 0.15);border-inline-end-width:1px;outline:0;}.ant-input-number-disabled,.ant-input-number[disabled]{color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);border-color:#424242;box-shadow:none;cursor:not-allowed;opacity:1;}.ant-input-number-disabled:hover,.ant-input-number[disabled]:hover{border-color:#424242;border-inline-end-width:1px;}.ant-input-number-borderless,.ant-input-number-borderless:hover,.ant-input-number-borderless:focus,.ant-input-number-borderless-focused,.ant-input-number-borderless-disabled,.ant-input-number-borderless[disabled]{background-color:transparent;border:none;box-shadow:none;}textarea.ant-input-number{max-width:100%;height:auto;min-height:32px;line-height:1.5714285714285714;vertical-align:bottom;transition:all 0.3s,height 0s;resize:vertical;}.ant-input-number-lg{padding:0;font-size:16px;border-radius:8px;}.ant-input-number-lg input.ant-input-number-input{height:38px;}.ant-input-number-sm{padding:0;border-radius:4px;}.ant-input-number-sm input.ant-input-number-input{height:22px;padding:0 7px;}.ant-input-number-rtl{direction:rtl;}.ant-input-number-rtl .ant-input-number-input{direction:rtl;}.ant-input-number-textarea-rtl{direction:rtl;}.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number{border-color:#dc4446;}.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:hover{border-color:#7e2e2f;}.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:focus,.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number-focused{border-color:#dc4446;box-shadow:0 0 0 2px rgba(238, 38, 56, 0.11);border-inline-end-width:1px;outline:0;}.ant-input-number-status-error:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number .ant-input-number-prefix{color:#dc4446;}.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number{border-color:#d89614;}.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:hover{border-color:#7c5914;}.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number:focus,.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number-focused{border-color:#d89614;box-shadow:0 0 0 2px rgba(173, 107, 0, 0.15);border-inline-end-width:1px;outline:0;}.ant-input-number-status-warning:not(.ant-input-number-disabled):not(.ant-input-number-borderless).ant-input-number .ant-input-number-prefix{color:#d89614;}.ant-input-number-focused{border-color:#198016;box-shadow:0 0 0 2px rgba(0, 53, 0, 0.15);border-inline-end-width:1px;outline:0;}.ant-input-number-disabled{color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);border-color:#424242;box-shadow:none;cursor:not-allowed;opacity:1;}.ant-input-number-disabled:hover{border-color:#424242;border-inline-end-width:1px;}.ant-input-number-disabled .ant-input-number-input{cursor:not-allowed;}.ant-input-number-out-of-range input{color:#dc4446;}.ant-input-number-group{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:relative;display:table;width:100%;border-collapse:separate;border-spacing:0;}.ant-input-number-group[class*='col-']{padding-inline-end:8px;}.ant-input-number-group[class*='col-']:last-child{padding-inline-end:0;}.ant-input-number-group-lg .ant-input-number,.ant-input-number-group-lg>.ant-input-number-group-addon{padding:7px 11px;font-size:16px;line-height:1.5;border-radius:8px;}.ant-input-number-group-sm .ant-input-number,.ant-input-number-group-sm>.ant-input-number-group-addon{padding:0px 7px;border-radius:4px;}.ant-input-number-group >.ant-input-number{display:table-cell;}.ant-input-number-group >.ant-input-number:not(:first-child):not(:last-child){border-radius:0;}.ant-input-number-group .ant-input-number-group-addon,.ant-input-number-group .ant-input-number-group-wrap{display:table-cell;width:1px;white-space:nowrap;vertical-align:middle;}.ant-input-number-group .ant-input-number-group-addon:not(:first-child):not(:last-child),.ant-input-number-group .ant-input-number-group-wrap:not(:first-child):not(:last-child){border-radius:0;}.ant-input-number-group .ant-input-number-group-wrap>*{display:block!important;}.ant-input-number-group .ant-input-number-group-addon{position:relative;padding:0 11px;color:rgba(255, 255, 255, 0.85);font-weight:normal;font-size:14px;text-align:center;background-color:rgba(255, 255, 255, 0.04);border:1px solid #424242;border-radius:6px;transition:all 0.3s;line-height:1;}.ant-input-number-group .ant-input-number-group-addon .ant-select{margin:-5px -11px;}.ant-input-number-group .ant-input-number-group-addon .ant-select.ant-select-single:not(.ant-select-customize-input) .ant-select-selector{background-color:inherit;border:1px solid transparent;box-shadow:none;}.ant-input-number-group .ant-input-number-group-addon .ant-select-open .ant-select-selector,.ant-input-number-group .ant-input-number-group-addon .ant-select-focused .ant-select-selector{color:#037003;}.ant-input-number-group .ant-input-number-group-addon .ant-cascader-picker{margin:-9px -11px;background-color:transparent;}.ant-input-number-group .ant-input-number-group-addon .ant-cascader-picker .ant-cascader-input{text-align:start;border:0;box-shadow:none;}.ant-input-number-group .ant-input-number-group-addon:first-child{border-inline-end:0;}.ant-input-number-group .ant-input-number-group-addon:last-child{border-inline-start:0;}.ant-input-number-group .ant-input-number{float:inline-start;width:100%;margin-bottom:0;text-align:inherit;}.ant-input-number-group .ant-input-number:focus{z-index:1;border-inline-end-width:1px;}.ant-input-number-group .ant-input-number:hover{z-index:1;border-inline-end-width:1px;}.ant-input-number-search-with-button .ant-input-number-group .ant-input-number:hover{z-index:0;}.ant-input-number-group >.ant-input-number:first-child,.ant-input-number-group .ant-input-number-group-addon:first-child{border-start-end-radius:0;border-end-end-radius:0;}.ant-input-number-group >.ant-input-number:first-child .ant-select .ant-select-selector,.ant-input-number-group .ant-input-number-group-addon:first-child .ant-select .ant-select-selector{border-start-end-radius:0;border-end-end-radius:0;}.ant-input-number-group >.ant-input-number-affix-wrapper:not(:first-child) .ant-input-number{border-start-start-radius:0;border-end-start-radius:0;}.ant-input-number-group >.ant-input-number-affix-wrapper:not(:last-child) .ant-input-number{border-start-end-radius:0;border-end-end-radius:0;}.ant-input-number-group >.ant-input-number:last-child,.ant-input-number-group .ant-input-number-group-addon:last-child{border-start-start-radius:0;border-end-start-radius:0;}.ant-input-number-group >.ant-input-number:last-child .ant-select .ant-select-selector,.ant-input-number-group .ant-input-number-group-addon:last-child .ant-select .ant-select-selector{border-start-start-radius:0;border-end-start-radius:0;}.ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child){border-start-end-radius:0;border-end-end-radius:0;}.ant-input-number-search .ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child){border-start-start-radius:6px;border-end-start-radius:6px;}.ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child),.ant-input-number-search .ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child){border-start-start-radius:0;border-end-start-radius:0;}.ant-input-number-group.ant-input-number-group-compact{display:block;}.ant-input-number-group.ant-input-number-group-compact::before{display:table;content:\\"\\";}.ant-input-number-group.ant-input-number-group-compact::after{display:table;clear:both;content:\\"\\";}.ant-input-number-group.ant-input-number-group-compact .ant-input-number-group-addon:not(:first-child):not(:last-child),.ant-input-number-group.ant-input-number-group-compact .ant-input-number-group-wrap:not(:first-child):not(:last-child),.ant-input-number-group.ant-input-number-group-compact >.ant-input-number:not(:first-child):not(:last-child){border-inline-end-width:1px;}.ant-input-number-group.ant-input-number-group-compact .ant-input-number-group-addon:not(:first-child):not(:last-child):hover,.ant-input-number-group.ant-input-number-group-compact .ant-input-number-group-wrap:not(:first-child):not(:last-child):hover,.ant-input-number-group.ant-input-number-group-compact >.ant-input-number:not(:first-child):not(:last-child):hover{z-index:1;}.ant-input-number-group.ant-input-number-group-compact .ant-input-number-group-addon:not(:first-child):not(:last-child):focus,.ant-input-number-group.ant-input-number-group-compact .ant-input-number-group-wrap:not(:first-child):not(:last-child):focus,.ant-input-number-group.ant-input-number-group-compact >.ant-input-number:not(:first-child):not(:last-child):focus{z-index:1;}.ant-input-number-group.ant-input-number-group-compact>*{display:inline-block;float:none;vertical-align:top;border-radius:0;}.ant-input-number-group.ant-input-number-group-compact>.ant-input-number-affix-wrapper{display:inline-flex;}.ant-input-number-group.ant-input-number-group-compact>.ant-picker-range{display:inline-flex;}.ant-input-number-group.ant-input-number-group-compact>*:not(:last-child){margin-inline-end:-1px;border-inline-end-width:1px;}.ant-input-number-group.ant-input-number-group-compact .ant-input-number{float:none;}.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input-number,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input-number,.ant-input-number-group.ant-input-number-group-compact>.ant-input-number-group-wrapper .ant-input-number{border-inline-end-width:1px;border-radius:0;}.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input-number:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input-number:hover,.ant-input-number-group.ant-input-number-group-compact>.ant-input-number-group-wrapper .ant-input-number:hover{z-index:1;}.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-selector:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input-number:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker .ant-input-number:focus,.ant-input-number-group.ant-input-number-group-compact>.ant-input-number-group-wrapper .ant-input-number:focus{z-index:1;}.ant-input-number-group.ant-input-number-group-compact>.ant-select-focused{z-index:1;}.ant-input-number-group.ant-input-number-group-compact>.ant-select>.ant-select-arrow{z-index:1;}.ant-input-number-group.ant-input-number-group-compact>*:first-child,.ant-input-number-group.ant-input-number-group-compact>.ant-select:first-child>.ant-select-selector,.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete:first-child .ant-input-number,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:first-child .ant-input-number{border-start-start-radius:6px;border-end-start-radius:6px;}.ant-input-number-group.ant-input-number-group-compact>*:last-child,.ant-input-number-group.ant-input-number-group-compact>.ant-select:last-child>.ant-select-selector,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker:last-child .ant-input-number,.ant-input-number-group.ant-input-number-group-compact>.ant-cascader-picker-focused:last-child .ant-input-number{border-inline-end-width:1px;border-start-end-radius:6px;border-end-end-radius:6px;}.ant-input-number-group.ant-input-number-group-compact>.ant-select-auto-complete .ant-input-number{vertical-align:top;}.ant-input-number-group.ant-input-number-group-compact .ant-input-number-group-wrapper+.ant-input-number-group-wrapper{margin-inline-start:-1px;}.ant-input-number-group.ant-input-number-group-compact .ant-input-number-group-wrapper+.ant-input-number-group-wrapper .ant-input-number-affix-wrapper{border-radius:0;}.ant-input-number-group.ant-input-number-group-compact .ant-input-number-group-wrapper:not(:last-child).ant-input-number-search>.ant-input-number-group>.ant-input-number-group-addon>.ant-input-number-search-button{border-radius:0;}.ant-input-number-group.ant-input-number-group-compact .ant-input-number-group-wrapper:not(:last-child).ant-input-number-search>.ant-input-number-group>.ant-input-number{border-start-start-radius:6px;border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:6px;}.ant-input-number-group.ant-input-number-group-sm .ant-btn{font-size:12px;height:24px;line-height:normal;}.ant-input-number-group.ant-input-number-group-lg .ant-btn{font-size:16px;height:40px;line-height:normal;}.ant-input-number-group.ant-input-number-group-lg .ant-select-single .ant-select-selector{height:40px;}.ant-input-number-group.ant-input-number-group-lg .ant-select-single .ant-select-selector .ant-select-selection-item,.ant-input-number-group.ant-input-number-group-lg .ant-select-single .ant-select-selector .ant-select-selection-placeholder{line-height:38px;}.ant-input-number-group.ant-input-number-group-lg .ant-select-single .ant-select-selector .ant-select-selection-search-input{height:40px;}.ant-input-number-group.ant-input-number-group-sm .ant-select-single .ant-select-selector{height:24px;}.ant-input-number-group.ant-input-number-group-sm .ant-select-single .ant-select-selector .ant-select-selection-item,.ant-input-number-group.ant-input-number-group-sm .ant-select-single .ant-select-selector .ant-select-selection-placeholder{line-height:22px;}.ant-input-number-group.ant-input-number-group-sm .ant-select-single .ant-select-selector .ant-select-selection-search-input{height:24px;}.ant-input-number-group-wrapper{display:inline-block;text-align:start;vertical-align:top;}.ant-input-number-group-wrapper .ant-input-number-affix-wrapper{width:100%;}.ant-input-number-group-wrapper-lg .ant-input-number-group-addon{border-radius:8px;}.ant-input-number-group-wrapper-sm .ant-input-number-group-addon{border-radius:4px;}.ant-input-number .ant-input-number-input{width:100%;height:30px;padding:0 11px;text-align:start;background-color:transparent;border:0;border-radius:6px;outline:0;transition:all 0.2s linear;appearance:textfield;color:rgba(255, 255, 255, 0.85);font-size:inherit;vertical-align:top;}.ant-input-number .ant-input-number-input::-moz-placeholder{opacity:1;}.ant-input-number .ant-input-number-input::placeholder{color:rgba(255, 255, 255, 0.25);user-select:none;}.ant-input-number .ant-input-number-input:placeholder-shown{text-overflow:ellipsis;}.ant-input-number .ant-input-number-input[type=\\"number\\"]::-webkit-inner-spin-button,.ant-input-number .ant-input-number-input[type=\\"number\\"]::-webkit-outer-spin-button{margin:0;webkit-appearance:none;appearance:none;}.ant-input-number:hover .ant-input-number-handler-wrap,.ant-input-number-focused .ant-input-number-handler-wrap{opacity:1;}.ant-input-number .ant-input-number-handler-wrap{position:absolute;inset-block-start:0;inset-inline-end:0;width:22px;height:100%;background:#141414;border-start-start-radius:0;border-start-end-radius:6px;border-end-end-radius:6px;border-end-start-radius:0;opacity:0;display:flex;flex-direction:column;align-items:stretch;transition:opacity 0.2s linear 0.2s;}.ant-input-number .ant-input-number-handler-wrap .ant-input-number-handler{display:flex;align-items:center;justify-content:center;flex:auto;height:40%;}.ant-input-number .ant-input-number-handler-wrap .ant-input-number-handler .ant-input-number-handler-up-inner,.ant-input-number .ant-input-number-handler-wrap .ant-input-number-handler .ant-input-number-handler-down-inner{margin-inline-end:0;font-size:7px;}.ant-input-number .ant-input-number-handler{height:50%;overflow:hidden;color:rgba(255, 255, 255, 0.45);font-weight:bold;line-height:0;text-align:center;cursor:pointer;border-inline-start:1px solid #424242;transition:all 0.2s linear;}.ant-input-number .ant-input-number-handler:active{background:rgba(255, 255, 255, 0.04);}.ant-input-number .ant-input-number-handler:hover{height:60%;}.ant-input-number .ant-input-number-handler:hover .ant-input-number-handler-up-inner,.ant-input-number .ant-input-number-handler:hover .ant-input-number-handler-down-inner{color:#037003;}.ant-input-number .ant-input-number-handler-up-inner,.ant-input-number .ant-input-number-handler-down-inner{display:inline-flex;align-items:center;color:rgba(255, 255, 255, 0.45);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;transition:all 0.2s linear;user-select:none;}.ant-input-number .ant-input-number-handler-up-inner >*,.ant-input-number .ant-input-number-handler-down-inner >*{line-height:1;}.ant-input-number .ant-input-number-handler-up-inner svg,.ant-input-number .ant-input-number-handler-down-inner svg{display:inline-block;}.ant-input-number .ant-input-number-handler-up{border-start-end-radius:6px;}.ant-input-number .ant-input-number-handler-down{border-block-start:1px solid #424242;border-end-end-radius:6px;}.ant-input-number-disabled .ant-input-number-handler-wrap,.ant-input-number-readonly .ant-input-number-handler-wrap{display:none;}.ant-input-number .ant-input-number-handler-up-disabled,.ant-input-number .ant-input-number-handler-down-disabled{cursor:not-allowed;}.ant-input-number-handler-up-disabled:hover .ant-input-number-handler-up-inner,.ant-input-number-handler-down-disabled:hover .ant-input-number-handler-down-inner{color:rgba(255, 255, 255, 0.25);}.ant-input-number-borderless{border-color:transparent;box-shadow:none;}.ant-input-number-borderless .ant-input-number-handler-down{border-block-start-width:0;}.ant-input-number-affix-wrapper{position:relative;display:inline-flex;width:90px;min-width:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;background-color:#141414;background-image:none;border-width:1px;border-style:solid;border-color:#424242;border-radius:6px;transition:all 0.2s;padding-inline-start:11px;}.ant-input-number-affix-wrapper::-moz-placeholder{opacity:1;}.ant-input-number-affix-wrapper::placeholder{color:rgba(255, 255, 255, 0.25);user-select:none;}.ant-input-number-affix-wrapper:placeholder-shown{text-overflow:ellipsis;}.ant-input-number-affix-wrapper:hover{border-color:#198016;border-inline-end-width:1px;}.ant-input-number-affix-wrapper:focus,.ant-input-number-affix-wrapper-focused{border-color:#198016;box-shadow:0 0 0 2px rgba(0, 53, 0, 0.15);border-inline-end-width:1px;outline:0;}.ant-input-number-affix-wrapper-disabled,.ant-input-number-affix-wrapper[disabled]{color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);border-color:#424242;box-shadow:none;cursor:not-allowed;opacity:1;}.ant-input-number-affix-wrapper-disabled:hover,.ant-input-number-affix-wrapper[disabled]:hover{border-color:#424242;border-inline-end-width:1px;}.ant-input-number-affix-wrapper-borderless,.ant-input-number-affix-wrapper-borderless:hover,.ant-input-number-affix-wrapper-borderless:focus,.ant-input-number-affix-wrapper-borderless-focused,.ant-input-number-affix-wrapper-borderless-disabled,.ant-input-number-affix-wrapper-borderless[disabled]{background-color:transparent;border:none;box-shadow:none;}textarea.ant-input-number-affix-wrapper{max-width:100%;height:auto;min-height:32px;line-height:1.5714285714285714;vertical-align:bottom;transition:all 0.3s,height 0s;resize:vertical;}.ant-input-number-affix-wrapper-lg{border-radius:8px;}.ant-input-number-affix-wrapper-sm{border-radius:4px;}.ant-input-number-affix-wrapper-rtl{direction:rtl;}.ant-input-number-affix-wrapper-textarea-rtl{direction:rtl;}.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper{border-color:#dc4446;}.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:hover{border-color:#7e2e2f;}.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:focus,.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper-focused{border-color:#dc4446;box-shadow:0 0 0 2px rgba(238, 38, 56, 0.11);border-inline-end-width:1px;outline:0;}.ant-input-number-affix-wrapper-status-error:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper .ant-input-number-prefix{color:#dc4446;}.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper{border-color:#d89614;}.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:hover{border-color:#7c5914;}.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper:focus,.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper-focused{border-color:#d89614;box-shadow:0 0 0 2px rgba(173, 107, 0, 0.15);border-inline-end-width:1px;outline:0;}.ant-input-number-affix-wrapper-status-warning:not(.ant-input-number-affix-wrapper-disabled):not(.ant-input-number-affix-wrapper-borderless).ant-input-number-affix-wrapper .ant-input-number-prefix{color:#d89614;}.ant-input-number-affix-wrapper:not(.ant-input-number-affix-wrapper-disabled):hover{border-color:#198016;border-inline-end-width:1px;z-index:1;}.ant-input-number-affix-wrapper-focused,.ant-input-number-affix-wrapper:focus{z-index:1;}.ant-input-number-affix-wrapper-disabled .ant-input-number[disabled]{background:transparent;}.ant-input-number-affix-wrapper >div.ant-input-number{width:100%;border:none;outline:none;}.ant-input-number-affix-wrapper >div.ant-input-number.ant-input-number-focused{box-shadow:none!important;}.ant-input-number-affix-wrapper input.ant-input-number-input{padding:0;}.ant-input-number-affix-wrapper::before{width:0;visibility:hidden;content:\\"\\\\a0\\";}.ant-input-number-affix-wrapper .ant-input-number-handler-wrap{z-index:2;}.ant-input-number-affix-wrapper .ant-input-number-prefix,.ant-input-number-affix-wrapper .ant-input-number-suffix{display:flex;flex:none;align-items:center;pointer-events:none;}.ant-input-number-affix-wrapper .ant-input-number-prefix{margin-inline-end:4px;}.ant-input-number-affix-wrapper .ant-input-number-suffix{position:absolute;inset-block-start:0;inset-inline-end:0;z-index:1;height:100%;margin-inline-end:11px;margin-inline-start:4px;}.ant-input-number-compact-item:not(.ant-input-number-compact-last-item){margin-inline-end:-1px;}.ant-input-number-compact-item:hover,.ant-input-number-compact-item:focus,.ant-input-number-compact-item:active{z-index:2;}.ant-input-number-compact-item[disabled]{z-index:0;}.ant-input-number-compact-item:not(.ant-input-number-compact-first-item):not(.ant-input-number-compact-last-item){border-radius:0;}.ant-input-number-compact-item:not(.ant-input-number-compact-last-item).ant-input-number-compact-first-item,.ant-input-number-compact-item:not(.ant-input-number-compact-last-item).ant-input-number-compact-first-item.ant-input-number-sm,.ant-input-number-compact-item:not(.ant-input-number-compact-last-item).ant-input-number-compact-first-item.ant-input-number-lg{border-start-end-radius:0;border-end-end-radius:0;}.ant-input-number-compact-item:not(.ant-input-number-compact-first-item).ant-input-number-compact-last-item,.ant-input-number-compact-item:not(.ant-input-number-compact-first-item).ant-input-number-compact-last-item.ant-input-number-sm,.ant-input-number-compact-item:not(.ant-input-number-compact-first-item).ant-input-number-compact-last-item.ant-input-number-lg{border-start-start-radius:0;border-end-start-radius:0;}[class^=\\"ant-layout\\"],[class*=\\" ant-layout\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-layout\\"]::before,[class*=\\" ant-layout\\"]::before,[class^=\\"ant-layout\\"]::after,[class*=\\" ant-layout\\"]::after{box-sizing:border-box;}[class^=\\"ant-layout\\"] [class^=\\"ant-layout\\"],[class*=\\" ant-layout\\"] [class^=\\"ant-layout\\"],[class^=\\"ant-layout\\"] [class*=\\" ant-layout\\"],[class*=\\" ant-layout\\"] [class*=\\" ant-layout\\"]{box-sizing:border-box;}[class^=\\"ant-layout\\"] [class^=\\"ant-layout\\"]::before,[class*=\\" ant-layout\\"] [class^=\\"ant-layout\\"]::before,[class^=\\"ant-layout\\"] [class*=\\" ant-layout\\"]::before,[class*=\\" ant-layout\\"] [class*=\\" ant-layout\\"]::before,[class^=\\"ant-layout\\"] [class^=\\"ant-layout\\"]::after,[class*=\\" ant-layout\\"] [class^=\\"ant-layout\\"]::after,[class^=\\"ant-layout\\"] [class*=\\" ant-layout\\"]::after,[class*=\\" ant-layout\\"] [class*=\\" ant-layout\\"]::after{box-sizing:border-box;}.ant-layout{display:flex;flex:auto;flex-direction:column;min-height:0;background:#000000;}.ant-layout,.ant-layout *{box-sizing:border-box;}.ant-layout.ant-layout-has-sider{flex-direction:row;}.ant-layout.ant-layout-has-sider >.ant-layout,.ant-layout.ant-layout-has-sider >.ant-layout-content{width:0;}.ant-layout .ant-layout-header,.ant-layout.ant-layout-footer{flex:0 0 auto;}.ant-layout .ant-layout-header{height:64px;padding-inline:50px;color:rgba(255, 255, 255, 0.85);line-height:64px;background:#001529;}.ant-layout .ant-layout-header .ant-menu{line-height:inherit;}.ant-layout .ant-layout-footer{padding:24px 50px;color:rgba(255, 255, 255, 0.85);font-size:14px;background:#000000;}.ant-layout .ant-layout-content{flex:auto;min-height:0;}.ant-layout .ant-layout-sider{position:relative;min-width:0;background:#001529;transition:all 0.2s,background 0s;}.ant-layout .ant-layout-sider-children{height:100%;margin-top:-0.1px;padding-top:0.1px;}.ant-layout .ant-layout-sider-children .ant-menu.ant-menu-inline-collapsed{width:auto;}.ant-layout .ant-layout-sider-has-trigger{padding-bottom:48px;}.ant-layout .ant-layout-sider-right{order:1;}.ant-layout .ant-layout-sider-trigger{position:fixed;bottom:0;z-index:1;height:48px;color:#fff;line-height:48px;text-align:center;background:#002140;cursor:pointer;transition:all 0.2s;}.ant-layout .ant-layout-sider-zero-width >*{overflow:hidden;}.ant-layout .ant-layout-sider-zero-width-trigger{position:absolute;top:64px;inset-inline-end:-40px;z-index:1;width:40px;height:40px;color:#fff;font-size:20px;display:flex;align-items:center;justify-content:center;background:#001529;border-start-start-radius:0;border-start-end-radius:6px;border-end-end-radius:6px;border-end-start-radius:0;cursor:pointer;transition:background 0.3s ease;}.ant-layout .ant-layout-sider-zero-width-trigger::after{position:absolute;inset:0;background:transparent;transition:all 0.3s;content:\\"\\";}.ant-layout .ant-layout-sider-zero-width-trigger:hover::after{background:rgba(255, 255, 255, 0.2);}.ant-layout .ant-layout-sider-zero-width-trigger-right{inset-inline-start:-40px;border-start-start-radius:6px;border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:6px;}.ant-layout .ant-layout-sider-light{background:#141414;}.ant-layout .ant-layout-sider-light .ant-layout-sider-trigger{color:rgba(255, 255, 255, 0.85);background:#141414;}.ant-layout .ant-layout-sider-light .ant-layout-sider-zero-width-trigger{color:rgba(255, 255, 255, 0.85);background:#141414;border:1px solid #000000;border-inline-start:0;}.ant-layout-rtl{direction:rtl;}[class^=\\"ant-list\\"],[class*=\\" ant-list\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-list\\"]::before,[class*=\\" ant-list\\"]::before,[class^=\\"ant-list\\"]::after,[class*=\\" ant-list\\"]::after{box-sizing:border-box;}[class^=\\"ant-list\\"] [class^=\\"ant-list\\"],[class*=\\" ant-list\\"] [class^=\\"ant-list\\"],[class^=\\"ant-list\\"] [class*=\\" ant-list\\"],[class*=\\" ant-list\\"] [class*=\\" ant-list\\"]{box-sizing:border-box;}[class^=\\"ant-list\\"] [class^=\\"ant-list\\"]::before,[class*=\\" ant-list\\"] [class^=\\"ant-list\\"]::before,[class^=\\"ant-list\\"] [class*=\\" ant-list\\"]::before,[class*=\\" ant-list\\"] [class*=\\" ant-list\\"]::before,[class^=\\"ant-list\\"] [class^=\\"ant-list\\"]::after,[class*=\\" ant-list\\"] [class^=\\"ant-list\\"]::after,[class^=\\"ant-list\\"] [class*=\\" ant-list\\"]::after,[class*=\\" ant-list\\"] [class*=\\" ant-list\\"]::after{box-sizing:border-box;}.ant-list{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:relative;}.ant-list *{outline:none;}.ant-list .ant-list-header,.ant-list .ant-list-footer{background:transparent;padding-block:12px;}.ant-list .ant-list-pagination{margin-block-start:24px;text-align:end;}.ant-list .ant-list-pagination .ant-pagination-options{text-align:start;}.ant-list .ant-list-spin{min-height:40px;text-align:center;}.ant-list .ant-list-items{margin:0;padding:0;list-style:none;}.ant-list .ant-list-item{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;color:rgba(255, 255, 255, 0.85);}.ant-list .ant-list-item .ant-list-item-meta{display:flex;flex:1;align-items:flex-start;max-width:100%;}.ant-list .ant-list-item .ant-list-item-meta .ant-list-item-meta-avatar{margin-inline-end:16px;}.ant-list .ant-list-item .ant-list-item-meta .ant-list-item-meta-content{flex:1 0;width:0;color:rgba(255, 255, 255, 0.85);}.ant-list .ant-list-item .ant-list-item-meta .ant-list-item-meta-title{margin-bottom:4px;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;}.ant-list .ant-list-item .ant-list-item-meta .ant-list-item-meta-title >a{color:rgba(255, 255, 255, 0.85);transition:all 0.3s;}.ant-list .ant-list-item .ant-list-item-meta .ant-list-item-meta-title >a:hover{color:#037003;}.ant-list .ant-list-item .ant-list-item-meta .ant-list-item-meta-description{color:rgba(255, 255, 255, 0.45);font-size:14px;line-height:1.5714285714285714;}.ant-list .ant-list-item .ant-list-item-action{flex:0 0 auto;margin-inline-start:48px;padding:0;font-size:0;list-style:none;}.ant-list .ant-list-item .ant-list-item-action>li{position:relative;display:inline-block;padding:0 8px;color:rgba(255, 255, 255, 0.45);font-size:14px;line-height:1.5714285714285714;text-align:center;}.ant-list .ant-list-item .ant-list-item-action>li:first-child{padding-inline-start:0;}.ant-list .ant-list-item .ant-list-item-action .ant-list-item-action-split{position:absolute;inset-block-start:50%;inset-inline-end:0;width:1px;height:14px;transform:translateY(-50%);background-color:rgba(253, 253, 253, 0.12);}.ant-list .ant-list-empty{padding:16px 0;color:rgba(255, 255, 255, 0.45);font-size:12px;text-align:center;}.ant-list .ant-list-empty-text{padding:16px;color:rgba(255, 255, 255, 0.25);font-size:14px;text-align:center;}.ant-list .ant-list-item-no-flex{display:block;}.ant-list-grid .ant-col>.ant-list-item{display:block;max-width:100%;margin-block-end:16px;padding-block:0;border-block-end:none;}.ant-list-vertical .ant-list-item{align-items:initial;}.ant-list-vertical .ant-list-item .ant-list-item-main{display:block;flex:1;}.ant-list-vertical .ant-list-item .ant-list-item-extra{margin-inline-start:24px;}.ant-list-vertical .ant-list-item .ant-list-item-meta{margin-block-end:16px;}.ant-list-vertical .ant-list-item .ant-list-item-meta .ant-list-item-meta-title{margin-block-end:12px;color:rgba(255, 255, 255, 0.85);font-size:16px;line-height:1.5;}.ant-list-vertical .ant-list-item .ant-list-item-action{margin-block-start:16px;margin-inline-start:auto;}.ant-list-vertical .ant-list-item .ant-list-item-action >li{padding:0 16px;}.ant-list-vertical .ant-list-item .ant-list-item-action >li:first-child{padding-inline-start:0;}.ant-list-split .ant-list-item{border-block-end:1px solid rgba(253, 253, 253, 0.12);}.ant-list-split .ant-list-item:last-child{border-block-end:none;}.ant-list-split .ant-list-header{border-block-end:1px solid rgba(253, 253, 253, 0.12);}.ant-list-split.ant-list-empty .ant-list-footer{border-top:1px solid rgba(253, 253, 253, 0.12);}.ant-list-loading .ant-list-spin-nested-loading{min-height:32px;}.ant-list-split.ant-list-something-after-last-item .ant-spin-container>.ant-list-items>.ant-list-item:last-child{border-block-end:1px solid rgba(253, 253, 253, 0.12);}.ant-list-lg .ant-list-item{padding:16px 24px;}.ant-list-sm .ant-list-item{padding:8px 16px;}.ant-list:not(.ant-list-vertical) .ant-list-item-no-flex .ant-list-item-action{float:right;}.ant-list-bordered{border:1px solid #424242;border-radius:8px;}.ant-list-bordered .ant-list-header,.ant-list-bordered .ant-list-footer,.ant-list-bordered .ant-list-item{padding-inline:24px;}.ant-list-bordered .ant-list-pagination{margin:16px 24px;}.ant-list-bordered.ant-list-sm .ant-list-item,.ant-list-bordered.ant-list-sm .ant-list-header,.ant-list-bordered.ant-list-sm .ant-list-footer{padding:8px 16px;}.ant-list-bordered.ant-list-lg .ant-list-item,.ant-list-bordered.ant-list-lg .ant-list-header,.ant-list-bordered.ant-list-lg .ant-list-footer{padding:16px 24px;}@media screen and (max-width:768){.ant-list .ant-list-item .ant-list-item-action{margin-inline-start:24px;}.ant-list-vertical .ant-list-item .ant-list-item-extra{margin-inline-start:24px;}}@media screen and (max-width: 576){.ant-list .ant-list-item{flex-wrap:wrap;}.ant-list .ant-list-item .ant-list-action{margin-inline-start:12px;}.ant-list-vertical .ant-list-item{flex-wrap:wrap-reverse;}.ant-list-vertical .ant-list-item .ant-list-item-main{min-width:220px;}.ant-list-vertical .ant-list-item .ant-list-item-extra{margin:auto auto 16px;}}[class^=\\"ant-spin\\"],[class*=\\" ant-spin\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-spin\\"]::before,[class*=\\" ant-spin\\"]::before,[class^=\\"ant-spin\\"]::after,[class*=\\" ant-spin\\"]::after{box-sizing:border-box;}[class^=\\"ant-spin\\"] [class^=\\"ant-spin\\"],[class*=\\" ant-spin\\"] [class^=\\"ant-spin\\"],[class^=\\"ant-spin\\"] [class*=\\" ant-spin\\"],[class*=\\" ant-spin\\"] [class*=\\" ant-spin\\"]{box-sizing:border-box;}[class^=\\"ant-spin\\"] [class^=\\"ant-spin\\"]::before,[class*=\\" ant-spin\\"] [class^=\\"ant-spin\\"]::before,[class^=\\"ant-spin\\"] [class*=\\" ant-spin\\"]::before,[class*=\\" ant-spin\\"] [class*=\\" ant-spin\\"]::before,[class^=\\"ant-spin\\"] [class^=\\"ant-spin\\"]::after,[class*=\\" ant-spin\\"] [class^=\\"ant-spin\\"]::after,[class^=\\"ant-spin\\"] [class*=\\" ant-spin\\"]::after,[class*=\\" ant-spin\\"] [class*=\\" ant-spin\\"]::after{box-sizing:border-box;}.ant-spin{box-sizing:border-box;margin:0;padding:0;color:#037003;font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:absolute;display:none;text-align:center;vertical-align:middle;opacity:0;transition:transform 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);}.ant-spin-spinning{position:static;display:inline-block;opacity:1;}.ant-spin-nested-loading{position:relative;}.ant-spin-nested-loading >div>.ant-spin{position:absolute;top:0;inset-inline-start:0;z-index:4;display:block;width:100%;height:100%;max-height:400px;}.ant-spin-nested-loading >div>.ant-spin .ant-spin-dot{position:absolute;top:50%;inset-inline-start:50%;margin:-10px;}.ant-spin-nested-loading >div>.ant-spin .ant-spin-text{position:absolute;top:50%;width:100%;padding-top:5px;text-shadow:0 1px 2px #141414;}.ant-spin-nested-loading >div>.ant-spin.ant-spin-show-text .ant-spin-dot{margin-top:-20px;}.ant-spin-nested-loading >div>.ant-spin-sm .ant-spin-dot{margin:-7px;}.ant-spin-nested-loading >div>.ant-spin-sm .ant-spin-text{padding-top:2px;}.ant-spin-nested-loading >div>.ant-spin-sm.ant-spin-show-text .ant-spin-dot{margin-top:-17px;}.ant-spin-nested-loading >div>.ant-spin-lg .ant-spin-dot{margin:-16px;}.ant-spin-nested-loading >div>.ant-spin-lg .ant-spin-text{padding-top:11px;}.ant-spin-nested-loading >div>.ant-spin-lg.ant-spin-show-text .ant-spin-dot{margin-top:-26px;}.ant-spin-nested-loading .ant-spin-container{position:relative;transition:opacity 0.3s;}.ant-spin-nested-loading .ant-spin-container::after{position:absolute;top:0;inset-inline-end:0;bottom:0;inset-inline-start:0;z-index:10;width:100%;height:100%;background:#141414;opacity:0;transition:all 0.3s;content:\\"\\";pointer-events:none;}.ant-spin-nested-loading .ant-spin-blur{clear:both;opacity:0.5;user-select:none;pointer-events:none;}.ant-spin-nested-loading .ant-spin-blur::after{opacity:0.4;pointer-events:auto;}.ant-spin-tip{color:rgba(255, 255, 255, 0.45);}.ant-spin .ant-spin-dot{position:relative;display:inline-block;font-size:20px;width:1em;height:1em;}.ant-spin .ant-spin-dot-item{position:absolute;display:block;width:9px;height:9px;background-color:#037003;border-radius:100%;transform:scale(0.75);transform-origin:50% 50%;opacity:0.3;animation-name:antSpinMove;animation-duration:1s;animation-iteration-count:infinite;animation-timing-function:linear;animation-direction:alternate;}.ant-spin .ant-spin-dot-item:nth-child(1){top:0;inset-inline-start:0;}.ant-spin .ant-spin-dot-item:nth-child(2){top:0;inset-inline-end:0;animation-delay:0.4s;}.ant-spin .ant-spin-dot-item:nth-child(3){inset-inline-end:0;bottom:0;animation-delay:0.8s;}.ant-spin .ant-spin-dot-item:nth-child(4){bottom:0;inset-inline-start:0;animation-delay:1.2s;}.ant-spin .ant-spin-dot-spin{transform:rotate(45deg);animation-name:antRotate;animation-duration:1.2s;animation-iteration-count:infinite;animation-timing-function:linear;}.ant-spin-sm .ant-spin-dot{font-size:14px;}.ant-spin-sm .ant-spin-dot i{width:6px;height:6px;}.ant-spin-lg .ant-spin-dot{font-size:32px;}.ant-spin-lg .ant-spin-dot i{width:14px;height:14px;}.ant-spin.ant-spin-show-text .ant-spin-text{display:block;}@keyframes antSpinMove{to{opacity:1;}}@keyframes antRotate{to{transform:rotate(405deg);}}[class^=\\"ant-menu\\"],[class*=\\" ant-menu\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-menu\\"]::before,[class*=\\" ant-menu\\"]::before,[class^=\\"ant-menu\\"]::after,[class*=\\" ant-menu\\"]::after{box-sizing:border-box;}[class^=\\"ant-menu\\"] [class^=\\"ant-menu\\"],[class*=\\" ant-menu\\"] [class^=\\"ant-menu\\"],[class^=\\"ant-menu\\"] [class*=\\" ant-menu\\"],[class*=\\" ant-menu\\"] [class*=\\" ant-menu\\"]{box-sizing:border-box;}[class^=\\"ant-menu\\"] [class^=\\"ant-menu\\"]::before,[class*=\\" ant-menu\\"] [class^=\\"ant-menu\\"]::before,[class^=\\"ant-menu\\"] [class*=\\" ant-menu\\"]::before,[class*=\\" ant-menu\\"] [class*=\\" ant-menu\\"]::before,[class^=\\"ant-menu\\"] [class^=\\"ant-menu\\"]::after,[class*=\\" ant-menu\\"] [class^=\\"ant-menu\\"]::after,[class^=\\"ant-menu\\"] [class*=\\" ant-menu\\"]::after,[class*=\\" ant-menu\\"] [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:rgba(255, 255, 255, 0.85);font-size:14px;line-height:0;list-style:none;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';margin-bottom:0;padding-inline-start:0;outline:none;transition:width 0.3s 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:8px;}.ant-menu .ant-menu-item-group-title{padding:8px 16px;font-size:14px;line-height:1.5714285714285714;transition:all 0.3s;}.ant-menu-horizontal .ant-menu-submenu{transition:border-color 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),background 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);}.ant-menu .ant-menu-submenu,.ant-menu .ant-menu-submenu-inline{transition:border-color 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),background 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),padding 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);}.ant-menu .ant-menu-submenu .ant-menu-sub{cursor:initial;transition:background 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),padding 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);}.ant-menu .ant-menu-title-content{transition:color 0.3s;}.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:rgba(253, 253, 253, 0.12);border-style:solid;border-width:0;border-top-width:1px;margin-block:1px;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 0.3s,background 0.3s,padding 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);}.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:14px;font-size:14px;transition:font-size 0.2s cubic-bezier(0.215, 0.61, 0.355, 1),margin 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),color 0.3s;}.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:10px;opacity:1;transition:opacity 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),margin 0.3s,color 0.3s;}.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;}.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:28px 16px;}.ant-menu-submenu-popup{position:absolute;z-index:1050;background:transparent;border-radius:8px;box-shadow:none;transform-origin:0 0;}.ant-menu-submenu-popup::before{position:absolute;inset:-7px 0 0;z-index:-1;width:100%;height:100%;opacity:0;content:\\"\\";}.ant-menu-submenu-placement-rightTop::before{top:0;inset-inline-start:-7px;}.ant-menu-submenu >.ant-menu{border-radius:8px;}.ant-menu-submenu >.ant-menu .ant-menu-item,.ant-menu-submenu >.ant-menu .ant-menu-submenu-title{position:relative;display:block;margin:0;white-space:nowrap;cursor:pointer;transition:border-color 0.3s,background 0.3s,padding 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);}.ant-menu-submenu >.ant-menu .ant-menu-item .ant-menu-item-icon,.ant-menu-submenu >.ant-menu .ant-menu-submenu-title .ant-menu-item-icon,.ant-menu-submenu >.ant-menu .ant-menu-item .anticon,.ant-menu-submenu >.ant-menu .ant-menu-submenu-title .anticon{min-width:14px;font-size:14px;transition:font-size 0.2s cubic-bezier(0.215, 0.61, 0.355, 1),margin 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),color 0.3s;}.ant-menu-submenu >.ant-menu .ant-menu-item .ant-menu-item-icon +span,.ant-menu-submenu >.ant-menu .ant-menu-submenu-title .ant-menu-item-icon +span,.ant-menu-submenu >.ant-menu .ant-menu-item .anticon +span,.ant-menu-submenu >.ant-menu .ant-menu-submenu-title .anticon +span{margin-inline-start:10px;opacity:1;transition:opacity 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),margin 0.3s,color 0.3s;}.ant-menu-submenu >.ant-menu .ant-menu-item .ant-menu-item-icon,.ant-menu-submenu >.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 >.ant-menu .ant-menu-item .ant-menu-item-icon >*,.ant-menu-submenu >.ant-menu .ant-menu-submenu-title .ant-menu-item-icon >*{line-height:1;}.ant-menu-submenu >.ant-menu .ant-menu-item .ant-menu-item-icon svg,.ant-menu-submenu >.ant-menu .ant-menu-submenu-title .ant-menu-item-icon svg{display:inline-block;}.ant-menu-submenu >.ant-menu .ant-menu-item.ant-menu-item-only-child >.anticon,.ant-menu-submenu >.ant-menu .ant-menu-submenu-title.ant-menu-item-only-child >.anticon,.ant-menu-submenu >.ant-menu .ant-menu-item.ant-menu-item-only-child >.ant-menu-item-icon,.ant-menu-submenu >.ant-menu .ant-menu-submenu-title.ant-menu-item-only-child >.ant-menu-item-icon{margin-inline-end:0;}.ant-menu-submenu >.ant-menu .ant-menu-item-disabled,.ant-menu-submenu >.ant-menu .ant-menu-submenu-disabled{background:none!important;cursor:not-allowed;}.ant-menu-submenu >.ant-menu .ant-menu-item-disabled::after,.ant-menu-submenu >.ant-menu .ant-menu-submenu-disabled::after{border-color:transparent!important;}.ant-menu-submenu >.ant-menu .ant-menu-item-disabled a,.ant-menu-submenu >.ant-menu .ant-menu-submenu-disabled a{color:inherit!important;}.ant-menu-submenu >.ant-menu .ant-menu-item-disabled >.ant-menu-submenu-title,.ant-menu-submenu >.ant-menu .ant-menu-submenu-disabled >.ant-menu-submenu-title{color:inherit!important;cursor:not-allowed;}.ant-menu-submenu >.ant-menu .ant-menu-submenu-expand-icon,.ant-menu-submenu >.ant-menu .ant-menu-submenu-arrow{position:absolute;top:50%;inset-inline-end:16px;width:10px;color:currentcolor;transform:translateY(-50%);transition:transform 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.3s;}.ant-menu-submenu >.ant-menu .ant-menu-submenu-arrow::before,.ant-menu-submenu >.ant-menu .ant-menu-submenu-arrow::after{position:absolute;width:6px;height:1.5px;background-color:currentcolor;border-radius:6px;transition:background 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),transform 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),top 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),color 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);content:\\"\\";}.ant-menu-submenu >.ant-menu .ant-menu-submenu-arrow::before{transform:rotate(45deg) translateY(-2.5px);}.ant-menu-submenu >.ant-menu .ant-menu-submenu-arrow::after{transform:rotate(-45deg) translateY(2.5px);}.ant-menu-submenu >.ant-menu .ant-menu-item,.ant-menu-submenu >.ant-menu .ant-menu-submenu>.ant-menu-submenu-title{border-radius:4px;}.ant-menu-submenu >.ant-menu .ant-menu-submenu-title::after{transition:transform 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);}.ant-menu .ant-menu-submenu-expand-icon,.ant-menu .ant-menu-submenu-arrow{position:absolute;top:50%;inset-inline-end:16px;width:10px;color:currentcolor;transform:translateY(-50%);transition:transform 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.3s;}.ant-menu .ant-menu-submenu-arrow::before,.ant-menu .ant-menu-submenu-arrow::after{position:absolute;width:6px;height:1.5px;background-color:currentcolor;border-radius:6px;transition:background 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),transform 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),top 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),color 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);content:\\"\\";}.ant-menu .ant-menu-submenu-arrow::before{transform:rotate(45deg) translateY(-2.5px);}.ant-menu .ant-menu-submenu-arrow::after{transform:rotate(-45deg) translateY(2.5px);}.ant-menu-inline-collapsed .ant-menu-submenu-arrow::before,.ant-menu-inline .ant-menu-submenu-arrow::before{transform:rotate(-45deg) translateX(2.5px);}.ant-menu-inline-collapsed .ant-menu-submenu-arrow::after,.ant-menu-inline .ant-menu-submenu-arrow::after{transform:rotate(45deg) translateX(-2.5px);}.ant-menu .ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow{transform:translateY(-2px);}.ant-menu .ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow::after{transform:rotate(-45deg) translateX(-2.5px);}.ant-menu .ant-menu-submenu-open.ant-menu-submenu-inline>.ant-menu-submenu-title>.ant-menu-submenu-arrow::before{transform:rotate(45deg) translateX(2.5px);}.ant-layout-header .ant-menu{line-height:inherit;}.ant-menu-horizontal{line-height:46px;border:0;border-bottom:1px solid rgba(253, 253, 253, 0.12);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:16px;}.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 0.3s,background 0.3s;}.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;}.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:40px;line-height:40px;padding-inline:16px;overflow:hidden;text-overflow:ellipsis;margin-inline:4px;margin-block:4px;width:calc(100% - 8px);}.ant-menu-inline .ant-menu-submenu,.ant-menu-vertical .ant-menu-submenu{padding-bottom:0.02px;}.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:40px;line-height:40px;}.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:34px;}.ant-menu-submenu-popup .ant-menu-vertical{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-menu-submenu-popup .ant-menu-vertical .ant-menu-item{position:relative;}.ant-menu-submenu-popup .ant-menu-vertical .ant-menu-item,.ant-menu-submenu-popup .ant-menu-vertical .ant-menu-submenu-title{height:40px;line-height:40px;padding-inline:16px;overflow:hidden;text-overflow:ellipsis;margin-inline:4px;margin-block:4px;width:calc(100% - 8px);}.ant-menu-submenu-popup .ant-menu-vertical .ant-menu-submenu{padding-bottom:0.02px;}.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:40px;line-height:40px;}.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:34px;}.ant-menu-submenu-popup .ant-menu-vertical.ant-menu-sub{min-width:160px;max-height:calc(100vh - 100px);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 0.3s,background 0.3s,padding 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);}.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:40px;line-height:40px;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:32px;}.ant-menu-inline .ant-menu-item{height:40px;line-height:40px;list-style-position:inside;list-style-type:disc;}.ant-menu-inline-collapsed{width:80px;}.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:16px;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% - 12px);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:16px;line-height:40px;}.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:#fff;}.ant-menu-inline-collapsed .ant-menu-item-group-title{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding-inline:8px;}.ant-menu-light{color:rgba(255, 255, 255, 0.85);background:#141414;}.ant-menu-light.ant-menu-root:focus-visible{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-menu-light .ant-menu-item-group-title{color:rgba(255, 255, 255, 0.45);}.ant-menu-light .ant-menu-submenu-selected >.ant-menu-submenu-title{color:#037003;}.ant-menu-light .ant-menu-item-disabled,.ant-menu-light .ant-menu-submenu-disabled{color:rgba(255, 255, 255, 0.25)!important;}.ant-menu-light .ant-menu-item:hover:not(.ant-menu-item-selected):not(.ant-menu-submenu-selected),.ant-menu-light .ant-menu-submenu-title:hover:not(.ant-menu-item-selected):not(.ant-menu-submenu-selected){color:rgba(255, 255, 255, 0.85);}.ant-menu-light:not(.ant-menu-horizontal) .ant-menu-item:not(.ant-menu-item-selected):hover{background-color:rgba(255, 255, 255, 0.12);}.ant-menu-light:not(.ant-menu-horizontal) .ant-menu-item:not(.ant-menu-item-selected):active{background-color:#111911;}.ant-menu-light:not(.ant-menu-horizontal) .ant-menu-submenu-title:hover{background-color:rgba(255, 255, 255, 0.12);}.ant-menu-light:not(.ant-menu-horizontal) .ant-menu-submenu-title:active{background-color:#111911;}.ant-menu-light .ant-menu-item-danger{color:#dc4446;}.ant-menu-light .ant-menu-item-danger.ant-menu-item:hover:not(.ant-menu-item-selected):not(.ant-menu-submenu-selected){color:#dc4446;}.ant-menu-light .ant-menu-item-danger.ant-menu-item:active{background:#2c1618;}.ant-menu-light .ant-menu-item a,.ant-menu-light .ant-menu-item a:hover{color:inherit;}.ant-menu-light .ant-menu-item-selected{color:#037003;}.ant-menu-light .ant-menu-item-selected.ant-menu-item-danger{color:#dc4446;}.ant-menu-light .ant-menu-item-selected a,.ant-menu-light .ant-menu-item-selected a:hover{color:inherit;}.ant-menu-light .ant-menu-item-selected{background-color:#111911;}.ant-menu-light .ant-menu-item-selected.ant-menu-item-danger{background-color:#2c1618;}.ant-menu-light .ant-menu-item:not(.ant-menu-item-disabled):focus-visible,.ant-menu-light .ant-menu-submenu-title:not(.ant-menu-item-disabled):focus-visible{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-menu-light.ant-menu-submenu>.ant-menu{background-color:#1f1f1f;}.ant-menu-light.ant-menu-popup>.ant-menu{background-color:#141414;}.ant-menu-light.ant-menu-horizontal >.ant-menu-item,.ant-menu-light.ant-menu-horizontal >.ant-menu-submenu{top:1px;margin-top:-1px;margin-bottom:0;border-radius:0;}.ant-menu-light.ant-menu-horizontal >.ant-menu-item::after,.ant-menu-light.ant-menu-horizontal >.ant-menu-submenu::after{position:absolute;inset-inline:16px;bottom:0;border-bottom:2px solid transparent;transition:border-color 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);content:\\"\\";}.ant-menu-light.ant-menu-horizontal >.ant-menu-item:hover::after,.ant-menu-light.ant-menu-horizontal >.ant-menu-submenu:hover::after,.ant-menu-light.ant-menu-horizontal >.ant-menu-item-active::after,.ant-menu-light.ant-menu-horizontal >.ant-menu-submenu-active::after,.ant-menu-light.ant-menu-horizontal >.ant-menu-item-open::after,.ant-menu-light.ant-menu-horizontal >.ant-menu-submenu-open::after{border-bottom-width:2px;border-bottom-color:#037003;}.ant-menu-light.ant-menu-horizontal >.ant-menu-item-selected,.ant-menu-light.ant-menu-horizontal >.ant-menu-submenu-selected{color:#037003;background-color:transparent;}.ant-menu-light.ant-menu-horizontal >.ant-menu-item-selected::after,.ant-menu-light.ant-menu-horizontal >.ant-menu-submenu-selected::after{border-bottom-width:2px;border-bottom-color:#037003;}.ant-menu-light.ant-menu-root.ant-menu-inline,.ant-menu-light.ant-menu-root.ant-menu-vertical{border-inline-end:1px solid rgba(253, 253, 253, 0.12);}.ant-menu-light.ant-menu-inline .ant-menu-sub.ant-menu-inline{background:rgba(255, 255, 255, 0.04);}.ant-menu-light.ant-menu-inline .ant-menu-item{position:relative;}.ant-menu-light.ant-menu-inline .ant-menu-item::after{position:absolute;inset-block:0;inset-inline-end:0;border-inline-end:0px solid #037003;transform:scaleY(0.0001);opacity:0;transition:transform 0.2s cubic-bezier(0.215, 0.61, 0.355, 1),opacity 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);content:\\"\\";}.ant-menu-light.ant-menu-inline .ant-menu-item.ant-menu-item-danger::after{border-inline-end-color:#dc4446;}.ant-menu-light.ant-menu-inline .ant-menu-selected::after,.ant-menu-light.ant-menu-inline .ant-menu-item-selected::after{transform:scaleY(1);opacity:1;transition:transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);}.ant-menu-dark{color:rgba(255, 255, 255, 0.65);background:#001529;}.ant-menu-dark.ant-menu-root:focus-visible{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-menu-dark .ant-menu-item-group-title{color:rgba(255, 255, 255, 0.65);}.ant-menu-dark .ant-menu-submenu-selected >.ant-menu-submenu-title{color:#fff;}.ant-menu-dark .ant-menu-item-disabled,.ant-menu-dark .ant-menu-submenu-disabled{color:rgba(255, 255, 255, 0.25)!important;}.ant-menu-dark .ant-menu-item:hover:not(.ant-menu-item-selected):not(.ant-menu-submenu-selected),.ant-menu-dark .ant-menu-submenu-title:hover:not(.ant-menu-item-selected):not(.ant-menu-submenu-selected){color:#fff;}.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item:not(.ant-menu-item-selected):hover{background-color:rgba(255, 255, 255, 0.12);}.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item:not(.ant-menu-item-selected):active{background-color:#037003;}.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-submenu-title:hover{background-color:rgba(255, 255, 255, 0.12);}.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-submenu-title:active{background-color:#037003;}.ant-menu-dark .ant-menu-item-danger{color:#dc4446;}.ant-menu-dark .ant-menu-item-danger.ant-menu-item:hover:not(.ant-menu-item-selected):not(.ant-menu-submenu-selected){color:#e86e6b;}.ant-menu-dark .ant-menu-item-danger.ant-menu-item:active{background:#dc4446;}.ant-menu-dark .ant-menu-item a,.ant-menu-dark .ant-menu-item a:hover{color:inherit;}.ant-menu-dark .ant-menu-item-selected{color:#fff;}.ant-menu-dark .ant-menu-item-selected.ant-menu-item-danger{color:#fff;}.ant-menu-dark .ant-menu-item-selected a,.ant-menu-dark .ant-menu-item-selected a:hover{color:inherit;}.ant-menu-dark .ant-menu-item-selected{background-color:#037003;}.ant-menu-dark .ant-menu-item-selected.ant-menu-item-danger{background-color:#dc4446;}.ant-menu-dark .ant-menu-item:not(.ant-menu-item-disabled):focus-visible,.ant-menu-dark .ant-menu-submenu-title:not(.ant-menu-item-disabled):focus-visible{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-menu-dark.ant-menu-submenu>.ant-menu{background-color:#001529;}.ant-menu-dark.ant-menu-popup>.ant-menu{background-color:#001529;}.ant-menu-dark.ant-menu-horizontal{border-bottom:0;}.ant-menu-dark.ant-menu-horizontal >.ant-menu-item,.ant-menu-dark.ant-menu-horizontal >.ant-menu-submenu{top:0;margin-top:0;margin-bottom:0;border-radius:0;}.ant-menu-dark.ant-menu-horizontal >.ant-menu-item::after,.ant-menu-dark.ant-menu-horizontal >.ant-menu-submenu::after{position:absolute;inset-inline:16px;bottom:0;border-bottom:0px solid transparent;transition:border-color 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);content:\\"\\";}.ant-menu-dark.ant-menu-horizontal >.ant-menu-item:hover::after,.ant-menu-dark.ant-menu-horizontal >.ant-menu-submenu:hover::after,.ant-menu-dark.ant-menu-horizontal >.ant-menu-item-active::after,.ant-menu-dark.ant-menu-horizontal >.ant-menu-submenu-active::after,.ant-menu-dark.ant-menu-horizontal >.ant-menu-item-open::after,.ant-menu-dark.ant-menu-horizontal >.ant-menu-submenu-open::after{border-bottom-width:0;border-bottom-color:#fff;}.ant-menu-dark.ant-menu-horizontal >.ant-menu-item-selected,.ant-menu-dark.ant-menu-horizontal >.ant-menu-submenu-selected{color:#fff;background-color:#037003;}.ant-menu-dark.ant-menu-horizontal >.ant-menu-item-selected::after,.ant-menu-dark.ant-menu-horizontal >.ant-menu-submenu-selected::after{border-bottom-width:0;border-bottom-color:#fff;}.ant-menu-dark.ant-menu-root.ant-menu-inline,.ant-menu-dark.ant-menu-root.ant-menu-vertical{border-inline-end:0px solid rgba(253, 253, 253, 0.12);}.ant-menu-dark.ant-menu-inline .ant-menu-sub.ant-menu-inline{background:#000c17;}.ant-menu-dark.ant-menu-inline .ant-menu-item{position:relative;}.ant-menu-dark.ant-menu-inline .ant-menu-item::after{position:absolute;inset-block:0;inset-inline-end:0;border-inline-end:0px solid #fff;transform:scaleY(0.0001);opacity:0;transition:transform 0.2s cubic-bezier(0.215, 0.61, 0.355, 1),opacity 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);content:\\"\\";}.ant-menu-dark.ant-menu-inline .ant-menu-item.ant-menu-item-danger::after{border-inline-end-color:#fff;}.ant-menu-dark.ant-menu-inline .ant-menu-selected::after,.ant-menu-dark.ant-menu-inline .ant-menu-item-selected::after{transform:scaleY(1);opacity:1;transition:transform 0.2s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);}.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(-2.5px);}.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(2.5px);}.ant-menu .ant-motion-collapse-legacy{overflow:hidden;}.ant-menu .ant-motion-collapse-legacy-active{transition:height 0.2s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.2s cubic-bezier(0.645, 0.045, 0.355, 1)!important;}.ant-menu .ant-motion-collapse{overflow:hidden;transition:height 0.2s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.2s cubic-bezier(0.645, 0.045, 0.355, 1)!important;}.ant-slide-up-enter,.ant-slide-up-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-slide-up-leave{animation-duration:0.2s;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:cubic-bezier(0.23, 1, 0.32, 1);}.ant-slide-up-leave{animation-timing-function:cubic-bezier(0.755, 0.05, 0.855, 0.06);}.ant-slide-down-enter,.ant-slide-down-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-slide-down-leave{animation-duration:0.2s;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:cubic-bezier(0.23, 1, 0.32, 1);}.ant-slide-down-leave{animation-timing-function:cubic-bezier(0.755, 0.05, 0.855, 0.06);}.ant-zoom-big-enter,.ant-zoom-big-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-zoom-big-leave{animation-duration:0.2s;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:cubic-bezier(0.08, 0.82, 0.17, 1);}.ant-zoom-big-enter-prepare,.ant-zoom-big-appear-prepare{transform:none;}.ant-zoom-big-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}[class^=\\"ant-mentions\\"],[class*=\\" ant-mentions\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-mentions\\"]::before,[class*=\\" ant-mentions\\"]::before,[class^=\\"ant-mentions\\"]::after,[class*=\\" ant-mentions\\"]::after{box-sizing:border-box;}[class^=\\"ant-mentions\\"] [class^=\\"ant-mentions\\"],[class*=\\" ant-mentions\\"] [class^=\\"ant-mentions\\"],[class^=\\"ant-mentions\\"] [class*=\\" ant-mentions\\"],[class*=\\" ant-mentions\\"] [class*=\\" ant-mentions\\"]{box-sizing:border-box;}[class^=\\"ant-mentions\\"] [class^=\\"ant-mentions\\"]::before,[class*=\\" ant-mentions\\"] [class^=\\"ant-mentions\\"]::before,[class^=\\"ant-mentions\\"] [class*=\\" ant-mentions\\"]::before,[class*=\\" ant-mentions\\"] [class*=\\" ant-mentions\\"]::before,[class^=\\"ant-mentions\\"] [class^=\\"ant-mentions\\"]::after,[class*=\\" ant-mentions\\"] [class^=\\"ant-mentions\\"]::after,[class^=\\"ant-mentions\\"] [class*=\\" ant-mentions\\"]::after,[class*=\\" ant-mentions\\"] [class*=\\" ant-mentions\\"]::after{box-sizing:border-box;}.ant-mentions{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:relative;display:inline-block;width:100%;min-width:0;background-color:#141414;background-image:none;border-width:1px;border-style:solid;border-color:#424242;border-radius:6px;transition:all 0.2s;height:auto;overflow:hidden;white-space:pre-wrap;vertical-align:bottom;}.ant-mentions::-moz-placeholder{opacity:1;}.ant-mentions::placeholder{color:rgba(255, 255, 255, 0.25);user-select:none;}.ant-mentions:placeholder-shown{text-overflow:ellipsis;}.ant-mentions:hover{border-color:#198016;border-inline-end-width:1px;}.ant-mentions:focus,.ant-mentions-focused{border-color:#198016;box-shadow:0 0 0 2px rgba(0, 53, 0, 0.15);border-inline-end-width:1px;outline:0;}.ant-mentions-disabled,.ant-mentions[disabled]{color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);border-color:#424242;box-shadow:none;cursor:not-allowed;opacity:1;}.ant-mentions-disabled:hover,.ant-mentions[disabled]:hover{border-color:#424242;border-inline-end-width:1px;}.ant-mentions-borderless,.ant-mentions-borderless:hover,.ant-mentions-borderless:focus,.ant-mentions-borderless-focused,.ant-mentions-borderless-disabled,.ant-mentions-borderless[disabled]{background-color:transparent;border:none;box-shadow:none;}textarea.ant-mentions{max-width:100%;height:auto;min-height:32px;line-height:1.5714285714285714;vertical-align:bottom;transition:all 0.3s,height 0s;resize:vertical;}.ant-mentions-lg{padding:7px 11px;font-size:16px;line-height:1.5;border-radius:8px;}.ant-mentions-sm{padding:0px 7px;border-radius:4px;}.ant-mentions-rtl{direction:rtl;}.ant-mentions-textarea-rtl{direction:rtl;}.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions{border-color:#dc4446;}.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:hover{border-color:#7e2e2f;}.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus,.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions-focused{border-color:#dc4446;box-shadow:0 0 0 2px rgba(238, 38, 56, 0.11);border-inline-end-width:1px;outline:0;}.ant-mentions-status-error:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions .ant-mentions-prefix{color:#dc4446;}.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions{border-color:#d89614;}.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:hover{border-color:#7c5914;}.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions:focus,.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions-focused{border-color:#d89614;box-shadow:0 0 0 2px rgba(173, 107, 0, 0.15);border-inline-end-width:1px;outline:0;}.ant-mentions-status-warning:not(.ant-mentions-disabled):not(.ant-mentions-borderless).ant-mentions .ant-mentions-prefix{color:#d89614;}.ant-mentions-disabled >textarea{color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);border-color:#424242;box-shadow:none;cursor:not-allowed;opacity:1;}.ant-mentions-disabled >textarea:hover{border-color:#424242;border-inline-end-width:1px;}.ant-mentions-focused{border-color:#198016;box-shadow:0 0 0 2px rgba(0, 53, 0, 0.15);border-inline-end-width:1px;outline:0;}.ant-mentions-affix-wrapper .ant-mentions-suffix{position:absolute;top:0;inset-inline-end:11px;bottom:0;z-index:1;display:inline-flex;align-items:center;margin:auto;}.ant-mentions >textarea,.ant-mentions .ant-mentions-measure{color:rgba(255, 255, 255, 0.85);box-sizing:border-box;min-height:30px;margin:0;padding:4px 11px;overflow:inherit;overflow-x:hidden;overflow-y:auto;font-weight:inherit;font-size:inherit;font-family:inherit;font-style:inherit;font-variant:inherit;font-size-adjust:inherit;font-stretch:inherit;line-height:inherit;direction:inherit;letter-spacing:inherit;white-space:inherit;text-align:inherit;vertical-align:top;word-wrap:break-word;word-break:inherit;tab-size:inherit;}.ant-mentions >textarea{width:100%;border:none;outline:none;resize:none;background-color:inherit;}.ant-mentions >textarea::-moz-placeholder{opacity:1;}.ant-mentions >textarea::placeholder{color:rgba(255, 255, 255, 0.25);user-select:none;}.ant-mentions >textarea:placeholder-shown{text-overflow:ellipsis;}.ant-mentions .ant-mentions-measure{position:absolute;top:0;inset-inline-end:0;bottom:0;inset-inline-start:0;z-index:-1;color:transparent;pointer-events:none;}.ant-mentions .ant-mentions-measure >span{display:inline-block;min-height:1em;}.ant-mentions-dropdown{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:absolute;top:-9999px;inset-inline-start:-9999px;z-index:1050;font-variant:initial;background-color:#1f1f1f;border-radius:8px;outline:none;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-mentions-dropdown-hidden{display:none;}.ant-mentions-dropdown .ant-mentions-dropdown-menu{max-height:250px;margin-bottom:0;padding-inline-start:0;overflow:auto;list-style:none;outline:none;}.ant-mentions-dropdown .ant-mentions-dropdown-menu-item{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;position:relative;display:block;min-width:100px;padding:5px 12px;color:rgba(255, 255, 255, 0.85);font-weight:normal;line-height:1.5714285714285714;cursor:pointer;transition:background 0.3s ease;}.ant-mentions-dropdown .ant-mentions-dropdown-menu-item:hover{background-color:rgba(255, 255, 255, 0.08);}.ant-mentions-dropdown .ant-mentions-dropdown-menu-item:first-child{border-start-start-radius:8px;border-start-end-radius:8px;border-end-start-radius:0;border-end-end-radius:0;}.ant-mentions-dropdown .ant-mentions-dropdown-menu-item:last-child{border-start-start-radius:0;border-start-end-radius:0;border-end-start-radius:8px;border-end-end-radius:8px;}.ant-mentions-dropdown .ant-mentions-dropdown-menu-item-disabled{color:rgba(255, 255, 255, 0.25);cursor:not-allowed;}.ant-mentions-dropdown .ant-mentions-dropdown-menu-item-disabled:hover{color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);cursor:not-allowed;}.ant-mentions-dropdown .ant-mentions-dropdown-menu-item-selected{color:rgba(255, 255, 255, 0.85);font-weight:600;background-color:rgba(255, 255, 255, 0.08);}.ant-mentions-dropdown .ant-mentions-dropdown-menu-item-active{background-color:rgba(255, 255, 255, 0.08);}[class^=\\"ant-modal\\"],[class*=\\" ant-modal\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-modal\\"]::before,[class*=\\" ant-modal\\"]::before,[class^=\\"ant-modal\\"]::after,[class*=\\" ant-modal\\"]::after{box-sizing:border-box;}[class^=\\"ant-modal\\"] [class^=\\"ant-modal\\"],[class*=\\" ant-modal\\"] [class^=\\"ant-modal\\"],[class^=\\"ant-modal\\"] [class*=\\" ant-modal\\"],[class*=\\" ant-modal\\"] [class*=\\" ant-modal\\"]{box-sizing:border-box;}[class^=\\"ant-modal\\"] [class^=\\"ant-modal\\"]::before,[class*=\\" ant-modal\\"] [class^=\\"ant-modal\\"]::before,[class^=\\"ant-modal\\"] [class*=\\" ant-modal\\"]::before,[class*=\\" ant-modal\\"] [class*=\\" ant-modal\\"]::before,[class^=\\"ant-modal\\"] [class^=\\"ant-modal\\"]::after,[class*=\\" ant-modal\\"] [class^=\\"ant-modal\\"]::after,[class^=\\"ant-modal\\"] [class*=\\" ant-modal\\"]::after,[class*=\\" ant-modal\\"] [class*=\\" ant-modal\\"]::after{box-sizing:border-box;}.ant-modal-root .ant-modal-wrap{z-index:1000;position:fixed;inset:0;overflow:auto;outline:0;-webkit-overflow-scrolling:touch;}.ant-modal-root .ant-modal-wrap-rtl{direction:rtl;}.ant-modal-root .ant-modal-centered{text-align:center;}.ant-modal-root .ant-modal-centered::before{display:inline-block;width:0;height:100%;vertical-align:middle;content:\\"\\";}.ant-modal-root .ant-modal-centered .ant-modal{top:0;display:inline-block;padding-bottom:0;text-align:start;vertical-align:middle;}@media (max-width: 767){.ant-modal-root .ant-modal{max-width:calc(100vw - 16px);margin:8 auto;}.ant-modal-root .ant-modal-centered .ant-modal{flex:1;}}.ant-modal{box-sizing:border-box;margin:0 auto;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';pointer-events:none;position:relative;top:100px;width:auto;max-width:calc(100vw - 32px);padding-bottom:24px;}.ant-modal .ant-modal-title{margin:0;color:rgba(255, 255, 255, 0.85);font-weight:600;font-size:16px;line-height:1.5;word-wrap:break-word;}.ant-modal .ant-modal-content{position:relative;background-color:#1f1f1f;background-clip:padding-box;border:0;border-radius:8px;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);pointer-events:auto;padding:20px 24px;}.ant-modal .ant-modal-close{position:absolute;top:17px;inset-inline-end:17px;z-index:1010;padding:0;color:rgba(255, 255, 255, 0.45);font-weight:600;line-height:1;text-decoration:none;background:transparent;border-radius:4px;width:22px;height:22px;border:0;outline:0;cursor:pointer;transition:color 0.2s,background-color 0.2s;}.ant-modal .ant-modal-close-x{display:block;font-size:16px;font-style:normal;line-height:22px;text-align:center;text-transform:none;text-rendering:auto;}.ant-modal .ant-modal-close:hover{color:rgba(255, 255, 255, 0.85);background-color:rgba(255, 255, 255, 0.12);text-decoration:none;}.ant-modal .ant-modal-close:active{background-color:rgba(255, 255, 255, 0.18);}.ant-modal .ant-modal-close:focus-visible{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-modal .ant-modal-header{color:rgba(255, 255, 255, 0.85);background:#1f1f1f;border-radius:8px 8px 0 0;margin-bottom:8px;}.ant-modal .ant-modal-body{font-size:14px;line-height:1.5714285714285714;word-wrap:break-word;}.ant-modal .ant-modal-footer{text-align:end;background:transparent;margin-top:12px;}.ant-modal .ant-modal-footer .ant-btn+.ant-btn:not(.ant-dropdown-trigger){margin-bottom:0;margin-inline-start:8px;}.ant-modal .ant-modal-open{overflow:hidden;}.ant-modal-pure-panel{top:auto;padding:0;display:flex;flex-direction:column;}.ant-modal-pure-panel .ant-modal-content,.ant-modal-pure-panel .ant-modal-body,.ant-modal-pure-panel .ant-modal-confirm-body-wrapper{display:flex;flex-direction:column;flex:auto;}.ant-modal-pure-panel .ant-modal-confirm-body{margin-bottom:auto;}.ant-modal-confirm-rtl{direction:rtl;}.ant-modal-confirm .ant-modal-header{display:none;}.ant-modal-confirm .ant-modal-confirm-body-wrapper::before{display:table;content:\\"\\";}.ant-modal-confirm .ant-modal-confirm-body-wrapper::after{display:table;clear:both;content:\\"\\";}.ant-modal-confirm .ant-modal-confirm-body{display:flex;flex-wrap:wrap;align-items:center;}.ant-modal-confirm .ant-modal-confirm-body .ant-modal-confirm-title{flex:0 0 100%;display:block;overflow:hidden;color:rgba(255, 255, 255, 0.85);font-weight:600;font-size:16px;line-height:1.5;}.ant-modal-confirm .ant-modal-confirm-body .ant-modal-confirm-title +.ant-modal-confirm-content{margin-block-start:8px;flex-basis:100%;max-width:calc(100% - 34px);}.ant-modal-confirm .ant-modal-confirm-body .ant-modal-confirm-content{color:rgba(255, 255, 255, 0.85);font-size:14px;}.ant-modal-confirm .ant-modal-confirm-body >.anticon{flex:none;margin-inline-end:12px;font-size:22px;}.ant-modal-confirm .ant-modal-confirm-body >.anticon +.ant-modal-confirm-title{flex:1;}.ant-modal-confirm .ant-modal-confirm-body >.anticon +.ant-modal-confirm-title+.ant-modal-confirm-content{margin-inline-start:34px;}.ant-modal-confirm .ant-modal-confirm-btns{text-align:end;margin-top:12px;}.ant-modal-confirm .ant-modal-confirm-btns .ant-btn+.ant-btn{margin-bottom:0;margin-inline-start:8px;}.ant-modal-confirm-error .ant-modal-confirm-body>.anticon{color:#dc4446;}.ant-modal-confirm-warning .ant-modal-confirm-body>.anticon,.ant-modal-confirm-confirm .ant-modal-confirm-body>.anticon{color:#d89614;}.ant-modal-confirm-info .ant-modal-confirm-body>.anticon{color:#1668dc;}.ant-modal-confirm-success .ant-modal-confirm-body>.anticon{color:#49aa19;}.ant-modal-zoom-leave .ant-modal-btns{pointer-events:none;}.ant-modal-root .ant-modal-wrap-rtl{direction:rtl;}.ant-modal-root .ant-modal-wrap-rtl .ant-modal-confirm-body{direction:rtl;}.ant-modal-root .ant-modal.ant-zoom-enter,.ant-modal-root .ant-modal.ant-zoom-appear{transform:none;opacity:0;animation-duration:0.3s;user-select:none;}.ant-modal-root .ant-modal.ant-zoom-leave .ant-modal-content{pointer-events:none;}.ant-modal-root .ant-modal-mask{position:fixed;top:0;inset-inline-end:0;bottom:0;inset-inline-start:0;z-index:1000;height:100%;background-color:rgba(0, 0, 0, 0.45);}.ant-modal-root .ant-modal-mask .ant-modal-hidden{display:none;}.ant-modal-root .ant-modal-wrap{position:fixed;top:0;inset-inline-end:0;bottom:0;inset-inline-start:0;overflow:auto;outline:0;-webkit-overflow-scrolling:touch;}.ant-modal-root .ant-fade-enter,.ant-modal-root .ant-fade-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-modal-root .ant-fade-leave{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-modal-root .ant-fade-enter.ant-fade-enter-active,.ant-modal-root .ant-fade-appear.ant-fade-appear-active{animation-name:antFadeIn;animation-play-state:running;}.ant-modal-root .ant-fade-leave.ant-fade-leave-active{animation-name:antFadeOut;animation-play-state:running;pointer-events:none;}.ant-modal-root .ant-fade-enter,.ant-modal-root .ant-fade-appear{opacity:0;animation-timing-function:linear;}.ant-modal-root .ant-fade-leave{animation-timing-function:linear;}.ant-zoom-enter,.ant-zoom-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-zoom-leave{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-zoom-enter.ant-zoom-enter-active,.ant-zoom-appear.ant-zoom-appear-active{animation-name:antZoomIn;animation-play-state:running;}.ant-zoom-leave.ant-zoom-leave-active{animation-name:antZoomOut;animation-play-state:running;pointer-events:none;}.ant-zoom-enter,.ant-zoom-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(0.08, 0.82, 0.17, 1);}.ant-zoom-enter-prepare,.ant-zoom-appear-prepare{transform:none;}.ant-zoom-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}[class^=\\"ant-statistic\\"],[class*=\\" ant-statistic\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-statistic\\"]::before,[class*=\\" ant-statistic\\"]::before,[class^=\\"ant-statistic\\"]::after,[class*=\\" ant-statistic\\"]::after{box-sizing:border-box;}[class^=\\"ant-statistic\\"] [class^=\\"ant-statistic\\"],[class*=\\" ant-statistic\\"] [class^=\\"ant-statistic\\"],[class^=\\"ant-statistic\\"] [class*=\\" ant-statistic\\"],[class*=\\" ant-statistic\\"] [class*=\\" ant-statistic\\"]{box-sizing:border-box;}[class^=\\"ant-statistic\\"] [class^=\\"ant-statistic\\"]::before,[class*=\\" ant-statistic\\"] [class^=\\"ant-statistic\\"]::before,[class^=\\"ant-statistic\\"] [class*=\\" ant-statistic\\"]::before,[class*=\\" ant-statistic\\"] [class*=\\" ant-statistic\\"]::before,[class^=\\"ant-statistic\\"] [class^=\\"ant-statistic\\"]::after,[class*=\\" ant-statistic\\"] [class^=\\"ant-statistic\\"]::after,[class^=\\"ant-statistic\\"] [class*=\\" ant-statistic\\"]::after,[class*=\\" ant-statistic\\"] [class*=\\" ant-statistic\\"]::after{box-sizing:border-box;}.ant-statistic{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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-statistic .ant-statistic-title{margin-bottom:4px;color:rgba(255, 255, 255, 0.45);font-size:14px;}.ant-statistic .ant-statistic-skeleton{padding-top:16px;}.ant-statistic .ant-statistic-content{color:rgba(255, 255, 255, 0.85);font-size:24px;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-statistic .ant-statistic-content .ant-statistic-content-value{display:inline-block;direction:ltr;}.ant-statistic .ant-statistic-content .ant-statistic-content-prefix,.ant-statistic .ant-statistic-content .ant-statistic-content-suffix{display:inline-block;}.ant-statistic .ant-statistic-content .ant-statistic-content-prefix{margin-inline-end:4px;}.ant-statistic .ant-statistic-content .ant-statistic-content-suffix{margin-inline-start:4px;}[class^=\\"ant-skeleton\\"],[class*=\\" ant-skeleton\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-skeleton\\"]::before,[class*=\\" ant-skeleton\\"]::before,[class^=\\"ant-skeleton\\"]::after,[class*=\\" ant-skeleton\\"]::after{box-sizing:border-box;}[class^=\\"ant-skeleton\\"] [class^=\\"ant-skeleton\\"],[class*=\\" ant-skeleton\\"] [class^=\\"ant-skeleton\\"],[class^=\\"ant-skeleton\\"] [class*=\\" ant-skeleton\\"],[class*=\\" ant-skeleton\\"] [class*=\\" ant-skeleton\\"]{box-sizing:border-box;}[class^=\\"ant-skeleton\\"] [class^=\\"ant-skeleton\\"]::before,[class*=\\" ant-skeleton\\"] [class^=\\"ant-skeleton\\"]::before,[class^=\\"ant-skeleton\\"] [class*=\\" ant-skeleton\\"]::before,[class*=\\" ant-skeleton\\"] [class*=\\" ant-skeleton\\"]::before,[class^=\\"ant-skeleton\\"] [class^=\\"ant-skeleton\\"]::after,[class*=\\" ant-skeleton\\"] [class^=\\"ant-skeleton\\"]::after,[class^=\\"ant-skeleton\\"] [class*=\\" ant-skeleton\\"]::after,[class*=\\" ant-skeleton\\"] [class*=\\" ant-skeleton\\"]::after{box-sizing:border-box;}.ant-skeleton{display:table;width:100%;}.ant-skeleton .ant-skeleton-header{display:table-cell;padding-inline-end:16px;vertical-align:top;}.ant-skeleton .ant-skeleton-header .ant-skeleton-avatar{display:inline-block;vertical-align:top;background:rgba(255, 255, 255, 0.12);width:32px;height:32px;line-height:32px;}.ant-skeleton .ant-skeleton-header .ant-skeleton-avatar-circle{border-radius:50%;}.ant-skeleton .ant-skeleton-header .ant-skeleton-avatar-lg{width:40px;height:40px;line-height:40px;}.ant-skeleton .ant-skeleton-header .ant-skeleton-avatar-sm{width:24px;height:24px;line-height:24px;}.ant-skeleton .ant-skeleton-content{display:table-cell;width:100%;vertical-align:top;}.ant-skeleton .ant-skeleton-content .ant-skeleton-title{width:100%;height:16px;background:rgba(255, 255, 255, 0.12);border-radius:4px;}.ant-skeleton .ant-skeleton-content .ant-skeleton-title +.ant-skeleton-paragraph{margin-block-start:24px;}.ant-skeleton .ant-skeleton-content .ant-skeleton-paragraph{padding:0;}.ant-skeleton .ant-skeleton-content .ant-skeleton-paragraph >li{width:100%;height:16px;list-style:none;background:rgba(255, 255, 255, 0.12);border-radius:4px;}.ant-skeleton .ant-skeleton-content .ant-skeleton-paragraph >li +li{margin-block-start:16px;}.ant-skeleton .ant-skeleton-content .ant-skeleton-paragraph>li:last-child:not(:first-child):not(:nth-child(2)){width:61%;}.ant-skeleton-round .ant-skeleton-content .ant-skeleton-title,.ant-skeleton-round .ant-skeleton-content .ant-skeleton-paragraph>li{border-radius:100px;}.ant-skeleton-with-avatar .ant-skeleton-content .ant-skeleton-title{margin-block-start:12px;}.ant-skeleton-with-avatar .ant-skeleton-content .ant-skeleton-title +.ant-skeleton-paragraph{margin-block-start:28px;}.ant-skeleton.ant-skeleton-element{display:inline-block;width:auto;}.ant-skeleton.ant-skeleton-element .ant-skeleton-button{display:inline-block;vertical-align:top;background:rgba(255, 255, 255, 0.12);border-radius:4px;width:64px;min-width:64px;height:32px;line-height:32px;}.ant-skeleton.ant-skeleton-element .ant-skeleton-button.ant-skeleton-button-circle{width:32px;min-width:32px;border-radius:50%;}.ant-skeleton.ant-skeleton-element .ant-skeleton-button.ant-skeleton-button-round{border-radius:32px;}.ant-skeleton.ant-skeleton-element .ant-skeleton-button-lg{width:80px;min-width:80px;height:40px;line-height:40px;}.ant-skeleton.ant-skeleton-element .ant-skeleton-button-lg.ant-skeleton-button-circle{width:40px;min-width:40px;border-radius:50%;}.ant-skeleton.ant-skeleton-element .ant-skeleton-button-lg.ant-skeleton-button-round{border-radius:40px;}.ant-skeleton.ant-skeleton-element .ant-skeleton-button-sm{width:48px;min-width:48px;height:24px;line-height:24px;}.ant-skeleton.ant-skeleton-element .ant-skeleton-button-sm.ant-skeleton-button-circle{width:24px;min-width:24px;border-radius:50%;}.ant-skeleton.ant-skeleton-element .ant-skeleton-button-sm.ant-skeleton-button-round{border-radius:24px;}.ant-skeleton.ant-skeleton-element .ant-skeleton-avatar{display:inline-block;vertical-align:top;background:rgba(255, 255, 255, 0.12);width:32px;height:32px;line-height:32px;}.ant-skeleton.ant-skeleton-element .ant-skeleton-avatar.ant-skeleton-avatar-circle{border-radius:50%;}.ant-skeleton.ant-skeleton-element .ant-skeleton-avatar.ant-skeleton-avatar-lg{width:40px;height:40px;line-height:40px;}.ant-skeleton.ant-skeleton-element .ant-skeleton-avatar.ant-skeleton-avatar-sm{width:24px;height:24px;line-height:24px;}.ant-skeleton.ant-skeleton-element .ant-skeleton-input{display:inline-block;vertical-align:top;background:rgba(255, 255, 255, 0.12);border-radius:4px;width:160px;min-width:160px;height:32px;line-height:32px;}.ant-skeleton.ant-skeleton-element .ant-skeleton-input-lg{width:200px;min-width:200px;height:40px;line-height:40px;}.ant-skeleton.ant-skeleton-element .ant-skeleton-input-sm{width:120px;min-width:120px;height:24px;line-height:24px;}.ant-skeleton.ant-skeleton-element .ant-skeleton-image{display:flex;align-items:center;justify-content:center;vertical-align:top;background:rgba(255, 255, 255, 0.12);border-radius:4px;width:96px;height:96px;line-height:96px;}.ant-skeleton.ant-skeleton-element .ant-skeleton-image .ant-skeleton-image-path{fill:#bfbfbf;}.ant-skeleton.ant-skeleton-element .ant-skeleton-image .ant-skeleton-image-svg{width:48px;height:48px;line-height:48px;max-width:192px;max-height:192px;}.ant-skeleton.ant-skeleton-element .ant-skeleton-image .ant-skeleton-image-svg.ant-skeleton-image-svg-circle{border-radius:50%;}.ant-skeleton.ant-skeleton-element .ant-skeleton-image.ant-skeleton-image-circle{border-radius:50%;}.ant-skeleton.ant-skeleton-block{width:100%;}.ant-skeleton.ant-skeleton-block .ant-skeleton-button{width:100%;}.ant-skeleton.ant-skeleton-block .ant-skeleton-input{width:100%;}.ant-skeleton.ant-skeleton-active .ant-skeleton-title,.ant-skeleton.ant-skeleton-active .ant-skeleton-paragraph>li,.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar,.ant-skeleton.ant-skeleton-active .ant-skeleton-button,.ant-skeleton.ant-skeleton-active .ant-skeleton-input,.ant-skeleton.ant-skeleton-active .ant-skeleton-image{position:relative;z-index:0;overflow:hidden;background:transparent;}.ant-skeleton.ant-skeleton-active .ant-skeleton-title::after,.ant-skeleton.ant-skeleton-active .ant-skeleton-paragraph>li::after,.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar::after,.ant-skeleton.ant-skeleton-active .ant-skeleton-button::after,.ant-skeleton.ant-skeleton-active .ant-skeleton-input::after,.ant-skeleton.ant-skeleton-active .ant-skeleton-image::after{position:absolute;top:0;inset-inline-end:-150%;bottom:0;inset-inline-start:-150%;background:linear-gradient(90deg, rgba(255, 255, 255, 0.12) 25%, rgba(255, 255, 255, 0.18) 37%, rgba(255, 255, 255, 0.12) 63%);animation-name:ant-skeleton-loading;animation-duration:1.4s;animation-timing-function:ease;animation-iteration-count:infinite;content:\\"\\";}@keyframes ant-skeleton-loading{0%{transform:translateX(-37.5%);}100%{transform:translateX(37.5%);}}[class^=\\"ant-page-header\\"],[class*=\\" ant-page-header\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-page-header\\"]::before,[class*=\\" ant-page-header\\"]::before,[class^=\\"ant-page-header\\"]::after,[class*=\\" ant-page-header\\"]::after{box-sizing:border-box;}[class^=\\"ant-page-header\\"] [class^=\\"ant-page-header\\"],[class*=\\" ant-page-header\\"] [class^=\\"ant-page-header\\"],[class^=\\"ant-page-header\\"] [class*=\\" ant-page-header\\"],[class*=\\" ant-page-header\\"] [class*=\\" ant-page-header\\"]{box-sizing:border-box;}[class^=\\"ant-page-header\\"] [class^=\\"ant-page-header\\"]::before,[class*=\\" ant-page-header\\"] [class^=\\"ant-page-header\\"]::before,[class^=\\"ant-page-header\\"] [class*=\\" ant-page-header\\"]::before,[class*=\\" ant-page-header\\"] [class*=\\" ant-page-header\\"]::before,[class^=\\"ant-page-header\\"] [class^=\\"ant-page-header\\"]::after,[class*=\\" ant-page-header\\"] [class^=\\"ant-page-header\\"]::after,[class^=\\"ant-page-header\\"] [class*=\\" ant-page-header\\"]::after,[class*=\\" ant-page-header\\"] [class*=\\" ant-page-header\\"]::after{box-sizing:border-box;}.ant-page-header{box-sizing:border-box;margin:0;padding:20px 24px;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:relative;background-color:#141414;}.ant-page-header.ant-page-header-ghost{background-color:transparent;}.ant-page-header.has-footer{padding-bottom:0;}.ant-page-header .ant-page-header-back{margin-right:20px;font-size:16px;line-height:1;}.ant-page-header .ant-page-header-back-button{color:#fff;text-decoration:none;outline:none;cursor:pointer;transition:color 0.3s;}.ant-page-header .ant-page-header-back-button:focus,.ant-page-header .ant-page-header-back-button:hover{color:#15417e;}.ant-page-header .ant-page-header-back-button:active{color:#1554ad;}.ant-page-header .ant-divider-vertical{height:14px;margin:0 12;vertical-align:middle;}.ant-breadcrumb+.ant-page-header-heading{margin-top:8px;}.ant-page-header .ant-page-header-heading{display:flex;justify-content:space-between;}.ant-page-header .ant-page-header-heading-left{display:flex;align-items:center;margin:4px 0;overflow:hidden;}.ant-page-header .ant-page-header-heading-title{margin-right:12px;margin-bottom:0;color:rgba(255, 255, 255, 0.85);font-weight:600;font-size:20px;line-height:32px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}.ant-page-header .ant-page-header-heading .ant-avatar{margin-right:12px;}.ant-page-header .ant-page-header-heading-sub-title{margin-right:12px;color:rgba(255, 255, 255, 0.45);font-size:14px;line-height:1.5714285714285714;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}.ant-page-header .ant-page-header-heading-extra{margin:4px 0;white-space:nowrap;}.ant-page-header .ant-page-header-heading-extra >*{margin-left:12px;white-space:unset;}.ant-page-header .ant-page-header-heading-extra >*:first-child{margin-left:0;}.ant-page-header .ant-page-header-content{padding-top:12px;}.ant-page-header .ant-page-header-footer{margin-top:20px;}.ant-page-header .ant-page-header-footer .ant-tabs >.ant-tabs-nav{margin:0;}.ant-page-header .ant-page-header-footer .ant-tabs >.ant-tabs-nav::before{border:none;}.ant-page-header .ant-page-header-footer .ant-tabs .ant-tabs-tab{padding-top:8px;padding-bottom:8px;font-size:16px;}.ant-page-header .ant-page-header-compact .ant-page-header-heading{flex-wrap:wrap;}.ant-page-header.ant-page-header-rtl{direction:rtl;}[class^=\\"ant-pagination\\"],[class*=\\" ant-pagination\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-pagination\\"]::before,[class*=\\" ant-pagination\\"]::before,[class^=\\"ant-pagination\\"]::after,[class*=\\" ant-pagination\\"]::after{box-sizing:border-box;}[class^=\\"ant-pagination\\"] [class^=\\"ant-pagination\\"],[class*=\\" ant-pagination\\"] [class^=\\"ant-pagination\\"],[class^=\\"ant-pagination\\"] [class*=\\" ant-pagination\\"],[class*=\\" ant-pagination\\"] [class*=\\" ant-pagination\\"]{box-sizing:border-box;}[class^=\\"ant-pagination\\"] [class^=\\"ant-pagination\\"]::before,[class*=\\" ant-pagination\\"] [class^=\\"ant-pagination\\"]::before,[class^=\\"ant-pagination\\"] [class*=\\" ant-pagination\\"]::before,[class*=\\" ant-pagination\\"] [class*=\\" ant-pagination\\"]::before,[class^=\\"ant-pagination\\"] [class^=\\"ant-pagination\\"]::after,[class*=\\" ant-pagination\\"] [class^=\\"ant-pagination\\"]::after,[class^=\\"ant-pagination\\"] [class*=\\" ant-pagination\\"]::after,[class*=\\" ant-pagination\\"] [class*=\\" ant-pagination\\"]::after{box-sizing:border-box;}.ant-pagination{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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-pagination ul,.ant-pagination ol{margin:0;padding:0;list-style:none;}.ant-pagination::after{display:block;clear:both;height:0;overflow:hidden;visibility:hidden;content:\\"\\";}.ant-pagination .ant-pagination-total-text{display:inline-block;height:32px;margin-inline-end:8px;line-height:30px;vertical-align:middle;}.ant-pagination .ant-pagination-item{display:inline-block;min-width:32px;height:32px;margin-inline-end:8px;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:30px;text-align:center;vertical-align:middle;list-style:none;background-color:transparent;border:1px solid transparent;border-radius:6px;outline:0;cursor:pointer;user-select:none;}.ant-pagination .ant-pagination-item a{display:block;padding:0 6px;color:rgba(255, 255, 255, 0.85);transition:none;}.ant-pagination .ant-pagination-item a:hover{text-decoration:none;}.ant-pagination .ant-pagination-item:not(.ant-pagination-item-active):hover{transition:all 0.2s;background-color:rgba(255, 255, 255, 0.12);}.ant-pagination .ant-pagination-item:not(.ant-pagination-item-active):active{background-color:rgba(255, 255, 255, 0.18);}.ant-pagination .ant-pagination-item:focus-visible{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-pagination .ant-pagination-item-active{font-weight:600;background-color:#141414;border-color:#037003;}.ant-pagination .ant-pagination-item-active a{color:#037003;}.ant-pagination .ant-pagination-item-active:hover{border-color:#198016;}.ant-pagination .ant-pagination-item-active:hover a{color:#198016;}.ant-pagination .ant-pagination-jump-prev,.ant-pagination .ant-pagination-jump-next{outline:0;}.ant-pagination .ant-pagination-jump-prev .ant-pagination-item-container,.ant-pagination .ant-pagination-jump-next .ant-pagination-item-container{position:relative;}.ant-pagination .ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-link-icon,.ant-pagination .ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-link-icon{color:#037003;font-size:12px;opacity:0;transition:all 0.2s;}.ant-pagination .ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-link-icon-svg,.ant-pagination .ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-link-icon-svg{top:0;inset-inline-end:0;bottom:0;inset-inline-start:0;margin:auto;}.ant-pagination .ant-pagination-jump-prev .ant-pagination-item-container .ant-pagination-item-ellipsis,.ant-pagination .ant-pagination-jump-next .ant-pagination-item-container .ant-pagination-item-ellipsis{position:absolute;top:0;inset-inline-end:0;bottom:0;inset-inline-start:0;display:block;margin:auto;color:rgba(255, 255, 255, 0.25);font-family:Arial,Helvetica,sans-serif;letter-spacing:2px;text-align:center;text-indent:0.13em;opacity:1;transition:all 0.2s;}.ant-pagination .ant-pagination-jump-prev:hover .ant-pagination-item-link-icon,.ant-pagination .ant-pagination-jump-next:hover .ant-pagination-item-link-icon{opacity:1;}.ant-pagination .ant-pagination-jump-prev:hover .ant-pagination-item-ellipsis,.ant-pagination .ant-pagination-jump-next:hover .ant-pagination-item-ellipsis{opacity:0;}.ant-pagination .ant-pagination-jump-prev:focus-visible,.ant-pagination .ant-pagination-jump-next:focus-visible{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-pagination .ant-pagination-jump-prev:focus-visible .ant-pagination-item-link-icon,.ant-pagination .ant-pagination-jump-next:focus-visible .ant-pagination-item-link-icon{opacity:1;}.ant-pagination .ant-pagination-jump-prev:focus-visible .ant-pagination-item-ellipsis,.ant-pagination .ant-pagination-jump-next:focus-visible .ant-pagination-item-ellipsis{opacity:0;}.ant-pagination .ant-pagination-prev,.ant-pagination .ant-pagination-jump-prev,.ant-pagination .ant-pagination-jump-next{margin-inline-end:8px;}.ant-pagination .ant-pagination-prev,.ant-pagination .ant-pagination-next,.ant-pagination .ant-pagination-jump-prev,.ant-pagination .ant-pagination-jump-next{display:inline-block;min-width:32px;height:32px;color:rgba(255, 255, 255, 0.85);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:32px;text-align:center;vertical-align:middle;list-style:none;border-radius:6px;cursor:pointer;transition:all 0.2s;}.ant-pagination .ant-pagination-prev,.ant-pagination .ant-pagination-next{font-family:Arial,Helvetica,sans-serif;outline:0;}.ant-pagination .ant-pagination-prev button,.ant-pagination .ant-pagination-next button{color:rgba(255, 255, 255, 0.85);cursor:pointer;user-select:none;}.ant-pagination .ant-pagination-prev .ant-pagination-item-link,.ant-pagination .ant-pagination-next .ant-pagination-item-link{display:block;width:100%;height:100%;padding:0;font-size:12px;text-align:center;background-color:transparent;border:1px solid transparent;border-radius:6px;outline:none;transition:all 0.2s;}.ant-pagination .ant-pagination-prev:focus-visible .ant-pagination-item-link,.ant-pagination .ant-pagination-next:focus-visible .ant-pagination-item-link{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-pagination .ant-pagination-prev:hover .ant-pagination-item-link,.ant-pagination .ant-pagination-next:hover .ant-pagination-item-link{background-color:rgba(255, 255, 255, 0.12);}.ant-pagination .ant-pagination-prev:active .ant-pagination-item-link,.ant-pagination .ant-pagination-next:active .ant-pagination-item-link{background-color:rgba(255, 255, 255, 0.18);}.ant-pagination .ant-pagination-prev.ant-pagination-disabled:hover .ant-pagination-item-link,.ant-pagination .ant-pagination-next.ant-pagination-disabled:hover .ant-pagination-item-link{background-color:transparent;}.ant-pagination .ant-pagination-slash{margin-inline-end:12px;margin-inline-start:4px;}.ant-pagination .ant-pagination-options{display:inline-block;margin-inline-start:16px;vertical-align:middle;}.ant-pagination .ant-pagination-options-size-changer.-select{display:inline-block;width:auto;}.ant-pagination .ant-pagination-options-quick-jumper{display:inline-block;height:32px;margin-inline-start:8px;line-height:32px;vertical-align:top;}.ant-pagination .ant-pagination-options-quick-jumper input{position:relative;display:inline-block;width:50px;min-width:0;padding:4px 11px;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;background-color:#141414;background-image:none;border-width:1px;border-style:solid;border-color:#424242;border-radius:6px;transition:all 0.2s;height:32px;box-sizing:border-box;margin:0;margin-inline-start:8px;margin-inline-end:8px;}.ant-pagination .ant-pagination-options-quick-jumper input::-moz-placeholder{opacity:1;}.ant-pagination .ant-pagination-options-quick-jumper input::placeholder{color:rgba(255, 255, 255, 0.25);user-select:none;}.ant-pagination .ant-pagination-options-quick-jumper input:placeholder-shown{text-overflow:ellipsis;}.ant-pagination .ant-pagination-options-quick-jumper input:hover{border-color:#198016;border-inline-end-width:1px;}.ant-pagination .ant-pagination-options-quick-jumper input:focus,.ant-pagination .ant-pagination-options-quick-jumper input-focused{border-color:#198016;box-shadow:0 0 0 2px rgba(0, 53, 0, 0.15);border-inline-end-width:1px;outline:0;}.ant-pagination .ant-pagination-options-quick-jumper input-disabled,.ant-pagination .ant-pagination-options-quick-jumper input[disabled]{color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);border-color:#424242;box-shadow:none;cursor:not-allowed;opacity:1;}.ant-pagination .ant-pagination-options-quick-jumper input-disabled:hover,.ant-pagination .ant-pagination-options-quick-jumper input[disabled]:hover{border-color:#424242;border-inline-end-width:1px;}.ant-pagination .ant-pagination-options-quick-jumper input-borderless,.ant-pagination .ant-pagination-options-quick-jumper input-borderless:hover,.ant-pagination .ant-pagination-options-quick-jumper input-borderless:focus,.ant-pagination .ant-pagination-options-quick-jumper input-borderless-focused,.ant-pagination .ant-pagination-options-quick-jumper input-borderless-disabled,.ant-pagination .ant-pagination-options-quick-jumper input-borderless[disabled]{background-color:transparent;border:none;box-shadow:none;}textarea.ant-pagination .ant-pagination-options-quick-jumper input{max-width:100%;height:auto;min-height:32px;line-height:1.5714285714285714;vertical-align:bottom;transition:all 0.3s,height 0s;resize:vertical;}.ant-pagination .ant-pagination-options-quick-jumper input-lg{padding:7px 11px;font-size:16px;line-height:1.5;border-radius:8px;}.ant-pagination .ant-pagination-options-quick-jumper input-sm{padding:0px 7px;border-radius:4px;}.ant-pagination .ant-pagination-options-quick-jumper input-rtl{direction:rtl;}.ant-pagination .ant-pagination-options-quick-jumper input-textarea-rtl{direction:rtl;}.ant-pagination.ant-pagination-simple .ant-pagination-prev,.ant-pagination.ant-pagination-simple .ant-pagination-next{height:24px;line-height:24px;vertical-align:top;}.ant-pagination.ant-pagination-simple .ant-pagination-prev .ant-pagination-item-link,.ant-pagination.ant-pagination-simple .ant-pagination-next .ant-pagination-item-link{height:24px;background-color:transparent;border:0;}.ant-pagination.ant-pagination-simple .ant-pagination-prev .ant-pagination-item-link:hover,.ant-pagination.ant-pagination-simple .ant-pagination-next .ant-pagination-item-link:hover{background-color:rgba(255, 255, 255, 0.12);}.ant-pagination.ant-pagination-simple .ant-pagination-prev .ant-pagination-item-link:active,.ant-pagination.ant-pagination-simple .ant-pagination-next .ant-pagination-item-link:active{background-color:rgba(255, 255, 255, 0.18);}.ant-pagination.ant-pagination-simple .ant-pagination-prev .ant-pagination-item-link::after,.ant-pagination.ant-pagination-simple .ant-pagination-next .ant-pagination-item-link::after{height:24px;line-height:24px;}.ant-pagination.ant-pagination-simple .ant-pagination-simple-pager{display:inline-block;height:24px;margin-inline-end:8px;}.ant-pagination.ant-pagination-simple .ant-pagination-simple-pager input{box-sizing:border-box;height:100%;margin-inline-end:8px;padding:0 6px;text-align:center;background-color:#141414;border:1px solid #424242;border-radius:6px;outline:none;transition:border-color 0.2s;color:inherit;}.ant-pagination.ant-pagination-simple .ant-pagination-simple-pager input:hover{border-color:#037003;}.ant-pagination.ant-pagination-simple .ant-pagination-simple-pager input:focus{border-color:#198016;box-shadow:0 0px 0 2px rgba(0, 53, 0, 0.15);}.ant-pagination.ant-pagination-simple .ant-pagination-simple-pager input[disabled]{color:rgba(255, 255, 255, 0.25);background-color:rgba(255, 255, 255, 0.08);border-color:#424242;cursor:not-allowed;}.ant-pagination.ant-pagination-mini .ant-pagination-total-text,.ant-pagination.ant-pagination-mini .ant-pagination-simple-pager{height:24px;line-height:24px;}.ant-pagination.ant-pagination-mini .ant-pagination-item{min-width:24px;height:24px;margin:0;line-height:22px;}.ant-pagination.ant-pagination-mini .ant-pagination-item:not(.ant-pagination-item-active){background-color:transparent;border-color:transparent;}.ant-pagination.ant-pagination-mini .ant-pagination-item:not(.ant-pagination-item-active):hover{background-color:rgba(255, 255, 255, 0.12);}.ant-pagination.ant-pagination-mini .ant-pagination-item:not(.ant-pagination-item-active):active{background-color:rgba(255, 255, 255, 0.18);}.ant-pagination.ant-pagination-mini .ant-pagination-prev,.ant-pagination.ant-pagination-mini .ant-pagination-next{min-width:24px;height:24px;margin:0;line-height:24px;}.ant-pagination.ant-pagination-mini .ant-pagination-prev:hover .ant-pagination-item-link,.ant-pagination.ant-pagination-mini .ant-pagination-next:hover .ant-pagination-item-link{background-color:rgba(255, 255, 255, 0.12);}.ant-pagination.ant-pagination-mini .ant-pagination-prev:active .ant-pagination-item-link,.ant-pagination.ant-pagination-mini .ant-pagination-next:active .ant-pagination-item-link{background-color:rgba(255, 255, 255, 0.18);}.ant-pagination.ant-pagination-mini .ant-pagination-prev.ant-pagination-disabled:hover .ant-pagination-item-link,.ant-pagination.ant-pagination-mini .ant-pagination-next.ant-pagination-disabled:hover .ant-pagination-item-link{background-color:transparent;}.ant-pagination.ant-pagination-mini .ant-pagination-prev .ant-pagination-item-link,.ant-pagination.ant-pagination-mini .ant-pagination-next .ant-pagination-item-link{background-color:transparent;border-color:transparent;}.ant-pagination.ant-pagination-mini .ant-pagination-prev .ant-pagination-item-link::after,.ant-pagination.ant-pagination-mini .ant-pagination-next .ant-pagination-item-link::after{height:24px;line-height:24px;}.ant-pagination.ant-pagination-mini .ant-pagination-jump-prev,.ant-pagination.ant-pagination-mini .ant-pagination-jump-next{height:24px;margin-inline-end:0;line-height:24px;}.ant-pagination.ant-pagination-mini .ant-pagination-options{margin-inline-start:2px;}.ant-pagination.ant-pagination-mini .ant-pagination-options-size-changer{top:0;}.ant-pagination.ant-pagination-mini .ant-pagination-options-quick-jumper{height:24px;line-height:24px;}.ant-pagination.ant-pagination-mini .ant-pagination-options-quick-jumper input{padding:0px 7px;border-radius:4px;width:44px;height:24px;}.ant-pagination .ant-pagination-disabled,.ant-pagination .ant-pagination-disabled:hover{cursor:not-allowed;}.ant-pagination .ant-pagination-disabled .ant-pagination-item-link,.ant-pagination .ant-pagination-disabled:hover .ant-pagination-item-link{color:rgba(255, 255, 255, 0.25);cursor:not-allowed;}.ant-pagination .ant-pagination-disabled:focus-visible{cursor:not-allowed;}.ant-pagination .ant-pagination-disabled:focus-visible .ant-pagination-item-link{color:rgba(255, 255, 255, 0.25);cursor:not-allowed;}.ant-pagination.ant-pagination-disabled{cursor:not-allowed;}.ant-pagination.ant-pagination-disabled.ant-pagination-mini:hover .ant-pagination-item:not(.ant-pagination-item-active),.ant-pagination.ant-pagination-disabled.ant-pagination-mini:active .ant-pagination-item:not(.ant-pagination-item-active),.ant-pagination.ant-pagination-disabled.ant-pagination-mini:hover .ant-pagination-item-link,.ant-pagination.ant-pagination-disabled.ant-pagination-mini:active .ant-pagination-item-link{background-color:transparent;}.ant-pagination.ant-pagination-disabled .ant-pagination-item{cursor:not-allowed;}.ant-pagination.ant-pagination-disabled .ant-pagination-item:hover,.ant-pagination.ant-pagination-disabled .ant-pagination-item:active{background-color:transparent;}.ant-pagination.ant-pagination-disabled .ant-pagination-item a{color:rgba(255, 255, 255, 0.25);background-color:transparent;border:none;cursor:not-allowed;}.ant-pagination.ant-pagination-disabled .ant-pagination-item-active{border-color:#424242;background-color:rgba(255, 255, 255, 0.18);}.ant-pagination.ant-pagination-disabled .ant-pagination-item-active:hover,.ant-pagination.ant-pagination-disabled .ant-pagination-item-active:active{background-color:rgba(255, 255, 255, 0.18);}.ant-pagination.ant-pagination-disabled .ant-pagination-item-active a{color:rgba(255, 255, 255, 0.25);}.ant-pagination.ant-pagination-disabled .ant-pagination-item-link{color:rgba(255, 255, 255, 0.25);cursor:not-allowed;}.ant-pagination.ant-pagination-disabled .ant-pagination-item-link:hover,.ant-pagination.ant-pagination-disabled .ant-pagination-item-link:active{background-color:transparent;}.ant-pagination-simple.ant-pagination.ant-pagination-disabled .ant-pagination-item-link{background-color:transparent;}.ant-pagination-simple.ant-pagination.ant-pagination-disabled .ant-pagination-item-link:hover,.ant-pagination-simple.ant-pagination.ant-pagination-disabled .ant-pagination-item-link:active{background-color:transparent;}.ant-pagination.ant-pagination-disabled .ant-pagination-simple-pager{color:rgba(255, 255, 255, 0.25);}.ant-pagination.ant-pagination-disabled .ant-pagination-jump-prev .ant-pagination-item-link-icon,.ant-pagination.ant-pagination-disabled .ant-pagination-jump-next .ant-pagination-item-link-icon{opacity:0;}.ant-pagination.ant-pagination-disabled .ant-pagination-jump-prev .ant-pagination-item-ellipsis,.ant-pagination.ant-pagination-disabled .ant-pagination-jump-next .ant-pagination-item-ellipsis{opacity:1;}.ant-pagination.ant-pagination-simple .ant-pagination-prev.ant-pagination-disabled .ant-pagination-item-link:hover,.ant-pagination.ant-pagination-simple .ant-pagination-next.ant-pagination-disabled .ant-pagination-item-link:hover,.ant-pagination.ant-pagination-simple .ant-pagination-prev.ant-pagination-disabled .ant-pagination-item-link:active,.ant-pagination.ant-pagination-simple .ant-pagination-next.ant-pagination-disabled .ant-pagination-item-link:active{background-color:transparent;}@media only screen and (max-width: 992px){.ant-pagination .ant-pagination-item-after-jump-prev,.ant-pagination .ant-pagination-item-before-jump-next{display:none;}}@media only screen and (max-width: 576px){.ant-pagination .ant-pagination-options{display:none;}}.ant-pagination-rtl{direction:rtl;}[class^=\\"ant-popconfirm\\"],[class*=\\" ant-popconfirm\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-popconfirm\\"]::before,[class*=\\" ant-popconfirm\\"]::before,[class^=\\"ant-popconfirm\\"]::after,[class*=\\" ant-popconfirm\\"]::after{box-sizing:border-box;}[class^=\\"ant-popconfirm\\"] [class^=\\"ant-popconfirm\\"],[class*=\\" ant-popconfirm\\"] [class^=\\"ant-popconfirm\\"],[class^=\\"ant-popconfirm\\"] [class*=\\" ant-popconfirm\\"],[class*=\\" ant-popconfirm\\"] [class*=\\" ant-popconfirm\\"]{box-sizing:border-box;}[class^=\\"ant-popconfirm\\"] [class^=\\"ant-popconfirm\\"]::before,[class*=\\" ant-popconfirm\\"] [class^=\\"ant-popconfirm\\"]::before,[class^=\\"ant-popconfirm\\"] [class*=\\" ant-popconfirm\\"]::before,[class*=\\" ant-popconfirm\\"] [class*=\\" ant-popconfirm\\"]::before,[class^=\\"ant-popconfirm\\"] [class^=\\"ant-popconfirm\\"]::after,[class*=\\" ant-popconfirm\\"] [class^=\\"ant-popconfirm\\"]::after,[class^=\\"ant-popconfirm\\"] [class*=\\" ant-popconfirm\\"]::after,[class*=\\" ant-popconfirm\\"] [class*=\\" ant-popconfirm\\"]::after{box-sizing:border-box;}.ant-popconfirm{z-index:1060;}.ant-popconfirm .ant-popconfirm-inner-content{color:rgba(255, 255, 255, 0.85);}.ant-popconfirm .ant-popconfirm-message{position:relative;margin-bottom:8px;color:rgba(255, 255, 255, 0.85);font-size:14px;display:flex;flex-wrap:nowrap;align-items:start;}.ant-popconfirm .ant-popconfirm-message >.ant-popconfirm-message-icon .anticon{color:#d89614;font-size:14px;flex:none;line-height:1;padding-top:4px;}.ant-popconfirm .ant-popconfirm-message-title{flex:auto;margin-inline-start:8px;}.ant-popconfirm .ant-popconfirm-message-title-only{font-weight:600;}.ant-popconfirm .ant-popconfirm-description{position:relative;margin-inline-start:22px;margin-bottom:8px;color:rgba(255, 255, 255, 0.85);font-size:14px;}.ant-popconfirm .ant-popconfirm-buttons{text-align:end;}.ant-popconfirm .ant-popconfirm-buttons button{margin-inline-start:8px;}[class^=\\"ant-popover\\"],[class*=\\" ant-popover\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-popover\\"]::before,[class*=\\" ant-popover\\"]::before,[class^=\\"ant-popover\\"]::after,[class*=\\" ant-popover\\"]::after{box-sizing:border-box;}[class^=\\"ant-popover\\"] [class^=\\"ant-popover\\"],[class*=\\" ant-popover\\"] [class^=\\"ant-popover\\"],[class^=\\"ant-popover\\"] [class*=\\" ant-popover\\"],[class*=\\" ant-popover\\"] [class*=\\" ant-popover\\"]{box-sizing:border-box;}[class^=\\"ant-popover\\"] [class^=\\"ant-popover\\"]::before,[class*=\\" ant-popover\\"] [class^=\\"ant-popover\\"]::before,[class^=\\"ant-popover\\"] [class*=\\" ant-popover\\"]::before,[class*=\\" ant-popover\\"] [class*=\\" ant-popover\\"]::before,[class^=\\"ant-popover\\"] [class^=\\"ant-popover\\"]::after,[class*=\\" ant-popover\\"] [class^=\\"ant-popover\\"]::after,[class^=\\"ant-popover\\"] [class*=\\" ant-popover\\"]::after,[class*=\\" ant-popover\\"] [class*=\\" ant-popover\\"]::after{box-sizing:border-box;}.ant-popover{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:absolute;top:0;left:0;z-index:1030;font-weight:normal;white-space:normal;text-align:start;cursor:auto;user-select:text;--antd-arrow-background-color:#1f1f1f;}.ant-popover-rtl{direction:rtl;}.ant-popover-hidden{display:none;}.ant-popover .ant-popover-content{position:relative;}.ant-popover .ant-popover-inner{background-color:#1f1f1f;background-clip:padding-box;border-radius:8px;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);padding:12px;}.ant-popover .ant-popover-title{min-width:177px;margin-bottom:8px;color:rgba(255, 255, 255, 0.85);font-weight:600;}.ant-popover .ant-popover-inner-content{color:rgba(255, 255, 255, 0.85);}.ant-popover .ant-popover-arrow{position:absolute;z-index:1;display:block;pointer-events:none;width:16px;height:16px;overflow:hidden;}.ant-popover .ant-popover-arrow::after{content:\\"\\";position:absolute;width:8.970562748477143px;height:8.970562748477143px;bottom:0;inset-inline:0;margin:auto;border-radius:0 0 2px 0;transform:translateY(50%) rotate(-135deg);box-shadow:3px 3px 7px rgba(0, 0, 0, 0.1);z-index:0;background:transparent;}.ant-popover .ant-popover-arrow::before{position:absolute;bottom:0;inset-inline-start:0;width:16px;height:8px;background:var(--antd-arrow-background-color);clip-path:polygon(1.6568542494923806px 100%, 50% 1.6568542494923806px, 14.34314575050762px 100%, 1.6568542494923806px 100%);clip-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');content:\\"\\";}.ant-popover .ant-popover-arrow:before{background:var(--antd-arrow-background-color);}.ant-popover-placement-top .ant-popover-arrow,.ant-popover-placement-topLeft .ant-popover-arrow,.ant-popover-placement-topRight .ant-popover-arrow{bottom:0;transform:translateY(100%) rotate(180deg);}.ant-popover-placement-top .ant-popover-arrow{left:50%;transform:translateX(-50%) translateY(100%) rotate(180deg);}.ant-popover-placement-topLeft .ant-popover-arrow{left:6px;}.ant-popover-placement-topRight .ant-popover-arrow{right:6px;}.ant-popover-placement-bottom .ant-popover-arrow,.ant-popover-placement-bottomLeft .ant-popover-arrow,.ant-popover-placement-bottomRight .ant-popover-arrow{top:0;transform:translateY(-100%);}.ant-popover-placement-bottom .ant-popover-arrow{left:50%;transform:translateX(-50%) translateY(-100%);}.ant-popover-placement-bottomLeft .ant-popover-arrow{left:6px;}.ant-popover-placement-bottomRight .ant-popover-arrow{right:6px;}.ant-popover-placement-left .ant-popover-arrow,.ant-popover-placement-leftTop .ant-popover-arrow,.ant-popover-placement-leftBottom .ant-popover-arrow{right:0;transform:translateX(100%) rotate(90deg);}.ant-popover-placement-left .ant-popover-arrow{top:50%;transform:translateY(-50%) translateX(100%) rotate(90deg);}.ant-popover-placement-leftTop .ant-popover-arrow{top:6px;}.ant-popover-placement-leftBottom .ant-popover-arrow{bottom:6px;}.ant-popover-placement-right .ant-popover-arrow,.ant-popover-placement-rightTop .ant-popover-arrow,.ant-popover-placement-rightBottom .ant-popover-arrow{left:0;transform:translateX(-100%) rotate(-90deg);}.ant-popover-placement-right .ant-popover-arrow{top:50%;transform:translateY(-50%) translateX(-100%) rotate(-90deg);}.ant-popover-placement-rightTop .ant-popover-arrow{top:6px;}.ant-popover-placement-rightBottom .ant-popover-arrow{bottom:6px;}.ant-popover-placement-topLeft,.ant-popover-placement-top,.ant-popover-placement-topRight{padding-bottom:12px;}.ant-popover-placement-bottomLeft,.ant-popover-placement-bottom,.ant-popover-placement-bottomRight{padding-top:12px;}.ant-popover-placement-leftTop,.ant-popover-placement-left,.ant-popover-placement-leftBottom{padding-right:12px;}.ant-popover-placement-rightTop,.ant-popover-placement-right,.ant-popover-placement-rightBottom{padding-left:12px;}.ant-popover-pure{position:relative;max-width:none;}.ant-popover-pure .ant-popover-content{display:inline-block;}.ant-popover.ant-popover-blue{--antd-arrow-background-color:#1668dc;}.ant-popover.ant-popover-blue .ant-popover-inner{background-color:#1668dc;}.ant-popover.ant-popover-blue .ant-popover-arrow{background:transparent;}.ant-popover.ant-popover-purple{--antd-arrow-background-color:#642ab5;}.ant-popover.ant-popover-purple .ant-popover-inner{background-color:#642ab5;}.ant-popover.ant-popover-purple .ant-popover-arrow{background:transparent;}.ant-popover.ant-popover-cyan{--antd-arrow-background-color:#13a8a8;}.ant-popover.ant-popover-cyan .ant-popover-inner{background-color:#13a8a8;}.ant-popover.ant-popover-cyan .ant-popover-arrow{background:transparent;}.ant-popover.ant-popover-green{--antd-arrow-background-color:#49aa19;}.ant-popover.ant-popover-green .ant-popover-inner{background-color:#49aa19;}.ant-popover.ant-popover-green .ant-popover-arrow{background:transparent;}.ant-popover.ant-popover-magenta{--antd-arrow-background-color:#cb2b83;}.ant-popover.ant-popover-magenta .ant-popover-inner{background-color:#cb2b83;}.ant-popover.ant-popover-magenta .ant-popover-arrow{background:transparent;}.ant-popover.ant-popover-pink{--antd-arrow-background-color:#cb2b83;}.ant-popover.ant-popover-pink .ant-popover-inner{background-color:#cb2b83;}.ant-popover.ant-popover-pink .ant-popover-arrow{background:transparent;}.ant-popover.ant-popover-red{--antd-arrow-background-color:#d32029;}.ant-popover.ant-popover-red .ant-popover-inner{background-color:#d32029;}.ant-popover.ant-popover-red .ant-popover-arrow{background:transparent;}.ant-popover.ant-popover-orange{--antd-arrow-background-color:#d87a16;}.ant-popover.ant-popover-orange .ant-popover-inner{background-color:#d87a16;}.ant-popover.ant-popover-orange .ant-popover-arrow{background:transparent;}.ant-popover.ant-popover-yellow{--antd-arrow-background-color:#d8bd14;}.ant-popover.ant-popover-yellow .ant-popover-inner{background-color:#d8bd14;}.ant-popover.ant-popover-yellow .ant-popover-arrow{background:transparent;}.ant-popover.ant-popover-volcano{--antd-arrow-background-color:#d84a1b;}.ant-popover.ant-popover-volcano .ant-popover-inner{background-color:#d84a1b;}.ant-popover.ant-popover-volcano .ant-popover-arrow{background:transparent;}.ant-popover.ant-popover-geekblue{--antd-arrow-background-color:#2b4acb;}.ant-popover.ant-popover-geekblue .ant-popover-inner{background-color:#2b4acb;}.ant-popover.ant-popover-geekblue .ant-popover-arrow{background:transparent;}.ant-popover.ant-popover-lime{--antd-arrow-background-color:#8bbb11;}.ant-popover.ant-popover-lime .ant-popover-inner{background-color:#8bbb11;}.ant-popover.ant-popover-lime .ant-popover-arrow{background:transparent;}.ant-popover.ant-popover-gold{--antd-arrow-background-color:#d89614;}.ant-popover.ant-popover-gold .ant-popover-inner{background-color:#d89614;}.ant-popover.ant-popover-gold .ant-popover-arrow{background:transparent;}.ant-zoom-big-enter,.ant-zoom-big-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-zoom-big-leave{animation-duration:0.2s;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:cubic-bezier(0.08, 0.82, 0.17, 1);}.ant-zoom-big-enter-prepare,.ant-zoom-big-appear-prepare{transform:none;}.ant-zoom-big-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}[class^=\\"ant-popover\\"],[class*=\\" ant-popover\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-popover\\"]::before,[class*=\\" ant-popover\\"]::before,[class^=\\"ant-popover\\"]::after,[class*=\\" ant-popover\\"]::after{box-sizing:border-box;}[class^=\\"ant-popover\\"] [class^=\\"ant-popover\\"],[class*=\\" ant-popover\\"] [class^=\\"ant-popover\\"],[class^=\\"ant-popover\\"] [class*=\\" ant-popover\\"],[class*=\\" ant-popover\\"] [class*=\\" ant-popover\\"]{box-sizing:border-box;}[class^=\\"ant-popover\\"] [class^=\\"ant-popover\\"]::before,[class*=\\" ant-popover\\"] [class^=\\"ant-popover\\"]::before,[class^=\\"ant-popover\\"] [class*=\\" ant-popover\\"]::before,[class*=\\" ant-popover\\"] [class*=\\" ant-popover\\"]::before,[class^=\\"ant-popover\\"] [class^=\\"ant-popover\\"]::after,[class*=\\" ant-popover\\"] [class^=\\"ant-popover\\"]::after,[class^=\\"ant-popover\\"] [class*=\\" ant-popover\\"]::after,[class*=\\" ant-popover\\"] [class*=\\" ant-popover\\"]::after{box-sizing:border-box;}[class^=\\"ant-progress\\"],[class*=\\" ant-progress\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-progress\\"]::before,[class*=\\" ant-progress\\"]::before,[class^=\\"ant-progress\\"]::after,[class*=\\" ant-progress\\"]::after{box-sizing:border-box;}[class^=\\"ant-progress\\"] [class^=\\"ant-progress\\"],[class*=\\" ant-progress\\"] [class^=\\"ant-progress\\"],[class^=\\"ant-progress\\"] [class*=\\" ant-progress\\"],[class*=\\" ant-progress\\"] [class*=\\" ant-progress\\"]{box-sizing:border-box;}[class^=\\"ant-progress\\"] [class^=\\"ant-progress\\"]::before,[class*=\\" ant-progress\\"] [class^=\\"ant-progress\\"]::before,[class^=\\"ant-progress\\"] [class*=\\" ant-progress\\"]::before,[class*=\\" ant-progress\\"] [class*=\\" ant-progress\\"]::before,[class^=\\"ant-progress\\"] [class^=\\"ant-progress\\"]::after,[class*=\\" ant-progress\\"] [class^=\\"ant-progress\\"]::after,[class^=\\"ant-progress\\"] [class*=\\" ant-progress\\"]::after,[class*=\\" ant-progress\\"] [class*=\\" ant-progress\\"]::after{box-sizing:border-box;}.ant-progress{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';display:inline-block;}.ant-progress-rtl{direction:rtl;}.ant-progress-line{position:relative;width:100%;font-size:14px;margin-inline-end:8px;margin-bottom:8px;}.ant-progress .ant-progress-outer{display:inline-block;width:100%;}.ant-progress.ant-progress-show-info .ant-progress-outer{margin-inline-end:calc(-2em - 8px);padding-inline-end:calc(2em + 8px);}.ant-progress .ant-progress-inner{position:relative;display:inline-block;width:100%;overflow:hidden;vertical-align:middle;background-color:rgba(255, 255, 255, 0.12);border-radius:100px;}.ant-progress .ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#1668dc;}.ant-progress .ant-progress-success-bg,.ant-progress .ant-progress-bg{position:relative;background-color:#1668dc;border-radius:100px;transition:all 0.3s cubic-bezier(0.78, 0.14, 0.15, 0.86);}.ant-progress .ant-progress-success-bg{position:absolute;inset-block-start:0;inset-inline-start:0;background-color:#49aa19;}.ant-progress .ant-progress-text{display:inline-block;width:2em;margin-inline-start:8px;color:rgba(255, 255, 255, 0.85);line-height:1;white-space:nowrap;text-align:start;vertical-align:middle;word-break:normal;}.ant-progress .ant-progress-text .anticon{font-size:14px;}.ant-progress.ant-progress-status-active .ant-progress-bg::before{position:absolute;inset:0;background-color:#141414;border-radius:100px;opacity:0;animation-name:antProgressActive;animation-duration:2.4s;animation-timing-function:cubic-bezier(0.23, 1, 0.32, 1);animation-iteration-count:infinite;content:\\"\\";}.ant-progress.ant-progress-status-exception .ant-progress-bg{background-color:#dc4446;}.ant-progress.ant-progress-status-exception .ant-progress-text{color:#dc4446;}.ant-progress.ant-progress-status-exception .ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#dc4446;}.ant-progress.ant-progress-status-success .ant-progress-bg{background-color:#49aa19;}.ant-progress.ant-progress-status-success .ant-progress-text{color:#49aa19;}.ant-progress.ant-progress-status-success .ant-progress-inner:not(.ant-progress-circle-gradient) .ant-progress-circle-path{stroke:#49aa19;}.ant-progress .ant-progress-circle-trail{stroke:rgba(255, 255, 255, 0.12);}.ant-progress.ant-progress-circle .ant-progress-inner{position:relative;line-height:1;background-color:transparent;}.ant-progress.ant-progress-circle .ant-progress-text{position:absolute;inset-block-start:50%;inset-inline-start:0;width:100%;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);line-height:1;white-space:normal;text-align:center;transform:translateY(-50%);}.ant-progress.ant-progress-circle .ant-progress-text .anticon{font-size:1.1666666666666667em;}.ant-progress-circle.ant-progress-status-exception .ant-progress-text{color:#dc4446;}.ant-progress-circle.ant-progress-status-success .ant-progress-text{color:#49aa19;}.ant-progress-inline-circle{line-height:1;}.ant-progress-inline-circle .ant-progress-inner{vertical-align:bottom;}.ant-progress .ant-progress-steps{display:inline-block;}.ant-progress .ant-progress-steps-outer{display:flex;flex-direction:row;align-items:center;}.ant-progress .ant-progress-steps-item{flex-shrink:0;min-width:2px;margin-inline-end:2px;background-color:rgba(255, 255, 255, 0.12);transition:all 0.3s;}.ant-progress .ant-progress-steps-item-active{background-color:#1668dc;}.ant-progress-small.ant-progress-line,.ant-progress-small.ant-progress-line .ant-progress-text .anticon{font-size:12px;}@keyframes antProgressActive{0%{transform:translateX(-100%) scaleX(0);opacity:0.1;}20%{transform:translateX(-100%) scaleX(0);opacity:0.5;}to{transform:translateX(0) scaleX(1);opacity:0;}}[class^=\\"ant-rate\\"],[class*=\\" ant-rate\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-rate\\"]::before,[class*=\\" ant-rate\\"]::before,[class^=\\"ant-rate\\"]::after,[class*=\\" ant-rate\\"]::after{box-sizing:border-box;}[class^=\\"ant-rate\\"] [class^=\\"ant-rate\\"],[class*=\\" ant-rate\\"] [class^=\\"ant-rate\\"],[class^=\\"ant-rate\\"] [class*=\\" ant-rate\\"],[class*=\\" ant-rate\\"] [class*=\\" ant-rate\\"]{box-sizing:border-box;}[class^=\\"ant-rate\\"] [class^=\\"ant-rate\\"]::before,[class*=\\" ant-rate\\"] [class^=\\"ant-rate\\"]::before,[class^=\\"ant-rate\\"] [class*=\\" ant-rate\\"]::before,[class*=\\" ant-rate\\"] [class*=\\" ant-rate\\"]::before,[class^=\\"ant-rate\\"] [class^=\\"ant-rate\\"]::after,[class*=\\" ant-rate\\"] [class^=\\"ant-rate\\"]::after,[class^=\\"ant-rate\\"] [class*=\\" ant-rate\\"]::after,[class*=\\" ant-rate\\"] [class*=\\" ant-rate\\"]::after{box-sizing:border-box;}.ant-rate{box-sizing:border-box;margin:0;padding:0;color:#d8bd14;font-size:20px;line-height:unset;list-style:none;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';display:inline-block;outline:none;}.ant-rate-disabled.ant-rate .ant-rate-star{cursor:default;}.ant-rate-disabled.ant-rate .ant-rate-star:hover{transform:scale(1);}.ant-rate .ant-rate-star{position:relative;display:inline-block;color:inherit;cursor:pointer;}.ant-rate .ant-rate-star:not(:last-child){margin-inline-end:8px;}.ant-rate .ant-rate-star >div{transition:all 0.2s,outline 0s;}.ant-rate .ant-rate-star >div:hover{transform:scale(1.1);}.ant-rate .ant-rate-star >div:focus{outline:0;}.ant-rate .ant-rate-star >div:focus-visible{outline:1px dashed #d8bd14;transform:scale(1.1);}.ant-rate .ant-rate-star-first,.ant-rate .ant-rate-star-second{color:rgba(255, 255, 255, 0.12);transition:all 0.2s;user-select:none;}.ant-rate .ant-rate-star-first .anticon,.ant-rate .ant-rate-star-second .anticon{vertical-align:middle;}.ant-rate .ant-rate-star-first{position:absolute;top:0;inset-inline-start:0;width:50%;height:100%;overflow:hidden;opacity:0;}.ant-rate .ant-rate-star-half .ant-rate-star-first,.ant-rate .ant-rate-star-half .ant-rate-star-second{opacity:1;}.ant-rate .ant-rate-star-half .ant-rate-star-first,.ant-rate .ant-rate-star-full .ant-rate-star-second{color:inherit;}.ant-rate +.ant-rate-text{display:inline-block;margin-inline-start:8px;font-size:14px;}.ant-rate-rtl.ant-rate{direction:rtl;}[class^=\\"ant-result\\"],[class*=\\" ant-result\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-result\\"]::before,[class*=\\" ant-result\\"]::before,[class^=\\"ant-result\\"]::after,[class*=\\" ant-result\\"]::after{box-sizing:border-box;}[class^=\\"ant-result\\"] [class^=\\"ant-result\\"],[class*=\\" ant-result\\"] [class^=\\"ant-result\\"],[class^=\\"ant-result\\"] [class*=\\" ant-result\\"],[class*=\\" ant-result\\"] [class*=\\" ant-result\\"]{box-sizing:border-box;}[class^=\\"ant-result\\"] [class^=\\"ant-result\\"]::before,[class*=\\" ant-result\\"] [class^=\\"ant-result\\"]::before,[class^=\\"ant-result\\"] [class*=\\" ant-result\\"]::before,[class*=\\" ant-result\\"] [class*=\\" ant-result\\"]::before,[class^=\\"ant-result\\"] [class^=\\"ant-result\\"]::after,[class*=\\" ant-result\\"] [class^=\\"ant-result\\"]::after,[class^=\\"ant-result\\"] [class*=\\" ant-result\\"]::after,[class*=\\" ant-result\\"] [class*=\\" ant-result\\"]::after{box-sizing:border-box;}.ant-result{padding:48px 32px;}.ant-result-rtl{direction:rtl;}.ant-result .ant-result-image{width:250px;height:295px;margin:auto;}.ant-result .ant-result-icon{margin-bottom:24px;text-align:center;}.ant-result .ant-result-icon>.anticon{font-size:72px;}.ant-result .ant-result-title{color:rgba(255, 255, 255, 0.85);font-size:24px;line-height:1.3333333333333333;margin-block:8px;text-align:center;}.ant-result .ant-result-subtitle{color:rgba(255, 255, 255, 0.45);font-size:14px;line-height:1.5714285714285714;text-align:center;}.ant-result .ant-result-content{margin-top:24px;padding:24px 40px;background-color:rgba(255, 255, 255, 0.04);}.ant-result .ant-result-extra{margin:24px 0 0 0;text-align:center;}.ant-result .ant-result-extra>*{margin-inline-end:8px;}.ant-result .ant-result-extra>*:last-child{margin-inline-end:0;}.ant-result-success .ant-result-icon>.anticon{color:#49aa19;}.ant-result-error .ant-result-icon>.anticon{color:#dc4446;}.ant-result-info .ant-result-icon>.anticon{color:#1668dc;}.ant-result-warning .ant-result-icon>.anticon{color:#d89614;}[class^=\\"ant-slider\\"],[class*=\\" ant-slider\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-slider\\"]::before,[class*=\\" ant-slider\\"]::before,[class^=\\"ant-slider\\"]::after,[class*=\\" ant-slider\\"]::after{box-sizing:border-box;}[class^=\\"ant-slider\\"] [class^=\\"ant-slider\\"],[class*=\\" ant-slider\\"] [class^=\\"ant-slider\\"],[class^=\\"ant-slider\\"] [class*=\\" ant-slider\\"],[class*=\\" ant-slider\\"] [class*=\\" ant-slider\\"]{box-sizing:border-box;}[class^=\\"ant-slider\\"] [class^=\\"ant-slider\\"]::before,[class*=\\" ant-slider\\"] [class^=\\"ant-slider\\"]::before,[class^=\\"ant-slider\\"] [class*=\\" ant-slider\\"]::before,[class*=\\" ant-slider\\"] [class*=\\" ant-slider\\"]::before,[class^=\\"ant-slider\\"] [class^=\\"ant-slider\\"]::after,[class*=\\" ant-slider\\"] [class^=\\"ant-slider\\"]::after,[class^=\\"ant-slider\\"] [class*=\\" ant-slider\\"]::after,[class*=\\" ant-slider\\"] [class*=\\" ant-slider\\"]::after{box-sizing:border-box;}.ant-slider{box-sizing:border-box;margin:11px 5px;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:relative;height:10px;cursor:pointer;touch-action:none;}.ant-slider-vertical{margin:5px 11px;}.ant-slider .ant-slider-rail{position:absolute;background-color:rgba(255, 255, 255, 0.08);border-radius:2px;transition:background-color 0.2s;}.ant-slider .ant-slider-track{position:absolute;background-color:#0e340e;border-radius:2px;transition:background-color 0.2s;}.ant-slider:hover .ant-slider-rail{background-color:rgba(255, 255, 255, 0.12);}.ant-slider:hover .ant-slider-track{background-color:#0b450b;}.ant-slider:hover .ant-slider-dot{border-color:rgba(255, 255, 255, 0.18);}.ant-slider:hover .ant-slider-handle::after{box-shadow:0 0 0 2px #0b450b;}.ant-slider:hover .ant-slider-dot-active{border-color:#037003;}.ant-slider .ant-slider-handle{position:absolute;width:10px;height:10px;outline:none;}.ant-slider .ant-slider-handle .ant-slider-dragging{z-index:1;}.ant-slider .ant-slider-handle::before{content:\\"\\";position:absolute;inset-inline-start:-2px;inset-block-start:-2px;width:14px;height:14px;background-color:transparent;}.ant-slider .ant-slider-handle::after{content:\\"\\";position:absolute;inset-block-start:0;inset-inline-start:0;width:10px;height:10px;background-color:#1f1f1f;box-shadow:0 0 0 2px #0e340e;border-radius:50%;cursor:pointer;transition:inset-inline-start 0.2s,inset-block-start 0.2s,width 0.2s,height 0.2s,box-shadow 0.2s;}.ant-slider .ant-slider-handle:hover::before,.ant-slider .ant-slider-handle:active::before,.ant-slider .ant-slider-handle:focus::before{inset-inline-start:-5px;inset-block-start:-5px;width:20px;height:20px;}.ant-slider .ant-slider-handle:hover::after,.ant-slider .ant-slider-handle:active::after,.ant-slider .ant-slider-handle:focus::after{box-shadow:0 0 0 4px #037003;width:12px;height:12px;inset-inline-start:-1px;inset-block-start:-1px;}.ant-slider .ant-slider-mark{position:absolute;font-size:14px;}.ant-slider .ant-slider-mark-text{position:absolute;display:inline-block;color:rgba(255, 255, 255, 0.45);text-align:center;word-break:keep-all;cursor:pointer;user-select:none;}.ant-slider .ant-slider-mark-text-active{color:rgba(255, 255, 255, 0.85);}.ant-slider .ant-slider-step{position:absolute;background:transparent;pointer-events:none;}.ant-slider .ant-slider-dot{position:absolute;width:8px;height:8px;background-color:#1f1f1f;border:2px solid #303030;border-radius:50%;cursor:pointer;transition:border-color 0.3s;}.ant-slider .ant-slider-dot-active{border-color:#0e340e;}.ant-slider.ant-slider-disabled{cursor:not-allowed;}.ant-slider.ant-slider-disabled .ant-slider-rail{background-color:rgba(255, 255, 255, 0.12)!important;}.ant-slider.ant-slider-disabled .ant-slider-track{background-color:rgba(255, 255, 255, 0.25)!important;}.ant-slider.ant-slider-disabled .ant-slider-dot{background-color:#1f1f1f;border-color:rgba(255, 255, 255, 0.25);box-shadow:none;cursor:not-allowed;}.ant-slider.ant-slider-disabled .ant-slider-handle::after{background-color:#1f1f1f;cursor:not-allowed;width:10px;height:10px;box-shadow:0 0 0 2px #4f4f4f;inset-inline-start:0;inset-block-start:0;}.ant-slider.ant-slider-disabled .ant-slider-mark-text,.ant-slider.ant-slider-disabled .ant-slider-dot{cursor:not-allowed!important;}.ant-slider-horizontal{padding-block:4px;height:12px;}.ant-slider-horizontal .ant-slider-rail{width:100%;height:4px;}.ant-slider-horizontal .ant-slider-track{height:4px;}.ant-slider-horizontal .ant-slider-handle{inset-block-start:1px;}.ant-slider-horizontal .ant-slider-mark{inset-inline-start:0;top:10px;width:100%;}.ant-slider-horizontal .ant-slider-step{inset-inline-start:0;top:4px;width:100%;height:4px;}.ant-slider-horizontal .ant-slider-dot{position:absolute;inset-block-start:-2px;}.ant-slider-horizontal.ant-slider-with-marks{margin-bottom:30px;}.ant-slider-vertical{padding-inline:4px;width:12px;height:100%;}.ant-slider-vertical .ant-slider-rail{height:100%;width:4px;}.ant-slider-vertical .ant-slider-track{width:4px;}.ant-slider-vertical .ant-slider-handle{inset-inline-start:1px;}.ant-slider-vertical .ant-slider-mark{inset-inline-start:10px;top:0;height:100%;}.ant-slider-vertical .ant-slider-step{inset-inline-start:4px;top:0;height:100%;width:4px;}.ant-slider-vertical .ant-slider-dot{position:absolute;inset-inline-start:-2px;}[class^=\\"ant-space\\"],[class*=\\" ant-space\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-space\\"]::before,[class*=\\" ant-space\\"]::before,[class^=\\"ant-space\\"]::after,[class*=\\" ant-space\\"]::after{box-sizing:border-box;}[class^=\\"ant-space\\"] [class^=\\"ant-space\\"],[class*=\\" ant-space\\"] [class^=\\"ant-space\\"],[class^=\\"ant-space\\"] [class*=\\" ant-space\\"],[class*=\\" ant-space\\"] [class*=\\" ant-space\\"]{box-sizing:border-box;}[class^=\\"ant-space\\"] [class^=\\"ant-space\\"]::before,[class*=\\" ant-space\\"] [class^=\\"ant-space\\"]::before,[class^=\\"ant-space\\"] [class*=\\" ant-space\\"]::before,[class*=\\" ant-space\\"] [class*=\\" ant-space\\"]::before,[class^=\\"ant-space\\"] [class^=\\"ant-space\\"]::after,[class*=\\" ant-space\\"] [class^=\\"ant-space\\"]::after,[class^=\\"ant-space\\"] [class*=\\" ant-space\\"]::after,[class*=\\" ant-space\\"] [class*=\\" ant-space\\"]::after{box-sizing:border-box;}.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-space-item:empty{display:none;}.ant-space{display:inline-flex;}.ant-space-block{display:flex;width:100%;}.ant-space-vertical{flex-direction:column;}[class^=\\"ant-space-compact\\"],[class*=\\" ant-space-compact\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-space-compact\\"]::before,[class*=\\" ant-space-compact\\"]::before,[class^=\\"ant-space-compact\\"]::after,[class*=\\" ant-space-compact\\"]::after{box-sizing:border-box;}[class^=\\"ant-space-compact\\"] [class^=\\"ant-space-compact\\"],[class*=\\" ant-space-compact\\"] [class^=\\"ant-space-compact\\"],[class^=\\"ant-space-compact\\"] [class*=\\" ant-space-compact\\"],[class*=\\" ant-space-compact\\"] [class*=\\" ant-space-compact\\"]{box-sizing:border-box;}[class^=\\"ant-space-compact\\"] [class^=\\"ant-space-compact\\"]::before,[class*=\\" ant-space-compact\\"] [class^=\\"ant-space-compact\\"]::before,[class^=\\"ant-space-compact\\"] [class*=\\" ant-space-compact\\"]::before,[class*=\\" ant-space-compact\\"] [class*=\\" ant-space-compact\\"]::before,[class^=\\"ant-space-compact\\"] [class^=\\"ant-space-compact\\"]::after,[class*=\\" ant-space-compact\\"] [class^=\\"ant-space-compact\\"]::after,[class^=\\"ant-space-compact\\"] [class*=\\" ant-space-compact\\"]::after,[class*=\\" ant-space-compact\\"] [class*=\\" ant-space-compact\\"]::after{box-sizing:border-box;}.ant-space-compact{display:inline-flex;}.ant-space-compact-rtl{direction:rtl;}.ant-space-compact-vertical{flex-direction:column;}.ant-space-compact-align{flex-direction:column;}.ant-space-compact-align-center{align-items:center;}.ant-space-compact-align-start{align-items:flex-start;}.ant-space-compact-align-end{align-items:flex-end;}.ant-space-compact-align-baseline{align-items:baseline;}.ant-space-compact .ant-space-compact-space-item:empty{display:none;}.ant-space-compact{display:inline-flex;}.ant-space-compact-block{display:flex;width:100%;}.ant-space-compact-vertical{flex-direction:column;}[class^=\\"ant-steps\\"],[class*=\\" ant-steps\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-steps\\"]::before,[class*=\\" ant-steps\\"]::before,[class^=\\"ant-steps\\"]::after,[class*=\\" ant-steps\\"]::after{box-sizing:border-box;}[class^=\\"ant-steps\\"] [class^=\\"ant-steps\\"],[class*=\\" ant-steps\\"] [class^=\\"ant-steps\\"],[class^=\\"ant-steps\\"] [class*=\\" ant-steps\\"],[class*=\\" ant-steps\\"] [class*=\\" ant-steps\\"]{box-sizing:border-box;}[class^=\\"ant-steps\\"] [class^=\\"ant-steps\\"]::before,[class*=\\" ant-steps\\"] [class^=\\"ant-steps\\"]::before,[class^=\\"ant-steps\\"] [class*=\\" ant-steps\\"]::before,[class*=\\" ant-steps\\"] [class*=\\" ant-steps\\"]::before,[class^=\\"ant-steps\\"] [class^=\\"ant-steps\\"]::after,[class*=\\" ant-steps\\"] [class^=\\"ant-steps\\"]::after,[class^=\\"ant-steps\\"] [class*=\\" ant-steps\\"]::after,[class*=\\" ant-steps\\"] [class*=\\" ant-steps\\"]::after{box-sizing:border-box;}.ant-steps{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:0;line-height:1.5714285714285714;list-style:none;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';display:flex;width:100%;text-align:initial;}.ant-steps .ant-steps-item{position:relative;display:inline-block;flex:1;overflow:hidden;vertical-align:top;}.ant-steps .ant-steps-item:last-child{flex:none;}.ant-steps .ant-steps-item:last-child >.ant-steps-item-container>.ant-steps-item-tail,.ant-steps .ant-steps-item:last-child >.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after{display:none;}.ant-steps .ant-steps-item-container{outline:none;}.ant-steps .ant-steps-item-icon,.ant-steps .ant-steps-item-content{display:inline-block;vertical-align:top;}.ant-steps .ant-steps-item-icon{width:32px;height:32px;margin-top:0;margin-bottom:0;margin-inline-start:0;margin-inline-end:8px;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:32px;text-align:center;border-radius:32px;border:1px solid transparent;transition:background-color 0.3s,border-color 0.3s;}.ant-steps .ant-steps-item-icon .ant-steps-icon{position:relative;top:-0.5px;color:#037003;line-height:1;}.ant-steps .ant-steps-item-tail{position:absolute;top:12px;inset-inline-start:0;width:100%;}.ant-steps .ant-steps-item-tail::after{display:inline-block;width:100%;height:1px;background:rgba(253, 253, 253, 0.12);border-radius:1px;transition:background 0.3s;content:\\"\\";}.ant-steps .ant-steps-item-title{position:relative;display:inline-block;padding-inline-end:16px;color:rgba(255, 255, 255, 0.85);font-size:16px;line-height:32px;}.ant-steps .ant-steps-item-title::after{position:absolute;top:16px;inset-inline-start:100%;display:block;width:9999px;height:1px;background:rgba(253, 253, 253, 0.12);content:\\"\\";}.ant-steps .ant-steps-item-subtitle{display:inline;margin-inline-start:8px;color:rgba(255, 255, 255, 0.45);font-weight:normal;font-size:14px;}.ant-steps .ant-steps-item-description{color:rgba(255, 255, 255, 0.45);font-size:14px;}.ant-steps .ant-steps-item-wait .ant-steps-item-icon{background-color:rgba(255, 255, 255, 0.12);border-color:transparent;}.ant-steps .ant-steps-item-wait .ant-steps-item-icon >.ant-steps-icon{color:rgba(255, 255, 255, 0.65);}.ant-steps .ant-steps-item-wait .ant-steps-item-icon >.ant-steps-icon .ant-steps-icon-dot{background:rgba(255, 255, 255, 0.25);}.ant-steps .ant-steps-item-wait.ant-steps-item-custom .ant-steps-item-icon >.ant-steps-icon{color:rgba(255, 255, 255, 0.25);}.ant-steps .ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:rgba(255, 255, 255, 0.45);}.ant-steps .ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after{background-color:rgba(253, 253, 253, 0.12);}.ant-steps .ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description{color:rgba(255, 255, 255, 0.45);}.ant-steps .ant-steps-item-wait>.ant-steps-item-container>.ant-steps-item-tail::after{background-color:rgba(253, 253, 253, 0.12);}.ant-steps .ant-steps-item-process .ant-steps-item-icon{background-color:#037003;border-color:#037003;}.ant-steps .ant-steps-item-process .ant-steps-item-icon >.ant-steps-icon{color:#fff;}.ant-steps .ant-steps-item-process .ant-steps-item-icon >.ant-steps-icon .ant-steps-icon-dot{background:#037003;}.ant-steps .ant-steps-item-process.ant-steps-item-custom .ant-steps-item-icon >.ant-steps-icon{color:#037003;}.ant-steps .ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:rgba(255, 255, 255, 0.85);}.ant-steps .ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after{background-color:rgba(253, 253, 253, 0.12);}.ant-steps .ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description{color:rgba(255, 255, 255, 0.85);}.ant-steps .ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-tail::after{background-color:rgba(253, 253, 253, 0.12);}.ant-steps .ant-steps-item-process>.ant-steps-item-container>.ant-steps-item-title{font-weight:600;}.ant-steps .ant-steps-item-finish .ant-steps-item-icon{background-color:#111911;border-color:#111911;}.ant-steps .ant-steps-item-finish .ant-steps-item-icon >.ant-steps-icon{color:#037003;}.ant-steps .ant-steps-item-finish .ant-steps-item-icon >.ant-steps-icon .ant-steps-icon-dot{background:#037003;}.ant-steps .ant-steps-item-finish.ant-steps-item-custom .ant-steps-item-icon >.ant-steps-icon{color:#037003;}.ant-steps .ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:rgba(255, 255, 255, 0.85);}.ant-steps .ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after{background-color:#037003;}.ant-steps .ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description{color:rgba(255, 255, 255, 0.45);}.ant-steps .ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-tail::after{background-color:#037003;}.ant-steps .ant-steps-item-error .ant-steps-item-icon{background-color:#dc4446;border-color:#dc4446;}.ant-steps .ant-steps-item-error .ant-steps-item-icon >.ant-steps-icon{color:#fff;}.ant-steps .ant-steps-item-error .ant-steps-item-icon >.ant-steps-icon .ant-steps-icon-dot{background:#dc4446;}.ant-steps .ant-steps-item-error.ant-steps-item-custom .ant-steps-item-icon >.ant-steps-icon{color:#dc4446;}.ant-steps .ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title{color:#dc4446;}.ant-steps .ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after{background-color:rgba(253, 253, 253, 0.12);}.ant-steps .ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-description{color:#dc4446;}.ant-steps .ant-steps-item-error>.ant-steps-item-container>.ant-steps-item-tail::after{background-color:rgba(253, 253, 253, 0.12);}.ant-steps .ant-steps-item.ant-steps-next-error>.ant-steps-item-title::after{background:#dc4446;}.ant-steps .ant-steps-item-disabled{cursor:not-allowed;}.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role='button']{cursor:pointer;}.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role='button'] .ant-steps-item-title,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role='button'] .ant-steps-item-subtitle,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role='button'] .ant-steps-item-description,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role='button'] .ant-steps-item-icon .ant-steps-icon{transition:color 0.3s;}.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role='button']:hover .ant-steps-item-title,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role='button']:hover .ant-steps-item-subtitle,.ant-steps .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role='button']:hover .ant-steps-item-description{color:#037003;}.ant-steps .ant-steps-item:not(.ant-steps-item-active):not(.ant-steps-item-process)>.ant-steps-item-container[role='button']:hover .ant-steps-item-icon{border-color:#037003;}.ant-steps .ant-steps-item:not(.ant-steps-item-active):not(.ant-steps-item-process)>.ant-steps-item-container[role='button']:hover .ant-steps-item-icon .ant-steps-icon{color:#037003;}.ant-steps.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-inline-start:16px;white-space:nowrap;}.ant-steps.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-inline-start:0;}.ant-steps.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:last-child .ant-steps-item-title{padding-inline-end:0;}.ant-steps.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item-tail{display:none;}.ant-steps.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item-description{max-width:140px;white-space:normal;}.ant-steps .ant-steps-item-custom >.ant-steps-item-container>.ant-steps-item-icon{height:auto;background:none;border:0;}.ant-steps .ant-steps-item-custom >.ant-steps-item-container>.ant-steps-item-icon >.ant-steps-icon{top:0;width:32px;height:32px;font-size:20px;line-height:32px;}.ant-steps:not(.ant-steps-vertical) .ant-steps-item-custom .ant-steps-item-icon{width:auto;background:none;}.ant-steps.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item{padding-inline-start:12px;}.ant-steps.ant-steps-small.ant-steps-horizontal:not(.ant-steps-label-vertical) .ant-steps-item:first-child{padding-inline-start:0;}.ant-steps.ant-steps-small .ant-steps-item-icon{width:24px;height:24px;margin-top:0;margin-bottom:0;margin-inline:0 8px;font-size:12px;line-height:24px;text-align:center;border-radius:24px;}.ant-steps.ant-steps-small .ant-steps-item-title{padding-inline-end:12px;font-size:14px;line-height:24px;}.ant-steps.ant-steps-small .ant-steps-item-title::after{top:12px;}.ant-steps.ant-steps-small .ant-steps-item-description{color:rgba(255, 255, 255, 0.45);font-size:14px;}.ant-steps.ant-steps-small .ant-steps-item-tail{top:8px;}.ant-steps.ant-steps-small .ant-steps-item-custom .ant-steps-item-icon{width:inherit;height:inherit;line-height:inherit;background:none;border:0;border-radius:0;}.ant-steps.ant-steps-small .ant-steps-item-custom .ant-steps-item-icon >.ant-steps-icon{font-size:24px;line-height:24px;transform:none;}.ant-steps.ant-steps-vertical{display:flex;flex-direction:column;}.ant-steps.ant-steps-vertical >.ant-steps-item{display:block;flex:1 0 auto;padding-inline-start:0;overflow:visible;}.ant-steps.ant-steps-vertical >.ant-steps-item .ant-steps-item-icon{float:left;margin-inline-end:16px;}.ant-steps.ant-steps-vertical >.ant-steps-item .ant-steps-item-content{display:block;min-height:48px;overflow:hidden;}.ant-steps.ant-steps-vertical >.ant-steps-item .ant-steps-item-title{line-height:32px;}.ant-steps.ant-steps-vertical >.ant-steps-item .ant-steps-item-description{padding-bottom:12px;}.ant-steps.ant-steps-vertical >.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{position:absolute;top:0;inset-inline-start:15px;width:1px;height:100%;padding:38px 0 6px;}.ant-steps.ant-steps-vertical >.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail::after{width:1px;height:100%;}.ant-steps.ant-steps-vertical >.ant-steps-item:not(:last-child)>.ant-steps-item-container>.ant-steps-item-tail{display:block;}.ant-steps.ant-steps-vertical >.ant-steps-item>.ant-steps-item-container>.ant-steps-item-content>.ant-steps-item-title::after{display:none;}.ant-steps.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-tail{position:absolute;top:0;inset-inline-start:11px;padding:30px 0 6px;}.ant-steps.ant-steps-vertical.ant-steps-small .ant-steps-item-container .ant-steps-item-title{line-height:24px;}.ant-steps.ant-steps-label-vertical .ant-steps-item{overflow:visible;}.ant-steps.ant-steps-label-vertical .ant-steps-item-tail{margin-inline-start:56px;padding:4px 24px;}.ant-steps.ant-steps-label-vertical .ant-steps-item-content{display:block;width:112px;margin-top:12px;text-align:center;}.ant-steps.ant-steps-label-vertical .ant-steps-item-icon{display:inline-block;margin-inline-start:40px;}.ant-steps.ant-steps-label-vertical .ant-steps-item-title{padding-inline-end:0;padding-inline-start:0;}.ant-steps.ant-steps-label-vertical .ant-steps-item-title::after{display:none;}.ant-steps.ant-steps-label-vertical .ant-steps-item-subtitle{display:block;margin-bottom:4px;margin-inline-start:0;line-height:1.5714285714285714;}.ant-steps.ant-steps-label-vertical.ant-steps-small:not(.ant-steps-dot) .ant-steps-item-icon{margin-inline-start:44px;}.ant-steps.ant-steps-dot .ant-steps-item-title,.ant-steps.ant-steps-dot.ant-steps-small .ant-steps-item-title{line-height:1.5714285714285714;}.ant-steps.ant-steps-dot .ant-steps-item-tail,.ant-steps.ant-steps-dot.ant-steps-small .ant-steps-item-tail{top:2px;width:100%;margin-top:0;margin-bottom:0;margin-inline:70px 0;padding:0;}.ant-steps.ant-steps-dot .ant-steps-item-tail::after,.ant-steps.ant-steps-dot.ant-steps-small .ant-steps-item-tail::after{width:calc(100% - 24px);height:3px;margin-inline-start:12px;}.ant-steps.ant-steps-dot .ant-steps-item-icon,.ant-steps.ant-steps-dot.ant-steps-small .ant-steps-item-icon{width:8px;height:8px;margin-inline-start:66px;padding-inline-end:0;line-height:8px;background:transparent;border:0;}.ant-steps.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot,.ant-steps.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot{position:relative;float:left;width:100%;height:100%;border-radius:100px;transition:all 0.3s;}.ant-steps.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot::after,.ant-steps.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot::after{position:absolute;top:-12px;inset-inline-start:-26px;width:60px;height:32px;background:transparent;content:\\"\\";}.ant-steps.ant-steps-dot .ant-steps-item-content,.ant-steps.ant-steps-dot.ant-steps-small .ant-steps-item-content{width:140px;}.ant-steps.ant-steps-dot .ant-steps-item-process .ant-steps-item-icon,.ant-steps.ant-steps-dot.ant-steps-small .ant-steps-item-process .ant-steps-item-icon{position:relative;top:-1px;width:10px;height:10px;line-height:10px;background:none;margin-inline-start:65px;}.ant-steps.ant-steps-dot .ant-steps-item-process .ant-steps-icon:first-child .ant-steps-icon-dot,.ant-steps.ant-steps-dot.ant-steps-small .ant-steps-item-process .ant-steps-icon:first-child .ant-steps-icon-dot{inset-inline-start:0;}.ant-steps.ant-steps-vertical.ant-steps-dot .ant-steps-item-icon{margin-top:12px;margin-inline-start:0;background:none;}.ant-steps.ant-steps-vertical.ant-steps-dot .ant-steps-item-process .ant-steps-item-icon{margin-top:11px;top:0;inset-inline-start:-1px;margin-inline-start:0;}.ant-steps.ant-steps-vertical.ant-steps-dot .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{top:12px;inset-inline-start:0;margin:0;padding:16px 0 8px;}.ant-steps.ant-steps-vertical.ant-steps-dot .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail::after{margin-inline-start:3.5px;}.ant-steps.ant-steps-vertical.ant-steps-dot.ant-steps-small .ant-steps-item-icon{margin-top:8px;}.ant-steps.ant-steps-vertical.ant-steps-dot.ant-steps-small .ant-steps-item-process .ant-steps-item-icon{margin-top:7px;}.ant-steps.ant-steps-vertical.ant-steps-dot.ant-steps-small .ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{top:8px;}.ant-steps.ant-steps-vertical.ant-steps-dot .ant-steps-item:first-child .ant-steps-icon-dot{inset-inline-start:0;}.ant-steps.ant-steps-vertical.ant-steps-dot .ant-steps-item-content{width:inherit;}.ant-steps.ant-steps-navigation{padding-top:12px;}.ant-steps.ant-steps-navigation.ant-steps-small .ant-steps-item-container{margin-inline-start:-12px;}.ant-steps.ant-steps-navigation .ant-steps-item{overflow:visible;text-align:center;}.ant-steps.ant-steps-navigation .ant-steps-item-container{display:inline-block;height:100%;margin-inline-start:-16px;padding-bottom:12px;text-align:start;transition:opacity 0.3s;}.ant-steps.ant-steps-navigation .ant-steps-item-container .ant-steps-item-content{max-width:auto;}.ant-steps.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title{max-width:100%;padding-inline-end:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}.ant-steps.ant-steps-navigation .ant-steps-item-container .ant-steps-item-title::after{display:none;}.ant-steps.ant-steps-navigation .ant-steps-item:not(.ant-steps-item-active) .ant-steps-item-container[role='button']{cursor:pointer;}.ant-steps.ant-steps-navigation .ant-steps-item:not(.ant-steps-item-active) .ant-steps-item-container[role='button']:hover{opacity:0.85;}.ant-steps.ant-steps-navigation .ant-steps-item:last-child{flex:1;}.ant-steps.ant-steps-navigation .ant-steps-item:last-child::after{display:none;}.ant-steps.ant-steps-navigation .ant-steps-item::after{position:absolute;top:calc(50% - 6px);inset-inline-start:100%;display:inline-block;width:12px;height:12px;border-top:1px solid rgba(255, 255, 255, 0.25);border-bottom:none;border-inline-start:none;border-inline-end:1px solid rgba(255, 255, 255, 0.25);transform:translateY(-50%) translateX(-50%) rotate(45deg);content:\\"\\";}.ant-steps.ant-steps-navigation .ant-steps-item::before{position:absolute;bottom:0;inset-inline-start:50%;display:inline-block;width:0;height:2px;background-color:#037003;transition:width 0.3s,inset-inline-start 0.3s;transition-timing-function:ease-out;content:\\"\\";}.ant-steps.ant-steps-navigation .ant-steps-item.ant-steps-item-active::before{inset-inline-start:0;width:100%;}.ant-steps.ant-steps-navigation.ant-steps-vertical >.ant-steps-item{margin-inline-end:0;}.ant-steps.ant-steps-navigation.ant-steps-vertical >.ant-steps-item::before{display:none;}.ant-steps.ant-steps-navigation.ant-steps-vertical >.ant-steps-item.ant-steps-item-active::before{top:0;inset-inline-end:0;inset-inline-start:unset;display:block;width:3px;height:calc(100% - 24px);}.ant-steps.ant-steps-navigation.ant-steps-vertical >.ant-steps-item::after{position:relative;inset-inline-start:50%;display:block;width:8px;height:8px;margin-bottom:8px;text-align:center;transform:translateY(-50%) translateX(-50%) rotate(135deg);}.ant-steps.ant-steps-navigation.ant-steps-vertical >.ant-steps-item >.ant-steps-item-container>.ant-steps-item-tail{visibility:hidden;}.ant-steps.ant-steps-navigation.ant-steps-horizontal >.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{visibility:hidden;}.ant-steps.ant-steps-rtl{direction:rtl;}.ant-steps.ant-steps-rtl .ant-steps-item-subtitle{float:left;}.ant-steps.ant-steps-rtl.ant-steps-navigation .ant-steps-item::after{transform:rotate(-45deg);}.ant-steps.ant-steps-rtl.ant-steps-vertical >.ant-steps-item::after{transform:rotate(225deg);}.ant-steps.ant-steps-rtl.ant-steps-vertical >.ant-steps-item .ant-steps-item-icon{float:right;}.ant-steps.ant-steps-rtl.ant-steps-dot .ant-steps-item-icon .ant-steps-icon-dot,.ant-steps.ant-steps-rtl.ant-steps-dot.ant-steps-small .ant-steps-item-icon .ant-steps-icon-dot{float:right;}.ant-steps.ant-steps-with-progress .ant-steps-item{padding-top:4px;}.ant-steps.ant-steps-with-progress .ant-steps-item-process .ant-steps-item-container .ant-steps-item-icon .ant-steps-icon{color:#fff;}.ant-steps.ant-steps-with-progress.ant-steps-vertical>.ant-steps-item{padding-inline-start:4px;}.ant-steps.ant-steps-with-progress.ant-steps-vertical>.ant-steps-item >.ant-steps-item-container>.ant-steps-item-tail{top:4px;inset-inline-start:19px;}.ant-steps.ant-steps-with-progress.ant-steps-horizontal .ant-steps-item:first-child,.ant-steps.ant-steps-with-progress.ant-steps-small.ant-steps-horizontal .ant-steps-item:first-child{padding-bottom:4px;padding-inline-start:4px;}.ant-steps.ant-steps-with-progress.ant-steps-small.ant-steps-vertical>.ant-steps-item>.ant-steps-item-container>.ant-steps-item-tail{inset-inline-start:15px;}.ant-steps.ant-steps-with-progress.ant-steps-label-vertical .ant-steps-item .ant-steps-item-tail{top:14px;}.ant-steps.ant-steps-with-progress .ant-steps-item-icon{position:relative;}.ant-steps.ant-steps-with-progress .ant-steps-item-icon .ant-progress{position:absolute;inset-block-start:-5px;inset-inline-start:-5px;}.ant-steps.ant-steps-inline{width:auto;display:inline-flex;}.ant-steps.ant-steps-inline .ant-steps-item{flex:none;}.ant-steps.ant-steps-inline .ant-steps-item-container{padding:9px 4px 0;margin:0 2px;border-radius:4px;cursor:pointer;transition:background-color 0.2s;}.ant-steps.ant-steps-inline .ant-steps-item-container:hover{background:rgba(255, 255, 255, 0.08);}.ant-steps.ant-steps-inline .ant-steps-item-container[role='button']:hover{opacity:1;}.ant-steps.ant-steps-inline .ant-steps-item-icon{width:6px;height:6px;margin-inline-start:calc(50% - 3px);}.ant-steps.ant-steps-inline .ant-steps-item-icon >.ant-steps-icon{top:0;}.ant-steps.ant-steps-inline .ant-steps-item-icon .ant-steps-icon-dot{border-radius:3px;}.ant-steps.ant-steps-inline .ant-steps-item-content{width:auto;margin-top:7px;}.ant-steps.ant-steps-inline .ant-steps-item-title{color:rgba(255, 255, 255, 0.25);font-size:12px;line-height:1.6666666666666667;font-weight:normal;margin-bottom:2px;}.ant-steps.ant-steps-inline .ant-steps-item-description{display:none;}.ant-steps.ant-steps-inline .ant-steps-item-tail{margin-inline-start:0;top:12px;transform:translateY(-50%);}.ant-steps.ant-steps-inline .ant-steps-item-tail:after{width:100%;height:1px;border-radius:0;margin-inline-start:0;background:#303030;}.ant-steps.ant-steps-inline .ant-steps-item:first-child .ant-steps-item-tail{width:50%;margin-inline-start:50%;}.ant-steps.ant-steps-inline .ant-steps-item:last-child .ant-steps-item-tail{display:block;width:50%;}.ant-steps.ant-steps-inline .ant-steps-item-wait .ant-steps-item-icon .ant-steps-icon .ant-steps-icon-dot{background-color:#141414;border:1px solid #303030;}.ant-steps.ant-steps-inline .ant-steps-item-wait .ant-steps-item-container .ant-steps-item-content .ant-steps-item-title{color:rgba(255, 255, 255, 0.25);}.ant-steps.ant-steps-inline .ant-steps-item-finish .ant-steps-item-tail::after{background-color:#303030;}.ant-steps.ant-steps-inline .ant-steps-item-finish .ant-steps-item-icon .ant-steps-icon .ant-steps-icon-dot{background-color:#303030;border:1px solid #303030;}.ant-steps.ant-steps-inline .ant-steps-item-finish .ant-steps-item-container .ant-steps-item-content .ant-steps-item-title{color:rgba(255, 255, 255, 0.25);}.ant-steps.ant-steps-inline .ant-steps-item-error .ant-steps-item-container .ant-steps-item-content .ant-steps-item-title{color:rgba(255, 255, 255, 0.25);}.ant-steps.ant-steps-inline .ant-steps-item-active .ant-steps-item-icon,.ant-steps.ant-steps-inline .ant-steps-item-process .ant-steps-item-icon{width:6px;height:6px;margin-inline-start:calc(50% - 3px);top:0;}.ant-steps.ant-steps-inline .ant-steps-item-active .ant-steps-item-container .ant-steps-item-content .ant-steps-item-title,.ant-steps.ant-steps-inline .ant-steps-item-process .ant-steps-item-container .ant-steps-item-content .ant-steps-item-title{color:rgba(255, 255, 255, 0.25);}.ant-steps.ant-steps-inline .ant-steps-item:not(.ant-steps-item-active)>.ant-steps-item-container[role='button']:hover .ant-steps-item-title{color:rgba(255, 255, 255, 0.25);}[class^=\\"ant-switch\\"],[class*=\\" ant-switch\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-switch\\"]::before,[class*=\\" ant-switch\\"]::before,[class^=\\"ant-switch\\"]::after,[class*=\\" ant-switch\\"]::after{box-sizing:border-box;}[class^=\\"ant-switch\\"] [class^=\\"ant-switch\\"],[class*=\\" ant-switch\\"] [class^=\\"ant-switch\\"],[class^=\\"ant-switch\\"] [class*=\\" ant-switch\\"],[class*=\\" ant-switch\\"] [class*=\\" ant-switch\\"]{box-sizing:border-box;}[class^=\\"ant-switch\\"] [class^=\\"ant-switch\\"]::before,[class*=\\" ant-switch\\"] [class^=\\"ant-switch\\"]::before,[class^=\\"ant-switch\\"] [class*=\\" ant-switch\\"]::before,[class*=\\" ant-switch\\"] [class*=\\" ant-switch\\"]::before,[class^=\\"ant-switch\\"] [class^=\\"ant-switch\\"]::after,[class*=\\" ant-switch\\"] [class^=\\"ant-switch\\"]::after,[class^=\\"ant-switch\\"] [class*=\\" ant-switch\\"]::after,[class*=\\" ant-switch\\"] [class*=\\" ant-switch\\"]::after{box-sizing:border-box;}.ant-switch{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:22px;list-style:none;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';position:relative;display:inline-block;min-width:44px;height:22px;vertical-align:middle;background:rgba(255, 255, 255, 0.25);border:0;border-radius:100px;cursor:pointer;transition:all 0.2s;user-select:none;}.ant-switch:hover:not(.ant-switch-disabled){background:rgba(255, 255, 255, 0.45);}.ant-switch:focus-visible{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-switch.ant-switch-checked{background:#037003;}.ant-switch.ant-switch-checked:hover:not(.ant-switch-disabled){background:#198016;}.ant-switch.ant-switch-loading,.ant-switch.ant-switch-disabled{cursor:not-allowed;opacity:0.65;}.ant-switch.ant-switch-loading *,.ant-switch.ant-switch-disabled *{box-shadow:none;cursor:not-allowed;}.ant-switch.ant-switch-rtl{direction:rtl;}.ant-switch .ant-switch-inner{display:block;overflow:hidden;border-radius:100px;height:100%;padding-inline-start:24px;padding-inline-end:9px;transition:padding-inline-start 0.2s ease-in-out,padding-inline-end 0.2s ease-in-out;}.ant-switch .ant-switch-inner .ant-switch-inner-checked,.ant-switch .ant-switch-inner .ant-switch-inner-unchecked{display:block;color:#fff;font-size:12px;transition:margin-inline-start 0.2s ease-in-out,margin-inline-end 0.2s ease-in-out;pointer-events:none;}.ant-switch .ant-switch-inner .ant-switch-inner-checked{margin-inline-start:calc(-100% + 22px - 48px);margin-inline-end:calc(100% - 22px + 48px);}.ant-switch .ant-switch-inner .ant-switch-inner-unchecked{margin-top:-22px;margin-inline-start:0;margin-inline-end:0;}.ant-switch.ant-switch-checked .ant-switch-inner{padding-inline-start:9px;padding-inline-end:24px;}.ant-switch.ant-switch-checked .ant-switch-inner .ant-switch-inner-checked{margin-inline-start:0;margin-inline-end:0;}.ant-switch.ant-switch-checked .ant-switch-inner .ant-switch-inner-unchecked{margin-inline-start:calc(100% - 22px + 48px);margin-inline-end:calc(-100% + 22px - 48px);}.ant-switch:not(.ant-switch-disabled):active:not(.ant-switch-checked) .ant-switch-inner .ant-switch-inner-unchecked{margin-inline-start:4px;margin-inline-end:-4px;}.ant-switch:not(.ant-switch-disabled):active.ant-switch-checked .ant-switch-inner .ant-switch-inner-checked{margin-inline-start:-4px;margin-inline-end:4px;}.ant-switch .ant-switch-handle{position:absolute;top:2px;inset-inline-start:2px;width:18px;height:18px;transition:all 0.2s ease-in-out;}.ant-switch .ant-switch-handle::before{position:absolute;top:0;inset-inline-end:0;bottom:0;inset-inline-start:0;background-color:#fff;border-radius:9px;box-shadow:0 2px 4px 0 rgba(0, 35, 11, 0.2);transition:all 0.2s ease-in-out;content:\\"\\";}.ant-switch.ant-switch-checked .ant-switch-handle{inset-inline-start:calc(100% - 20px);}.ant-switch:not(.ant-switch-disabled):active .ant-switch-handle::before{inset-inline-end:-30%;inset-inline-start:0;}.ant-switch:not(.ant-switch-disabled):active.ant-switch-checked .ant-switch-handle::before{inset-inline-end:0;inset-inline-start:-30%;}.ant-switch .ant-switch-loading-icon.anticon{position:relative;top:2px;color:rgba(0, 0, 0, 0.65);vertical-align:top;}.ant-switch.ant-switch-checked .ant-switch-loading-icon{color:#037003;}.ant-switch.ant-switch-small{min-width:28px;height:16px;line-height:16px;}.ant-switch.ant-switch-small .ant-switch-inner{padding-inline-start:18px;padding-inline-end:6px;}.ant-switch.ant-switch-small .ant-switch-inner .ant-switch-inner-checked{margin-inline-start:calc(-100% + 16px - 36px);margin-inline-end:calc(100% - 16px + 36px);}.ant-switch.ant-switch-small .ant-switch-inner .ant-switch-inner-unchecked{margin-top:-16px;margin-inline-start:0;margin-inline-end:0;}.ant-switch.ant-switch-small .ant-switch-handle{width:12px;height:12px;}.ant-switch.ant-switch-small .ant-switch-loading-icon{top:1.5px;font-size:9px;}.ant-switch.ant-switch-small.ant-switch-checked .ant-switch-inner{padding-inline-start:6px;padding-inline-end:18px;}.ant-switch.ant-switch-small.ant-switch-checked .ant-switch-inner .ant-switch-inner-checked{margin-inline-start:0;margin-inline-end:0;}.ant-switch.ant-switch-small.ant-switch-checked .ant-switch-inner .ant-switch-inner-unchecked{margin-inline-start:calc(100% - 16px + 36px);margin-inline-end:calc(-100% + 16px - 36px);}.ant-switch.ant-switch-small.ant-switch-checked .ant-switch-handle{inset-inline-start:calc(100% - 14px);}.ant-switch.ant-switch-small:not(.ant-switch-disabled):active:not(.ant-switch-checked) .ant-switch-inner .ant-switch-inner-unchecked{margin-inline-start:2px;margin-inline-end:-2px;}.ant-switch.ant-switch-small:not(.ant-switch-disabled):active.ant-switch-checked .ant-switch-inner .ant-switch-inner-checked{margin-inline-start:-2px;margin-inline-end:2px;}[class^=\\"ant-table\\"],[class*=\\" ant-table\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-table\\"]::before,[class*=\\" ant-table\\"]::before,[class^=\\"ant-table\\"]::after,[class*=\\" ant-table\\"]::after{box-sizing:border-box;}[class^=\\"ant-table\\"] [class^=\\"ant-table\\"],[class*=\\" ant-table\\"] [class^=\\"ant-table\\"],[class^=\\"ant-table\\"] [class*=\\" ant-table\\"],[class*=\\" ant-table\\"] [class*=\\" ant-table\\"]{box-sizing:border-box;}[class^=\\"ant-table\\"] [class^=\\"ant-table\\"]::before,[class*=\\" ant-table\\"] [class^=\\"ant-table\\"]::before,[class^=\\"ant-table\\"] [class*=\\" ant-table\\"]::before,[class*=\\" ant-table\\"] [class*=\\" ant-table\\"]::before,[class^=\\"ant-table\\"] [class^=\\"ant-table\\"]::after,[class*=\\" ant-table\\"] [class^=\\"ant-table\\"]::after,[class^=\\"ant-table\\"] [class*=\\" ant-table\\"]::after,[class*=\\" ant-table\\"] [class*=\\" ant-table\\"]::after{box-sizing:border-box;}.ant-table-wrapper{clear:both;max-width:100%;}.ant-table-wrapper::before{display:table;content:\\"\\";}.ant-table-wrapper::after{display:table;clear:both;content:\\"\\";}.ant-table-wrapper .ant-table{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';background:#141414;border-radius:8px 8px 0 0;}.ant-table-wrapper table{width:100%;text-align:start;border-radius:8px 8px 0 0;border-collapse:separate;border-spacing:0;}.ant-table-wrapper .ant-table-thead>tr>th,.ant-table-wrapper .ant-table-tbody>tr>td,.ant-table-wrapper tfoot>tr>th,.ant-table-wrapper tfoot>tr>td{position:relative;padding:16px 16px;overflow-wrap:break-word;}.ant-table-wrapper .ant-table-title{padding:16px 16px;}.ant-table-wrapper .ant-table-thead >tr>th,.ant-table-wrapper .ant-table-thead >tr>td{position:relative;color:rgba(255, 255, 255, 0.85);font-weight:600;text-align:start;background:#1d1d1d;border-bottom:1px solid #303030;transition:background 0.2s ease;}.ant-table-wrapper .ant-table-thead >tr>th[colspan]:not([colspan='1']),.ant-table-wrapper .ant-table-thead >tr>td[colspan]:not([colspan='1']){text-align:center;}.ant-table-wrapper .ant-table-thead >tr>th:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan])::before,.ant-table-wrapper .ant-table-thead >tr>td:not(:last-child):not(.ant-table-selection-column):not(.ant-table-row-expand-icon-cell):not([colspan])::before{position:absolute;top:50%;inset-inline-end:0;width:1px;height:1.6em;background-color:#303030;transform:translateY(-50%);transition:background-color 0.2s;content:\\"\\";}.ant-table-wrapper .ant-table-thead >tr:not(:last-child)>th[colspan]{border-bottom:0;}.ant-table-wrapper .ant-table:not(.ant-table-bordered) .ant-table-tbody >tr >td{border-top:1px solid #303030;border-bottom:transparent;}.ant-table-wrapper .ant-table:not(.ant-table-bordered) .ant-table-tbody >tr:last-child>td{border-bottom:1px solid #303030;}.ant-table-wrapper .ant-table:not(.ant-table-bordered) .ant-table-tbody >tr:first-child>td,.ant-table-wrapper .ant-table:not(.ant-table-bordered) .ant-table-tbody >tr.ant-table-measure-row+tr>td{border-top:none;border-top-color:transparent;}.ant-table-wrapper .ant-table.ant-table-bordered .ant-table-tbody >tr >td{border-bottom:1px solid #303030;}.ant-table-wrapper .ant-table-tbody >tr >td{transition:background 0.2s,border-color 0.2s;}.ant-table-wrapper .ant-table-tbody >tr >td >.ant-table-wrapper:only-child .ant-table,.ant-table-wrapper .ant-table-tbody >tr >td >.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table{margin-block:-16px;margin-inline:32px -16px;}.ant-table-wrapper .ant-table-tbody >tr >td >.ant-table-wrapper:only-child .ant-table .ant-table-tbody>tr:last-child>td,.ant-table-wrapper .ant-table-tbody >tr >td >.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table .ant-table-tbody>tr:last-child>td{border-bottom:0;}.ant-table-wrapper .ant-table-tbody >tr >td >.ant-table-wrapper:only-child .ant-table .ant-table-tbody>tr:last-child>td:first-child,.ant-table-wrapper .ant-table-tbody >tr >td >.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table .ant-table-tbody>tr:last-child>td:first-child,.ant-table-wrapper .ant-table-tbody >tr >td >.ant-table-wrapper:only-child .ant-table .ant-table-tbody>tr:last-child>td:last-child,.ant-table-wrapper .ant-table-tbody >tr >td >.ant-table-expanded-row-fixed>.ant-table-wrapper:only-child .ant-table .ant-table-tbody>tr:last-child>td:last-child{border-radius:0;}.ant-table-wrapper .ant-table-tbody >tr.ant-table-row:hover>td,.ant-table-wrapper .ant-table-tbody >tr >td.ant-table-cell-row-hover{background:#1d1d1d;}.ant-table-wrapper .ant-table-tbody >tr.ant-table-row-selected >td{background:#111911;}.ant-table-wrapper .ant-table-tbody >tr.ant-table-row-selected:hover>td{background:#0f2510;}.ant-table-wrapper .ant-table-footer{padding:16px 16px;color:rgba(255, 255, 255, 0.85);background:#1d1d1d;}.ant-table-wrapper .ant-table-pagination.ant-pagination{margin:16px 0;}.ant-table-wrapper .ant-table-pagination{display:flex;flex-wrap:wrap;row-gap:8px;}.ant-table-wrapper .ant-table-pagination >*{flex:none;}.ant-table-wrapper .ant-table-pagination-left{justify-content:flex-start;}.ant-table-wrapper .ant-table-pagination-center{justify-content:center;}.ant-table-wrapper .ant-table-pagination-right{justify-content:flex-end;}.ant-table-wrapper .ant-table-summary{position:relative;z-index:2;background:#141414;}.ant-table-wrapper .ant-table-summary >tr >th,.ant-table-wrapper .ant-table-summary >tr >td{border-bottom:1px solid #303030;}.ant-table-wrapper div.ant-table-summary{box-shadow:0 -1px 0 #303030;}.ant-table-wrapper .ant-table-thead th.ant-table-column-has-sorters{outline:none;cursor:pointer;transition:all 0.3s;}.ant-table-wrapper .ant-table-thead th.ant-table-column-has-sorters:hover{background:#303030;}.ant-table-wrapper .ant-table-thead th.ant-table-column-has-sorters:hover::before{background-color:transparent!important;}.ant-table-wrapper .ant-table-thead th.ant-table-column-has-sorters:focus-visible{color:#037003;}.ant-table-wrapper .ant-table-thead th.ant-table-column-has-sorters.ant-table-cell-fix-left:hover,.ant-table-wrapper .ant-table-thead th.ant-table-column-has-sorters.ant-table-cell-fix-right:hover{background:#303030;}.ant-table-wrapper .ant-table-thead th.ant-table-column-sort{background:#303030;}.ant-table-wrapper .ant-table-thead th.ant-table-column-sort::before{background-color:transparent!important;}.ant-table-wrapper td.ant-table-column-sort{background:#1d1d1d;}.ant-table-wrapper .ant-table-column-title{position:relative;z-index:1;flex:1;}.ant-table-wrapper .ant-table-column-sorters{display:flex;flex:auto;align-items:center;justify-content:space-between;}.ant-table-wrapper .ant-table-column-sorters::after{position:absolute;inset:0;width:100%;height:100%;content:\\"\\";}.ant-table-wrapper .ant-table-column-sorter{margin-inline-start:4px;color:rgba(255, 255, 255, 0.29);font-size:0;transition:color 0.3s;}.ant-table-wrapper .ant-table-column-sorter-inner{display:inline-flex;flex-direction:column;align-items:center;}.ant-table-wrapper .ant-table-column-sorter-up,.ant-table-wrapper .ant-table-column-sorter-down{font-size:12px;}.ant-table-wrapper .ant-table-column-sorter-up.active,.ant-table-wrapper .ant-table-column-sorter-down.active{color:#037003;}.ant-table-wrapper .ant-table-column-sorter .ant-table-column-sorter-up+.ant-table-column-sorter-down{margin-top:-0.3em;}.ant-table-wrapper .ant-table-column-sorters:hover .ant-table-column-sorter{color:rgba(255, 255, 255, 0.55);}.ant-table-wrapper .ant-table-filter-column{display:flex;justify-content:space-between;}.ant-table-wrapper .ant-table-filter-trigger{position:relative;display:flex;align-items:center;margin-block:-4px;margin-inline:4px -8px;padding:0 4px;color:rgba(255, 255, 255, 0.29);font-size:12px;border-radius:6px;cursor:pointer;transition:all 0.3s;}.ant-table-wrapper .ant-table-filter-trigger:hover{color:rgba(255, 255, 255, 0.45);background:rgba(255, 255, 255, 0.12);}.ant-table-wrapper .ant-table-filter-trigger.active{color:#037003;}.ant-dropdown .ant-table-filter-dropdown{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';min-width:120px;background-color:#141414;border-radius:6px;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-dropdown .ant-table-filter-dropdown .ant-dropdown-menu{max-height:264px;overflow-x:hidden;border:0;box-shadow:none;}.ant-dropdown .ant-table-filter-dropdown .ant-dropdown-menu:empty::after{display:block;padding:8px 0;color:rgba(255, 255, 255, 0.25);font-size:12px;text-align:center;content:\\"Not Found\\";}.ant-dropdown .ant-table-filter-dropdown .ant-table-filter-dropdown-tree{padding-block:8px 0;padding-inline:8px;}.ant-dropdown .ant-table-filter-dropdown .ant-table-filter-dropdown-tree .ant-tree{padding:0;}.ant-dropdown .ant-table-filter-dropdown .ant-table-filter-dropdown-tree .ant-tree-treenode .ant-tree-node-content-wrapper:hover{background-color:rgba(255, 255, 255, 0.08);}.ant-dropdown .ant-table-filter-dropdown .ant-table-filter-dropdown-tree .ant-tree-treenode-checkbox-checked .ant-tree-node-content-wrapper,.ant-dropdown .ant-table-filter-dropdown .ant-table-filter-dropdown-tree .ant-tree-treenode-checkbox-checked .ant-tree-node-content-wrapper:hover{background-color:#111911;}.ant-dropdown .ant-table-filter-dropdown .ant-table-filter-dropdown-search{padding:8px;border-bottom:1px solid #303030;}.ant-dropdown .ant-table-filter-dropdown .ant-table-filter-dropdown-search-input input{min-width:140px;}.ant-dropdown .ant-table-filter-dropdown .ant-table-filter-dropdown-search-input .anticon{color:rgba(255, 255, 255, 0.25);}.ant-dropdown .ant-table-filter-dropdown .ant-table-filter-dropdown-checkall{width:100%;margin-bottom:4px;margin-inline-start:4px;}.ant-dropdown .ant-table-filter-dropdown .ant-table-filter-dropdown-btns{display:flex;justify-content:space-between;padding:7px 8px;overflow:hidden;background-color:inherit;border-top:1px solid #303030;}.ant-dropdown .ant-table-filter-dropdown .ant-checkbox-wrapper+span,.ant-table-filter-dropdown-submenu .ant-checkbox-wrapper+span{padding-inline-start:8px;color:rgba(255, 255, 255, 0.85);}.ant-dropdown .ant-table-filter-dropdown >ul,.ant-table-filter-dropdown-submenu >ul{max-height:calc(100vh - 130px);overflow-x:hidden;overflow-y:auto;}.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-title{border:1px solid #303030;border-bottom:0;}.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container{border-inline-start:1px solid #303030;}.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-content >table >thead>tr>th,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-header >table >thead>tr>th,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-body >table >thead>tr>th,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-summary >table >thead>tr>th,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-content >table >tbody>tr>td,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-header >table >tbody>tr>td,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-body >table >tbody>tr>td,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-summary >table >tbody>tr>td,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-content >table >tfoot>tr>th,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-header >table >tfoot>tr>th,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-body >table >tfoot>tr>th,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-summary >table >tfoot>tr>th,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-content >table >tfoot>tr>td,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-header >table >tfoot>tr>td,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-body >table >tfoot>tr>td,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-summary >table >tfoot>tr>td{border-inline-end:1px solid #303030;}.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-content >table >thead >tr:not(:last-child)>th,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-header >table >thead >tr:not(:last-child)>th,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-body >table >thead >tr:not(:last-child)>th,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-summary >table >thead >tr:not(:last-child)>th{border-bottom:1px solid #303030;}.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-content >table >thead >tr>th::before,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-header >table >thead >tr>th::before,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-body >table >thead >tr>th::before,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-summary >table >thead >tr>th::before{background-color:transparent!important;}.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-content >table >thead>tr >.ant-table-cell-fix-right-first::after,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-header >table >thead>tr >.ant-table-cell-fix-right-first::after,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-body >table >thead>tr >.ant-table-cell-fix-right-first::after,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-summary >table >thead>tr >.ant-table-cell-fix-right-first::after,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-content >table >tbody>tr >.ant-table-cell-fix-right-first::after,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-header >table >tbody>tr >.ant-table-cell-fix-right-first::after,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-body >table >tbody>tr >.ant-table-cell-fix-right-first::after,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-summary >table >tbody>tr >.ant-table-cell-fix-right-first::after,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-content >table >tfoot>tr >.ant-table-cell-fix-right-first::after,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-header >table >tfoot>tr >.ant-table-cell-fix-right-first::after,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-body >table >tfoot>tr >.ant-table-cell-fix-right-first::after,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-summary >table >tfoot>tr >.ant-table-cell-fix-right-first::after{border-inline-end:1px solid #303030;}.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-content >table >tbody>tr>td >.ant-table-expanded-row-fixed,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-header >table >tbody>tr>td >.ant-table-expanded-row-fixed,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-body >table >tbody>tr>td >.ant-table-expanded-row-fixed,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-summary >table >tbody>tr>td >.ant-table-expanded-row-fixed{margin:-16px -17px;}.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-content >table >tbody>tr>td >.ant-table-expanded-row-fixed::after,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-header >table >tbody>tr>td >.ant-table-expanded-row-fixed::after,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-body >table >tbody>tr>td >.ant-table-expanded-row-fixed::after,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-summary >table >tbody>tr>td >.ant-table-expanded-row-fixed::after{position:absolute;top:0;inset-inline-end:1px;bottom:0;border-inline-end:1px solid #303030;content:\\"\\";}.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-content >table,.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-container >.ant-table-header >table{border-top:1px solid #303030;}.ant-table-wrapper .ant-table.ant-table-bordered.ant-table-scroll-horizontal >.ant-table-container>.ant-table-body >table>tbody >tr.ant-table-expanded-row >td,.ant-table-wrapper .ant-table.ant-table-bordered.ant-table-scroll-horizontal >.ant-table-container>.ant-table-body >table>tbody >tr.ant-table-placeholder >td{border-inline-end:0;}.ant-table-wrapper .ant-table.ant-table-bordered.ant-table-middle >.ant-table-container >.ant-table-content >table>tbody>tr>td >.ant-table-expanded-row-fixed,.ant-table-wrapper .ant-table.ant-table-bordered.ant-table-middle >.ant-table-container >.ant-table-body >table>tbody>tr>td >.ant-table-expanded-row-fixed{margin:-12px -9px;}.ant-table-wrapper .ant-table.ant-table-bordered.ant-table-small >.ant-table-container >.ant-table-content >table>tbody>tr>td >.ant-table-expanded-row-fixed,.ant-table-wrapper .ant-table.ant-table-bordered.ant-table-small >.ant-table-container >.ant-table-body >table>tbody>tr>td >.ant-table-expanded-row-fixed{margin:-8px -9px;}.ant-table-wrapper .ant-table.ant-table-bordered >.ant-table-footer{border:1px solid #303030;border-top:0;}.ant-table-wrapper .ant-table-cell .ant-table-container:first-child{border-top:0;}.ant-table-wrapper .ant-table-cell-scrollbar:not([rowspan]){box-shadow:0 1px 0 1px #1d1d1d;}.ant-table-wrapper .ant-table .ant-table-title,.ant-table-wrapper .ant-table .ant-table-header{border-radius:8px 8px 0 0;}.ant-table-wrapper .ant-table .ant-table-title+.ant-table-container{border-start-start-radius:0;border-start-end-radius:0;}.ant-table-wrapper .ant-table .ant-table-title+.ant-table-container table{border-radius:0;}.ant-table-wrapper .ant-table .ant-table-title+.ant-table-container table >thead>tr:first-child th:first-child{border-radius:0;}.ant-table-wrapper .ant-table .ant-table-title+.ant-table-container table >thead>tr:first-child th:last-child{border-radius:0;}.ant-table-wrapper .ant-table-container{border-start-start-radius:8px;border-start-end-radius:8px;}.ant-table-wrapper .ant-table-container table>thead>tr:first-child >*:first-child{border-start-start-radius:8px;}.ant-table-wrapper .ant-table-container table>thead>tr:first-child >*:last-child{border-start-end-radius:8px;}.ant-table-wrapper .ant-table-footer{border-radius:0 0 8px 8px;}.ant-table-wrapper .ant-table-expand-icon-col{width:48px;}.ant-table-wrapper .ant-table-row-expand-icon-cell{text-align:center;}.ant-table-wrapper .ant-table-row-expand-icon-cell .ant-table-row-expand-icon{display:inline-flex;float:none;vertical-align:sub;}.ant-table-wrapper .ant-table-row-indent{height:1px;float:left;}.ant-table-wrapper .ant-table-row-expand-icon{color:inherit;text-decoration:none;outline:none;cursor:pointer;transition:all 0.3s;position:relative;float:left;box-sizing:border-box;width:17px;height:17px;padding:0;line-height:17px;background:#141414;border:1px solid #303030;border-radius:6px;transform:scale(0.9411764705882353);user-select:none;}.ant-table-wrapper .ant-table-row-expand-icon:focus,.ant-table-wrapper .ant-table-row-expand-icon:hover{color:#15417e;}.ant-table-wrapper .ant-table-row-expand-icon:active{color:#1554ad;}.ant-table-wrapper .ant-table-row-expand-icon:focus,.ant-table-wrapper .ant-table-row-expand-icon:hover,.ant-table-wrapper .ant-table-row-expand-icon:active{border-color:currentcolor;}.ant-table-wrapper .ant-table-row-expand-icon::before,.ant-table-wrapper .ant-table-row-expand-icon::after{position:absolute;background:currentcolor;transition:transform 0.3s ease-out;content:\\"\\";}.ant-table-wrapper .ant-table-row-expand-icon::before{top:7px;inset-inline-end:3px;inset-inline-start:3px;height:1px;}.ant-table-wrapper .ant-table-row-expand-icon::after{top:3px;bottom:3px;inset-inline-start:7px;width:1px;transform:rotate(90deg);}.ant-table-wrapper .ant-table-row-expand-icon-collapsed::before{transform:rotate(-180deg);}.ant-table-wrapper .ant-table-row-expand-icon-collapsed::after{transform:rotate(0deg);}.ant-table-wrapper .ant-table-row-expand-icon-spaced{background:transparent;border:0;visibility:hidden;}.ant-table-wrapper .ant-table-row-expand-icon-spaced::before,.ant-table-wrapper .ant-table-row-expand-icon-spaced::after{display:none;content:none;}.ant-table-wrapper .ant-table-row-indent+.ant-table-row-expand-icon{margin-top:2.5px;margin-inline-end:8px;}.ant-table-wrapper tr.ant-table-expanded-row >td,.ant-table-wrapper tr.ant-table-expanded-row:hover >td{background:rgba(255, 255, 255, 0.04);}.ant-table-wrapper tr.ant-table-expanded-row .ant-descriptions-view{display:flex;}.ant-table-wrapper tr.ant-table-expanded-row .ant-descriptions-view table{flex:auto;width:auto;}.ant-table-wrapper .ant-table-expanded-row-fixed{position:relative;margin:-16px -16px;padding:16px 16px;}.ant-table-wrapper .ant-table-summary{position:relative;z-index:2;background:#141414;}.ant-table-wrapper .ant-table-summary >tr >th,.ant-table-wrapper .ant-table-summary >tr >td{border-bottom:1px solid #303030;}.ant-table-wrapper div.ant-table-summary{box-shadow:0 -1px 0 #303030;}.ant-table-wrapper .ant-table-tbody>tr.ant-table-placeholder{text-align:center;color:rgba(255, 255, 255, 0.25);}.ant-table-wrapper .ant-table-tbody>tr.ant-table-placeholder:hover>td{background:#141414;}.ant-table-wrapper .ant-table-selection-col{width:32px;}.ant-table-wrapper .ant-table-bordered .ant-table-selection-col{width:48px;}.ant-table-wrapper table tr th.ant-table-selection-column,.ant-table-wrapper table tr td.ant-table-selection-column{padding-inline-end:8px;padding-inline-start:8px;text-align:center;}.ant-table-wrapper table tr th.ant-table-selection-column .ant-radio-wrapper,.ant-table-wrapper table tr td.ant-table-selection-column .ant-radio-wrapper{margin-inline-end:0;}.ant-table-wrapper table tr th.ant-table-selection-column.ant-table-cell-fix-left{z-index:3;}.ant-table-wrapper table tr th.ant-table-selection-column::after{background-color:transparent!important;}.ant-table-wrapper .ant-table-selection{position:relative;display:inline-flex;flex-direction:column;}.ant-table-wrapper .ant-table-selection-extra{position:absolute;top:0;z-index:1;cursor:pointer;transition:all 0.3s;margin-inline-start:100%;padding-inline-start:4px;}.ant-table-wrapper .ant-table-selection-extra .anticon{color:rgba(255, 255, 255, 0.29);font-size:12px;vertical-align:baseline;}.ant-table-wrapper .ant-table-selection-extra .anticon:hover{color:rgba(255, 255, 255, 0.55);}.ant-table-wrapper .ant-table-cell-fix-left,.ant-table-wrapper .ant-table-cell-fix-right{position:sticky!important;z-index:2;background:#141414;}.ant-table-wrapper .ant-table-cell-fix-left-first::after,.ant-table-wrapper .ant-table-cell-fix-left-last::after{position:absolute;top:0;right:0;bottom:-1px;width:30px;transform:translateX(100%);transition:box-shadow 0.3s;content:\\"\\";pointer-events:none;}.ant-table-wrapper .ant-table-cell-fix-left-all::after{display:none;}.ant-table-wrapper .ant-table-cell-fix-right-first::after,.ant-table-wrapper .ant-table-cell-fix-right-last::after{position:absolute;top:0;bottom:-1px;left:0;width:30px;transform:translateX(-100%);transition:box-shadow 0.3s;content:\\"\\";pointer-events:none;}.ant-table-wrapper .ant-table-container::before,.ant-table-wrapper .ant-table-container::after{position:absolute;top:0;bottom:0;z-index:4;width:30px;transition:box-shadow 0.3s;content:\\"\\";pointer-events:none;}.ant-table-wrapper .ant-table-container::before{inset-inline-start:0;}.ant-table-wrapper .ant-table-container::after{inset-inline-end:0;}.ant-table-wrapper .ant-table-ping-left:not(.ant-table-has-fix-left) .ant-table-container{position:relative;}.ant-table-wrapper .ant-table-ping-left:not(.ant-table-has-fix-left) .ant-table-container::before{box-shadow:inset 10px 0 8px -8px rgba(253, 253, 253, 0.12);}.ant-table-wrapper .ant-table-ping-left .ant-table-cell-fix-left-first::after,.ant-table-wrapper .ant-table-ping-left .ant-table-cell-fix-left-last::after{box-shadow:inset 10px 0 8px -8px rgba(253, 253, 253, 0.12);}.ant-table-wrapper .ant-table-ping-left .ant-table-cell-fix-left-last::before{background-color:transparent!important;}.ant-table-wrapper .ant-table-ping-right:not(.ant-table-has-fix-right) .ant-table-container{position:relative;}.ant-table-wrapper .ant-table-ping-right:not(.ant-table-has-fix-right) .ant-table-container::after{box-shadow:inset -10px 0 8px -8px rgba(253, 253, 253, 0.12);}.ant-table-wrapper .ant-table-ping-right .ant-table-cell-fix-right-first::after,.ant-table-wrapper .ant-table-ping-right .ant-table-cell-fix-right-last::after{box-shadow:inset -10px 0 8px -8px rgba(253, 253, 253, 0.12);}.ant-table-wrapper .ant-table-sticky-holder{position:sticky;z-index:3;background:#141414;}.ant-table-wrapper .ant-table-sticky-scroll{position:sticky;bottom:0;height:8px!important;z-index:3;display:flex;align-items:center;background:rgba(253, 253, 253, 0.12);border-top:1px solid #303030;opacity:0.65;}.ant-table-wrapper .ant-table-sticky-scroll:hover{transform-origin:center bottom;}.ant-table-wrapper .ant-table-sticky-scroll-bar{height:8px;background-color:rgba(255, 255, 255, 0.25);border-radius:100px;transition:all 0.3s,transform none;position:absolute;bottom:0;}.ant-table-wrapper .ant-table-sticky-scroll-bar:hover,.ant-table-wrapper .ant-table-sticky-scroll-bar-active{background-color:rgba(255, 255, 255, 0.85);}.ant-table-wrapper .ant-table-cell-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all;}.ant-table-wrapper .ant-table-cell-ellipsis.ant-table-cell-fix-left-last,.ant-table-wrapper .ant-table-cell-ellipsis.ant-table-cell-fix-right-first{overflow:visible;}.ant-table-wrapper .ant-table-cell-ellipsis.ant-table-cell-fix-left-last .ant-table-cell-content,.ant-table-wrapper .ant-table-cell-ellipsis.ant-table-cell-fix-right-first .ant-table-cell-content{display:block;overflow:hidden;text-overflow:ellipsis;}.ant-table-wrapper .ant-table-cell-ellipsis .ant-table-column-title{overflow:hidden;text-overflow:ellipsis;word-break:keep-all;}.ant-table-wrapper .ant-table.ant-table-middle{font-size:14px;}.ant-table-wrapper .ant-table.ant-table-middle .ant-table-title,.ant-table-wrapper .ant-table.ant-table-middle .ant-table-footer,.ant-table-wrapper .ant-table.ant-table-middle .ant-table-thead>tr>th,.ant-table-wrapper .ant-table.ant-table-middle .ant-table-tbody>tr>td,.ant-table-wrapper .ant-table.ant-table-middle tfoot>tr>th,.ant-table-wrapper .ant-table.ant-table-middle tfoot>tr>td{padding:12px 8px;}.ant-table-wrapper .ant-table.ant-table-middle .ant-table-filter-trigger{margin-inline-end:-4px;}.ant-table-wrapper .ant-table.ant-table-middle .ant-table-expanded-row-fixed{margin:-12px -8px;}.ant-table-wrapper .ant-table.ant-table-middle .ant-table-tbody .ant-table-wrapper:only-child .ant-table{margin-block:-12px;margin-inline:40px -8px;}.ant-table-wrapper .ant-table.ant-table-middle .ant-table-selection-column{padding-inline-start:2px;}.ant-table-wrapper .ant-table.ant-table-small{font-size:14px;}.ant-table-wrapper .ant-table.ant-table-small .ant-table-title,.ant-table-wrapper .ant-table.ant-table-small .ant-table-footer,.ant-table-wrapper .ant-table.ant-table-small .ant-table-thead>tr>th,.ant-table-wrapper .ant-table.ant-table-small .ant-table-tbody>tr>td,.ant-table-wrapper .ant-table.ant-table-small tfoot>tr>th,.ant-table-wrapper .ant-table.ant-table-small tfoot>tr>td{padding:8px 8px;}.ant-table-wrapper .ant-table.ant-table-small .ant-table-filter-trigger{margin-inline-end:-4px;}.ant-table-wrapper .ant-table.ant-table-small .ant-table-expanded-row-fixed{margin:-8px -8px;}.ant-table-wrapper .ant-table.ant-table-small .ant-table-tbody .ant-table-wrapper:only-child .ant-table{margin-block:-8px;margin-inline:40px -8px;}.ant-table-wrapper .ant-table.ant-table-small .ant-table-selection-column{padding-inline-start:2px;}.ant-table-wrapper .ant-table-resize-handle{position:absolute;top:0;height:100%!important;bottom:0;left:auto!important;right:-8px;cursor:col-resize;touch-action:none;user-select:auto;width:16px;z-index:1;}.ant-table-wrapper .ant-table-resize-handle-line{display:block;width:1px;margin-left:7px;height:100%!important;background-color:#037003;opacity:0;}.ant-table-wrapper .ant-table-resize-handle:hover .ant-table-wrapper .ant-table-resize-handle-line{opacity:1;}.ant-table-wrapper .ant-table-resize-handle.dragging{overflow:hidden;}.ant-table-wrapper .ant-table-resize-handle.dragging .ant-table-resize-handle-line{opacity:1;}.ant-table-wrapper .ant-table-resize-handle.dragging:before{position:absolute;top:0;bottom:0;content:\\" \\";width:200vw;transform:translateX(-50%);opacity:0;}.ant-table-wrapper-rtl{direction:rtl;}.ant-table-wrapper-rtl table{direction:rtl;}.ant-table-wrapper-rtl .ant-table-pagination-left{justify-content:flex-end;}.ant-table-wrapper-rtl .ant-table-pagination-right{justify-content:flex-start;}.ant-table-wrapper-rtl .ant-table-row-expand-icon::after{transform:rotate(-90deg);}.ant-table-wrapper-rtl .ant-table-row-expand-icon-collapsed::before{transform:rotate(180deg);}.ant-table-wrapper-rtl .ant-table-row-expand-icon-collapsed::after{transform:rotate(0deg);}[class^=\\"ant-transfer\\"],[class*=\\" ant-transfer\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-transfer\\"]::before,[class*=\\" ant-transfer\\"]::before,[class^=\\"ant-transfer\\"]::after,[class*=\\" ant-transfer\\"]::after{box-sizing:border-box;}[class^=\\"ant-transfer\\"] [class^=\\"ant-transfer\\"],[class*=\\" ant-transfer\\"] [class^=\\"ant-transfer\\"],[class^=\\"ant-transfer\\"] [class*=\\" ant-transfer\\"],[class*=\\" ant-transfer\\"] [class*=\\" ant-transfer\\"]{box-sizing:border-box;}[class^=\\"ant-transfer\\"] [class^=\\"ant-transfer\\"]::before,[class*=\\" ant-transfer\\"] [class^=\\"ant-transfer\\"]::before,[class^=\\"ant-transfer\\"] [class*=\\" ant-transfer\\"]::before,[class*=\\" ant-transfer\\"] [class*=\\" ant-transfer\\"]::before,[class^=\\"ant-transfer\\"] [class^=\\"ant-transfer\\"]::after,[class*=\\" ant-transfer\\"] [class^=\\"ant-transfer\\"]::after,[class^=\\"ant-transfer\\"] [class*=\\" ant-transfer\\"]::after,[class*=\\" ant-transfer\\"] [class*=\\" ant-transfer\\"]::after{box-sizing:border-box;}.ant-transfer{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:relative;display:flex;align-items:stretch;}.ant-transfer .ant-transfer-disabled .ant-transfer-list{background:rgba(255, 255, 255, 0.08);}.ant-transfer .ant-transfer-list{display:flex;flex-direction:column;width:180px;height:200px;border:1px solid #424242;border-radius:8px;}.ant-transfer .ant-transfer-list-with-pagination{width:250px;height:auto;}.ant-transfer .ant-transfer-list-search .anticon-search{color:rgba(255, 255, 255, 0.25);}.ant-transfer .ant-transfer-list-header{display:flex;flex:none;align-items:center;height:40px;padding:8px 12px 9px;color:rgba(255, 255, 255, 0.85);background:#141414;border-bottom:1px solid rgba(253, 253, 253, 0.12);border-radius:8px 8px 0 0;}.ant-transfer .ant-transfer-list-header >*:not(:last-child){margin-inline-end:4px;}.ant-transfer .ant-transfer-list-header >*{flex:none;}.ant-transfer .ant-transfer-list-header-title{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:auto;text-align:end;}.ant-transfer .ant-transfer-list-header-dropdown{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;font-size:12px;transform:translateY(10%);cursor:pointer;}.ant-transfer .ant-transfer-list-header-dropdown >*{line-height:1;}.ant-transfer .ant-transfer-list-header-dropdown svg{display:inline-block;}.ant-transfer .ant-transfer-list-header-dropdown[disabled]{cursor:not-allowed;}.ant-transfer .ant-transfer-list-body{display:flex;flex:auto;flex-direction:column;overflow:hidden;font-size:14px;}.ant-transfer .ant-transfer-list-body-search-wrapper{position:relative;flex:none;padding:12px;}.ant-transfer .ant-transfer-list-content{flex:auto;margin:0;padding:0;overflow:auto;list-style:none;}.ant-transfer .ant-transfer-list-content-item{display:flex;align-items:center;min-height:32px;padding:5px 12px;transition:all 0.3s;}.ant-transfer .ant-transfer-list-content-item >*:not(:last-child){margin-inline-end:8px;}.ant-transfer .ant-transfer-list-content-item >*{flex:none;}.ant-transfer .ant-transfer-list-content-item-text{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:auto;}.ant-transfer .ant-transfer-list-content-item-remove{position:relative;color:#424242;cursor:pointer;transition:all 0.3s;}.ant-transfer .ant-transfer-list-content-item-remove:hover{color:#15417e;}.ant-transfer .ant-transfer-list-content-item-remove::after{position:absolute;insert:-5px -50%;content:\\"\\";}.ant-transfer .ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background-color:rgba(255, 255, 255, 0.08);cursor:pointer;}.ant-transfer .ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled).ant-transfer-list-content-item-checked:hover{background-color:#0f2510;}.ant-transfer .ant-transfer-list-content-item-checked{background-color:#111911;}.ant-transfer .ant-transfer-list-content-item-disabled{color:rgba(255, 255, 255, 0.25);cursor:not-allowed;}.ant-transfer .ant-transfer-list-content-show-remove .ant-transfer-list-content-item:not(.ant-transfer-list-content-item-disabled):hover{background:transparent;cursor:default;}.ant-transfer .ant-transfer-list-pagination{padding:8px 0;text-align:end;border-top:1px solid rgba(253, 253, 253, 0.12);}.ant-transfer .ant-transfer-list-body-not-found{flex:none;width:100%;margin:auto 0;color:rgba(255, 255, 255, 0.25);text-align:center;}.ant-transfer .ant-transfer-list-footer{border-top:1px solid rgba(253, 253, 253, 0.12);}.ant-transfer .ant-transfer-list-checkbox{line-height:1;}.ant-transfer .ant-transfer-operation{display:flex;flex:none;flex-direction:column;align-self:center;margin:0 8px;vertical-align:middle;}.ant-transfer .ant-transfer-operation .ant-btn{display:block;}.ant-transfer .ant-transfer-operation .ant-btn:first-child{margin-bottom:4px;}.ant-transfer .ant-transfer-operation .ant-btn .anticon{font-size:12px;}.ant-transfer .ant-empty-image{max-height:-2px;}.ant-transfer-customize-list .ant-transfer-list{flex:1 1 50%;width:auto;height:auto;min-height:200px;}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small{border:0;border-radius:0;}.ant-transfer-customize-list .ant-table-wrapper .ant-table-small .ant-table-selection-column{width:40px;min-width:40px;}.ant-transfer-customize-list .ant-table-wrapper .ant-table-pagination.ant-table-pagination{margin:16px 0 4px;}.ant-transfer-customize-list .ant-input[disabled]{background-color:transparent;}.ant-transfer-status-error .ant-transfer-list{border-color:#dc4446;}.ant-transfer-status-error .ant-transfer-list-search:not([disabled]){border-color:#424242;}.ant-transfer-status-warning .ant-transfer-list{border-color:#d89614;}.ant-transfer-status-warning .ant-transfer-list-search:not([disabled]){border-color:#424242;}.ant-transfer-rtl{direction:rtl;}[class^=\\"ant-tree\\"],[class*=\\" ant-tree\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-tree\\"]::before,[class*=\\" ant-tree\\"]::before,[class^=\\"ant-tree\\"]::after,[class*=\\" ant-tree\\"]::after{box-sizing:border-box;}[class^=\\"ant-tree\\"] [class^=\\"ant-tree\\"],[class*=\\" ant-tree\\"] [class^=\\"ant-tree\\"],[class^=\\"ant-tree\\"] [class*=\\" ant-tree\\"],[class*=\\" ant-tree\\"] [class*=\\" ant-tree\\"]{box-sizing:border-box;}[class^=\\"ant-tree\\"] [class^=\\"ant-tree\\"]::before,[class*=\\" ant-tree\\"] [class^=\\"ant-tree\\"]::before,[class^=\\"ant-tree\\"] [class*=\\" ant-tree\\"]::before,[class*=\\" ant-tree\\"] [class*=\\" ant-tree\\"]::before,[class^=\\"ant-tree\\"] [class^=\\"ant-tree\\"]::after,[class*=\\" ant-tree\\"] [class^=\\"ant-tree\\"]::after,[class^=\\"ant-tree\\"] [class*=\\" ant-tree\\"]::after,[class*=\\" ant-tree\\"] [class*=\\" ant-tree\\"]::after{box-sizing:border-box;}.ant-tree .ant-tree-checkbox-group{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';display:inline-flex;flex-wrap:wrap;column-gap:8px;}.ant-tree .ant-tree-checkbox-group >.ant-row{flex:1;}.ant-tree .ant-tree-checkbox-wrapper{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';display:inline-flex;align-items:baseline;cursor:pointer;}.ant-tree .ant-tree-checkbox-wrapper:after{display:inline-block;width:0;overflow:hidden;content:'\\\\a0';}.ant-tree .ant-tree-checkbox-wrapper+.ant-tree-checkbox-wrapper{margin-inline-start:0;}.ant-tree .ant-tree-checkbox-wrapper.ant-tree-checkbox-wrapper-in-form-item input[type=\\"checkbox\\"]{width:14px;height:14px;}.ant-tree .ant-tree-checkbox{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1;list-style:none;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';position:relative;white-space:nowrap;cursor:pointer;align-self:center;}.ant-tree .ant-tree-checkbox .ant-tree-checkbox-input{position:absolute;inset:0;z-index:1;cursor:pointer;opacity:0;margin:0;}.ant-tree .ant-tree-checkbox .ant-tree-checkbox-input:focus-visible+.ant-tree-checkbox-inner{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-tree .ant-tree-checkbox .ant-tree-checkbox-inner{box-sizing:border-box;position:relative;top:0;inset-inline-start:0;display:block;width:16px;height:16px;direction:ltr;background-color:#141414;border:1px solid #424242;border-radius:4px;border-collapse:separate;transition:all 0.3s;}.ant-tree .ant-tree-checkbox .ant-tree-checkbox-inner:after{box-sizing:border-box;position:absolute;top:50%;inset-inline-start:21.5%;display:table;width:5.7142857142857135px;height:9.142857142857142px;border:2px solid #fff;border-top:0;border-inline-start:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;content:\\"\\";transition:all 0.1s cubic-bezier(0.71, -0.46, 0.88, 0.6),opacity 0.1s;}.ant-tree .ant-tree-checkbox+span{padding-inline-start:8px;padding-inline-end:8px;}.ant-tree .ant-tree-checkbox-indeterminate .ant-tree-checkbox-inner:after{top:50%;inset-inline-start:50%;width:8px;height:8px;background-color:#037003;border:0;transform:translate(-50%, -50%) scale(1);opacity:1;content:\\"\\";}.ant-tree .ant-tree-checkbox-wrapper:hover .ant-tree-checkbox:after{visibility:visible;}.ant-tree .ant-tree-checkbox-wrapper:not(.ant-tree-checkbox-wrapper-disabled):hover .ant-tree-checkbox-inner,.ant-tree .ant-tree-checkbox:not(.ant-tree-checkbox-disabled):hover .ant-tree-checkbox-inner{border-color:#037003;}.ant-tree .ant-tree-checkbox-wrapper:not(.ant-tree-checkbox-wrapper-disabled):hover .ant-tree-checkbox-checked:not(.ant-tree-checkbox-disabled) .ant-tree-checkbox-inner{background-color:#198016;border-color:transparent;}.ant-tree .ant-tree-checkbox-wrapper:not(.ant-tree-checkbox-wrapper-disabled):hover .ant-tree-checkbox-checked:not(.ant-tree-checkbox-disabled):after{border-color:#198016;}.ant-tree .ant-tree-checkbox-checked .ant-tree-checkbox-inner{background-color:#037003;border-color:#037003;}.ant-tree .ant-tree-checkbox-checked .ant-tree-checkbox-inner:after{opacity:1;transform:rotate(45deg) scale(1) translate(-50%,-50%);transition:all 0.2s cubic-bezier(0.12, 0.4, 0.29, 1.46) 0.1s;}.ant-tree .ant-tree-checkbox-checked:after{position:absolute;top:0;inset-inline-start:0;width:100%;height:100%;border-radius:4px;visibility:hidden;border:2px solid #037003;animation-name:antCheckboxEffect;animation-duration:0.3s;animation-timing-function:ease-in-out;animation-fill-mode:backwards;content:\\"\\";transition:all 0.3s;}.ant-tree .ant-tree-checkbox-wrapper-checked:not(.ant-tree-checkbox-wrapper-disabled):hover .ant-tree-checkbox-inner,.ant-tree .ant-tree-checkbox-checked:not(.ant-tree-checkbox-disabled):hover .ant-tree-checkbox-inner{background-color:#198016;border-color:transparent;}.ant-tree .ant-tree-checkbox-wrapper-checked:not(.ant-tree-checkbox-wrapper-disabled):hover .ant-tree-checkbox:after,.ant-tree .ant-tree-checkbox-checked:not(.ant-tree-checkbox-disabled):hover .ant-tree-checkbox:after{border-color:#198016;}.ant-tree .ant-tree-checkbox-wrapper-disabled{cursor:not-allowed;}.ant-tree .ant-tree-checkbox-disabled,.ant-tree .ant-tree-checkbox-disabled .ant-tree-checkbox-input{cursor:not-allowed;pointer-events:none;}.ant-tree .ant-tree-checkbox-disabled .ant-tree-checkbox-inner{background:rgba(255, 255, 255, 0.08);border-color:#424242;}.ant-tree .ant-tree-checkbox-disabled .ant-tree-checkbox-inner:after{border-color:rgba(255, 255, 255, 0.25);}.ant-tree .ant-tree-checkbox-disabled:after{display:none;}.ant-tree .ant-tree-checkbox-disabled+span{color:rgba(255, 255, 255, 0.25);}.ant-tree .ant-tree-checkbox-disabled.ant-tree-checkbox-indeterminate .ant-tree-checkbox-inner::after{background:rgba(255, 255, 255, 0.25);}.ant-tree{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';background:#141414;border-radius:6px;transition:background-color 0.3s;}.ant-tree.ant-tree-rtl .ant-tree-switcher_close .ant-tree-switcher-icon svg{transform:rotate(90deg);}.ant-tree-focused:not(:hover):not(.ant-tree-active-focused){outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-tree .ant-tree-list-holder-inner{align-items:flex-start;}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner{align-items:stretch;}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-node-content-wrapper{flex:auto;}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-treenode.dragging{position:relative;}.ant-tree.ant-tree-block-node .ant-tree-list-holder-inner .ant-tree-treenode.dragging:after{position:absolute;top:0;inset-inline-end:0;bottom:4px;inset-inline-start:0;border:1px solid #037003;opacity:0;animation-name:ant-tree-node-fx-do-not-use;animation-duration:0.3s;animation-play-state:running;animation-fill-mode:forwards;content:\\"\\";pointer-events:none;}.ant-tree .ant-tree-treenode{display:flex;align-items:flex-start;padding:0 0 4px 0;outline:none;}.ant-tree .ant-tree-treenode-rtl{direction:rtl;}.ant-tree .ant-tree-treenode-disabled .ant-tree-node-content-wrapper{color:rgba(255, 255, 255, 0.25);cursor:not-allowed;}.ant-tree .ant-tree-treenode-disabled .ant-tree-node-content-wrapper:hover{background:transparent;}.ant-tree .ant-tree-treenode-active .ant-tree-node-content-wrapper{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-tree .ant-tree-treenode:not(.ant-tree-treenode-disabled).filter-node .ant-tree-title{color:inherit;font-weight:500;}.ant-tree .ant-tree-treenode-draggable .ant-tree-draggable-icon{width:24px;line-height:24px;text-align:center;visibility:visible;opacity:0.2;transition:opacity 0.3s;}.ant-tree-treenode:hover .ant-tree .ant-tree-treenode-draggable .ant-tree-draggable-icon{opacity:0.45;}.ant-tree .ant-tree-treenode-draggable.ant-tree-treenode-disabled .ant-tree-draggable-icon{visibility:hidden;}.ant-tree .ant-tree-indent{align-self:stretch;white-space:nowrap;user-select:none;}.ant-tree .ant-tree-indent-unit{display:inline-block;width:24px;}.ant-tree .ant-tree-draggable-icon{visibility:hidden;}.ant-tree .ant-tree-switcher{position:relative;flex:none;align-self:stretch;width:24px;margin:0;line-height:24px;text-align:center;cursor:pointer;user-select:none;}.ant-tree .ant-tree-switcher .ant-tree-switcher-icon{display:inline-block;font-size:10px;vertical-align:baseline;}.ant-tree .ant-tree-switcher .ant-tree-switcher-icon svg{transition:transform 0.3s;}.ant-tree .ant-tree-switcher-noop{cursor:default;}.ant-tree .ant-tree-switcher_close .ant-tree-switcher-icon svg{transform:rotate(-90deg);}.ant-tree .ant-tree-switcher-loading-icon{color:#037003;}.ant-tree .ant-tree-switcher-leaf-line{position:relative;z-index:1;display:inline-block;width:100%;height:100%;}.ant-tree .ant-tree-switcher-leaf-line:before{position:absolute;top:0;inset-inline-end:12px;bottom:-4px;margin-inline-start:-1px;border-inline-end:1px solid #424242;content:\\"\\";}.ant-tree .ant-tree-switcher-leaf-line:after{position:absolute;width:9.600000000000001px;height:12px;border-bottom:1px solid #424242;content:\\"\\";}.ant-tree .ant-tree-checkbox{top:initial;margin-inline-end:8px;margin-block-start:4px;}.ant-tree .ant-tree-node-content-wrapper,.ant-tree .ant-tree-checkbox+span{position:relative;z-index:auto;min-height:24px;margin:0;padding:0 4px;color:inherit;line-height:24px;background:transparent;border-radius:6px;cursor:pointer;transition:all 0.2s,border 0s,line-height 0s,box-shadow 0s;}.ant-tree .ant-tree-node-content-wrapper:hover,.ant-tree .ant-tree-checkbox+span:hover{background-color:rgba(255, 255, 255, 0.08);}.ant-tree .ant-tree-node-content-wrapper.ant-tree-node-selected,.ant-tree .ant-tree-checkbox+span.ant-tree-node-selected{background-color:#111911;}.ant-tree .ant-tree-node-content-wrapper .ant-tree-iconEle,.ant-tree .ant-tree-checkbox+span .ant-tree-iconEle{display:inline-block;width:24px;height:24px;line-height:24px;text-align:center;vertical-align:top;}.ant-tree .ant-tree-node-content-wrapper .ant-tree-iconEle:empty,.ant-tree .ant-tree-checkbox+span .ant-tree-iconEle:empty{display:none;}.ant-tree .ant-tree-unselectable .ant-tree-node-content-wrapper:hover{background-color:transparent;}.ant-tree .ant-tree-node-content-wrapper{line-height:24px;user-select:none;}.ant-tree .ant-tree-node-content-wrapper .ant-tree-drop-indicator{position:absolute;z-index:1;height:2px;background-color:#037003;border-radius:1px;pointer-events:none;}.ant-tree .ant-tree-node-content-wrapper .ant-tree-drop-indicator:after{position:absolute;top:-3px;inset-inline-start:-6px;width:8px;height:8px;background-color:transparent;border:2px solid #037003;border-radius:50%;content:\\"\\";}.ant-tree .ant-tree-treenode.drop-container >[draggable]{box-shadow:0 0 0 2px #037003;}.ant-tree-show-line .ant-tree-indent-unit{position:relative;height:100%;}.ant-tree-show-line .ant-tree-indent-unit:before{position:absolute;top:0;inset-inline-end:12px;bottom:-4px;border-inline-end:1px solid #424242;content:\\"\\";}.ant-tree-show-line .ant-tree-indent-unit-end:before{display:none;}.ant-tree-show-line .ant-tree-switcher{background:transparent;}.ant-tree-show-line .ant-tree-switcher-line-icon{vertical-align:-0.15em;}.ant-tree .ant-tree-treenode-leaf-last .ant-tree-switcher-leaf-line:before{top:auto!important;bottom:auto!important;height:12px!important;}.ant-tree.ant-tree-directory .ant-tree-treenode{position:relative;}.ant-tree.ant-tree-directory .ant-tree-treenode:before{position:absolute;top:0;inset-inline-end:0;bottom:4px;inset-inline-start:0;transition:background-color 0.2s;content:\\"\\";pointer-events:none;}.ant-tree.ant-tree-directory .ant-tree-treenode:hover:before{background:rgba(255, 255, 255, 0.08);}.ant-tree.ant-tree-directory .ant-tree-treenode >*{z-index:1;}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-switcher{transition:color 0.2s;}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper{border-radius:0;user-select:none;}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper:hover{background:transparent;}.ant-tree.ant-tree-directory .ant-tree-treenode .ant-tree-node-content-wrapper.ant-tree-node-selected{color:#fff;background:transparent;}.ant-tree.ant-tree-directory .ant-tree-treenode-selected:hover::before,.ant-tree.ant-tree-directory .ant-tree-treenode-selected::before{background:#037003;}.ant-tree.ant-tree-directory .ant-tree-treenode-selected .ant-tree-switcher{color:#fff;}.ant-tree.ant-tree-directory .ant-tree-treenode-selected .ant-tree-node-content-wrapper{color:#fff;background:transparent;}.ant-tree .ant-motion-collapse-legacy{overflow:hidden;}.ant-tree .ant-motion-collapse-legacy-active{transition:height 0.2s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.2s cubic-bezier(0.645, 0.045, 0.355, 1)!important;}.ant-tree .ant-motion-collapse{overflow:hidden;transition:height 0.2s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.2s cubic-bezier(0.645, 0.045, 0.355, 1)!important;}@keyframes ant-tree-node-fx-do-not-use{0%{opacity:0;}100%{opacity:1;}}[class^=\\"ant-tree-select\\"],[class*=\\" ant-tree-select\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-tree-select\\"]::before,[class*=\\" ant-tree-select\\"]::before,[class^=\\"ant-tree-select\\"]::after,[class*=\\" ant-tree-select\\"]::after{box-sizing:border-box;}[class^=\\"ant-tree-select\\"] [class^=\\"ant-tree-select\\"],[class*=\\" ant-tree-select\\"] [class^=\\"ant-tree-select\\"],[class^=\\"ant-tree-select\\"] [class*=\\" ant-tree-select\\"],[class*=\\" ant-tree-select\\"] [class*=\\" ant-tree-select\\"]{box-sizing:border-box;}[class^=\\"ant-tree-select\\"] [class^=\\"ant-tree-select\\"]::before,[class*=\\" ant-tree-select\\"] [class^=\\"ant-tree-select\\"]::before,[class^=\\"ant-tree-select\\"] [class*=\\" ant-tree-select\\"]::before,[class*=\\" ant-tree-select\\"] [class*=\\" ant-tree-select\\"]::before,[class^=\\"ant-tree-select\\"] [class^=\\"ant-tree-select\\"]::after,[class*=\\" ant-tree-select\\"] [class^=\\"ant-tree-select\\"]::after,[class^=\\"ant-tree-select\\"] [class*=\\" ant-tree-select\\"]::after,[class*=\\" ant-tree-select\\"] [class*=\\" ant-tree-select\\"]::after{box-sizing:border-box;}.ant-tree-select-dropdown{padding:8px 4px;}.ant-tree-select-dropdown .ant-select-tree{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';background:#1f1f1f;border-radius:6px;transition:background-color 0.3s;}.ant-tree-select-dropdown .ant-select-tree.ant-select-tree-rtl .ant-select-tree-switcher_close .ant-select-tree-switcher-icon svg{transform:rotate(90deg);}.ant-tree-select-dropdown .ant-select-tree-focused:not(:hover):not(.ant-select-tree-active-focused){outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-list-holder-inner{align-items:flex-start;}.ant-tree-select-dropdown .ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner{align-items:stretch;}.ant-tree-select-dropdown .ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-node-content-wrapper{flex:auto;}.ant-tree-select-dropdown .ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-treenode.dragging{position:relative;}.ant-tree-select-dropdown .ant-select-tree.ant-select-tree-block-node .ant-select-tree-list-holder-inner .ant-select-tree-treenode.dragging:after{position:absolute;top:0;inset-inline-end:0;bottom:4px;inset-inline-start:0;border:1px solid #037003;opacity:0;animation-name:ant-tree-node-fx-do-not-use;animation-duration:0.3s;animation-play-state:running;animation-fill-mode:forwards;content:\\"\\";pointer-events:none;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-treenode{display:flex;align-items:flex-start;padding:0 0 4px 0;outline:none;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-treenode-rtl{direction:rtl;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-treenode-disabled .ant-select-tree-node-content-wrapper{color:rgba(255, 255, 255, 0.25);cursor:not-allowed;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-treenode-disabled .ant-select-tree-node-content-wrapper:hover{background:transparent;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-treenode-active .ant-select-tree-node-content-wrapper{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-treenode:not(.ant-select-tree-treenode-disabled).filter-node .ant-select-tree-title{color:inherit;font-weight:500;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-treenode-draggable .ant-select-tree-draggable-icon{width:24px;line-height:24px;text-align:center;visibility:visible;opacity:0.2;transition:opacity 0.3s;}.ant-select-tree-treenode:hover .ant-tree-select-dropdown .ant-select-tree .ant-select-tree-treenode-draggable .ant-select-tree-draggable-icon{opacity:0.45;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-treenode-draggable.ant-select-tree-treenode-disabled .ant-select-tree-draggable-icon{visibility:hidden;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-indent{align-self:stretch;white-space:nowrap;user-select:none;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-indent-unit{display:inline-block;width:24px;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-draggable-icon{visibility:hidden;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-switcher{position:relative;flex:none;align-self:stretch;width:24px;margin:0;line-height:24px;text-align:center;cursor:pointer;user-select:none;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-switcher .ant-select-tree-switcher-icon{display:inline-block;font-size:10px;vertical-align:baseline;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-switcher .ant-select-tree-switcher-icon svg{transition:transform 0.3s;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-switcher-noop{cursor:default;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-switcher_close .ant-select-tree-switcher-icon svg{transform:rotate(-90deg);}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-switcher-loading-icon{color:#037003;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-switcher-leaf-line{position:relative;z-index:1;display:inline-block;width:100%;height:100%;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-switcher-leaf-line:before{position:absolute;top:0;inset-inline-end:12px;bottom:-4px;margin-inline-start:-1px;border-inline-end:1px solid #424242;content:\\"\\";}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-switcher-leaf-line:after{position:absolute;width:9.600000000000001px;height:12px;border-bottom:1px solid #424242;content:\\"\\";}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-checkbox{top:initial;margin-inline-end:8px;margin-block-start:4px;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-node-content-wrapper,.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-checkbox+span{position:relative;z-index:auto;min-height:24px;margin:0;padding:0 4px;color:inherit;line-height:24px;background:transparent;border-radius:6px;cursor:pointer;transition:all 0.2s,border 0s,line-height 0s,box-shadow 0s;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-node-content-wrapper:hover,.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-checkbox+span:hover{background-color:rgba(255, 255, 255, 0.08);}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-node-content-wrapper.ant-select-tree-node-selected,.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-checkbox+span.ant-select-tree-node-selected{background-color:#111911;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-node-content-wrapper .ant-select-tree-iconEle,.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-checkbox+span .ant-select-tree-iconEle{display:inline-block;width:24px;height:24px;line-height:24px;text-align:center;vertical-align:top;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-node-content-wrapper .ant-select-tree-iconEle:empty,.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-checkbox+span .ant-select-tree-iconEle:empty{display:none;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-unselectable .ant-select-tree-node-content-wrapper:hover{background-color:transparent;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-node-content-wrapper{line-height:24px;user-select:none;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-node-content-wrapper .ant-select-tree-drop-indicator{position:absolute;z-index:1;height:2px;background-color:#037003;border-radius:1px;pointer-events:none;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-node-content-wrapper .ant-select-tree-drop-indicator:after{position:absolute;top:-3px;inset-inline-start:-6px;width:8px;height:8px;background-color:transparent;border:2px solid #037003;border-radius:50%;content:\\"\\";}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-treenode.drop-container >[draggable]{box-shadow:0 0 0 2px #037003;}.ant-tree-select-dropdown .ant-select-tree-show-line .ant-select-tree-indent-unit{position:relative;height:100%;}.ant-tree-select-dropdown .ant-select-tree-show-line .ant-select-tree-indent-unit:before{position:absolute;top:0;inset-inline-end:12px;bottom:-4px;border-inline-end:1px solid #424242;content:\\"\\";}.ant-tree-select-dropdown .ant-select-tree-show-line .ant-select-tree-indent-unit-end:before{display:none;}.ant-tree-select-dropdown .ant-select-tree-show-line .ant-select-tree-switcher{background:transparent;}.ant-tree-select-dropdown .ant-select-tree-show-line .ant-select-tree-switcher-line-icon{vertical-align:-0.15em;}.ant-tree-select-dropdown .ant-select-tree .ant-select-tree-treenode-leaf-last .ant-select-tree-switcher-leaf-line:before{top:auto!important;bottom:auto!important;height:12px!important;}.ant-tree-select-dropdown .ant-select-tree.ant-select-tree-directory .ant-select-tree-treenode{position:relative;}.ant-tree-select-dropdown .ant-select-tree.ant-select-tree-directory .ant-select-tree-treenode:before{position:absolute;top:0;inset-inline-end:0;bottom:4px;inset-inline-start:0;transition:background-color 0.2s;content:\\"\\";pointer-events:none;}.ant-tree-select-dropdown .ant-select-tree.ant-select-tree-directory .ant-select-tree-treenode:hover:before{background:rgba(255, 255, 255, 0.08);}.ant-tree-select-dropdown .ant-select-tree.ant-select-tree-directory .ant-select-tree-treenode >*{z-index:1;}.ant-tree-select-dropdown .ant-select-tree.ant-select-tree-directory .ant-select-tree-treenode .ant-select-tree-switcher{transition:color 0.2s;}.ant-tree-select-dropdown .ant-select-tree.ant-select-tree-directory .ant-select-tree-treenode .ant-select-tree-node-content-wrapper{border-radius:0;user-select:none;}.ant-tree-select-dropdown .ant-select-tree.ant-select-tree-directory .ant-select-tree-treenode .ant-select-tree-node-content-wrapper:hover{background:transparent;}.ant-tree-select-dropdown .ant-select-tree.ant-select-tree-directory .ant-select-tree-treenode .ant-select-tree-node-content-wrapper.ant-select-tree-node-selected{color:#fff;background:transparent;}.ant-tree-select-dropdown .ant-select-tree.ant-select-tree-directory .ant-select-tree-treenode-selected:hover::before,.ant-tree-select-dropdown .ant-select-tree.ant-select-tree-directory .ant-select-tree-treenode-selected::before{background:#037003;}.ant-tree-select-dropdown .ant-select-tree.ant-select-tree-directory .ant-select-tree-treenode-selected .ant-select-tree-switcher{color:#fff;}.ant-tree-select-dropdown .ant-select-tree.ant-select-tree-directory .ant-select-tree-treenode-selected .ant-select-tree-node-content-wrapper{color:#fff;background:transparent;}.ant-tree-select-dropdown .ant-select-tree{border-radius:0;}.ant-tree-select-dropdown .ant-select-tree-list-holder-inner{align-items:stretch;}.ant-tree-select-dropdown .ant-select-tree-list-holder-inner .ant-select-tree-treenode .ant-select-tree-node-content-wrapper{flex:auto;}.ant-tree-select-dropdown .ant-select-tree-checkbox-group{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';display:inline-flex;flex-wrap:wrap;column-gap:8px;}.ant-tree-select-dropdown .ant-select-tree-checkbox-group >.ant-row{flex:1;}.ant-tree-select-dropdown .ant-select-tree-checkbox-wrapper{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';display:inline-flex;align-items:baseline;cursor:pointer;}.ant-tree-select-dropdown .ant-select-tree-checkbox-wrapper:after{display:inline-block;width:0;overflow:hidden;content:'\\\\a0';}.ant-tree-select-dropdown .ant-select-tree-checkbox-wrapper+.ant-select-tree-checkbox-wrapper{margin-inline-start:0;}.ant-tree-select-dropdown .ant-select-tree-checkbox-wrapper.ant-select-tree-checkbox-wrapper-in-form-item input[type=\\"checkbox\\"]{width:14px;height:14px;}.ant-tree-select-dropdown .ant-select-tree-checkbox{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1;list-style:none;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';position:relative;white-space:nowrap;cursor:pointer;align-self:center;}.ant-tree-select-dropdown .ant-select-tree-checkbox .ant-select-tree-checkbox-input{position:absolute;inset:0;z-index:1;cursor:pointer;opacity:0;margin:0;}.ant-tree-select-dropdown .ant-select-tree-checkbox .ant-select-tree-checkbox-input:focus-visible+.ant-select-tree-checkbox-inner{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-tree-select-dropdown .ant-select-tree-checkbox .ant-select-tree-checkbox-inner{box-sizing:border-box;position:relative;top:0;inset-inline-start:0;display:block;width:16px;height:16px;direction:ltr;background-color:#141414;border:1px solid #424242;border-radius:4px;border-collapse:separate;transition:all 0.3s;}.ant-tree-select-dropdown .ant-select-tree-checkbox .ant-select-tree-checkbox-inner:after{box-sizing:border-box;position:absolute;top:50%;inset-inline-start:21.5%;display:table;width:5.7142857142857135px;height:9.142857142857142px;border:2px solid #fff;border-top:0;border-inline-start:0;transform:rotate(45deg) scale(0) translate(-50%,-50%);opacity:0;content:\\"\\";transition:all 0.1s cubic-bezier(0.71, -0.46, 0.88, 0.6),opacity 0.1s;}.ant-tree-select-dropdown .ant-select-tree-checkbox+span{padding-inline-start:8px;padding-inline-end:8px;}.ant-tree-select-dropdown .ant-select-tree-checkbox-indeterminate .ant-select-tree-checkbox-inner:after{top:50%;inset-inline-start:50%;width:8px;height:8px;background-color:#037003;border:0;transform:translate(-50%, -50%) scale(1);opacity:1;content:\\"\\";}.ant-tree-select-dropdown .ant-select-tree-checkbox-wrapper:hover .ant-select-tree-checkbox:after{visibility:visible;}.ant-tree-select-dropdown .ant-select-tree-checkbox-wrapper:not(.ant-select-tree-checkbox-wrapper-disabled):hover .ant-select-tree-checkbox-inner,.ant-tree-select-dropdown .ant-select-tree-checkbox:not(.ant-select-tree-checkbox-disabled):hover .ant-select-tree-checkbox-inner{border-color:#037003;}.ant-tree-select-dropdown .ant-select-tree-checkbox-wrapper:not(.ant-select-tree-checkbox-wrapper-disabled):hover .ant-select-tree-checkbox-checked:not(.ant-select-tree-checkbox-disabled) .ant-select-tree-checkbox-inner{background-color:#198016;border-color:transparent;}.ant-tree-select-dropdown .ant-select-tree-checkbox-wrapper:not(.ant-select-tree-checkbox-wrapper-disabled):hover .ant-select-tree-checkbox-checked:not(.ant-select-tree-checkbox-disabled):after{border-color:#198016;}.ant-tree-select-dropdown .ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner{background-color:#037003;border-color:#037003;}.ant-tree-select-dropdown .ant-select-tree-checkbox-checked .ant-select-tree-checkbox-inner:after{opacity:1;transform:rotate(45deg) scale(1) translate(-50%,-50%);transition:all 0.2s cubic-bezier(0.12, 0.4, 0.29, 1.46) 0.1s;}.ant-tree-select-dropdown .ant-select-tree-checkbox-checked:after{position:absolute;top:0;inset-inline-start:0;width:100%;height:100%;border-radius:4px;visibility:hidden;border:2px solid #037003;animation-name:antCheckboxEffect;animation-duration:0.3s;animation-timing-function:ease-in-out;animation-fill-mode:backwards;content:\\"\\";transition:all 0.3s;}.ant-tree-select-dropdown .ant-select-tree-checkbox-wrapper-checked:not(.ant-select-tree-checkbox-wrapper-disabled):hover .ant-select-tree-checkbox-inner,.ant-tree-select-dropdown .ant-select-tree-checkbox-checked:not(.ant-select-tree-checkbox-disabled):hover .ant-select-tree-checkbox-inner{background-color:#198016;border-color:transparent;}.ant-tree-select-dropdown .ant-select-tree-checkbox-wrapper-checked:not(.ant-select-tree-checkbox-wrapper-disabled):hover .ant-select-tree-checkbox:after,.ant-tree-select-dropdown .ant-select-tree-checkbox-checked:not(.ant-select-tree-checkbox-disabled):hover .ant-select-tree-checkbox:after{border-color:#198016;}.ant-tree-select-dropdown .ant-select-tree-checkbox-wrapper-disabled{cursor:not-allowed;}.ant-tree-select-dropdown .ant-select-tree-checkbox-disabled,.ant-tree-select-dropdown .ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-input{cursor:not-allowed;pointer-events:none;}.ant-tree-select-dropdown .ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner{background:rgba(255, 255, 255, 0.08);border-color:#424242;}.ant-tree-select-dropdown .ant-select-tree-checkbox-disabled .ant-select-tree-checkbox-inner:after{border-color:rgba(255, 255, 255, 0.25);}.ant-tree-select-dropdown .ant-select-tree-checkbox-disabled:after{display:none;}.ant-tree-select-dropdown .ant-select-tree-checkbox-disabled+span{color:rgba(255, 255, 255, 0.25);}.ant-tree-select-dropdown .ant-select-tree-checkbox-disabled.ant-select-tree-checkbox-indeterminate .ant-select-tree-checkbox-inner::after{background:rgba(255, 255, 255, 0.25);}.ant-tree-select-dropdown-rtl{direction:rtl;}.ant-tree-select-dropdown-rtl .ant-select-tree-switcher.ant-select-tree-switcher_close .ant-select-tree-switcher-icon svg{transform:rotate(90deg);}[class^=\\"ant-tabs\\"],[class*=\\" ant-tabs\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-tabs\\"]::before,[class*=\\" ant-tabs\\"]::before,[class^=\\"ant-tabs\\"]::after,[class*=\\" ant-tabs\\"]::after{box-sizing:border-box;}[class^=\\"ant-tabs\\"] [class^=\\"ant-tabs\\"],[class*=\\" ant-tabs\\"] [class^=\\"ant-tabs\\"],[class^=\\"ant-tabs\\"] [class*=\\" ant-tabs\\"],[class*=\\" ant-tabs\\"] [class*=\\" ant-tabs\\"]{box-sizing:border-box;}[class^=\\"ant-tabs\\"] [class^=\\"ant-tabs\\"]::before,[class*=\\" ant-tabs\\"] [class^=\\"ant-tabs\\"]::before,[class^=\\"ant-tabs\\"] [class*=\\" ant-tabs\\"]::before,[class*=\\" ant-tabs\\"] [class*=\\" ant-tabs\\"]::before,[class^=\\"ant-tabs\\"] [class^=\\"ant-tabs\\"]::after,[class*=\\" ant-tabs\\"] [class^=\\"ant-tabs\\"]::after,[class^=\\"ant-tabs\\"] [class*=\\" ant-tabs\\"]::after,[class*=\\" ant-tabs\\"] [class*=\\" ant-tabs\\"]::after{box-sizing:border-box;}.ant-tabs-small >.ant-tabs-nav .ant-tabs-tab{padding:8px 0;font-size:14px;}.ant-tabs-large >.ant-tabs-nav .ant-tabs-tab{padding:16px 0;font-size:16px;}.ant-tabs-card.ant-tabs-small >.ant-tabs-nav .ant-tabs-tab{padding:6px 16px;}.ant-tabs-card.ant-tabs-small.ant-tabs-bottom >.ant-tabs-nav .ant-tabs-tab{border-radius:0 0 6px 6px;}.ant-tabs-card.ant-tabs-small.ant-tabs-top >.ant-tabs-nav .ant-tabs-tab{border-radius:6px 6px 0 0;}.ant-tabs-card.ant-tabs-small.ant-tabs-right >.ant-tabs-nav .ant-tabs-tab{border-radius:0 6px 6px 0;}.ant-tabs-card.ant-tabs-small.ant-tabs-left >.ant-tabs-nav .ant-tabs-tab{border-radius:6px 0 0 6px;}.ant-tabs-card.ant-tabs-large >.ant-tabs-nav .ant-tabs-tab{padding:8px 16px 6px;}.ant-tabs-rtl{direction:rtl;}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab{margin:0 0 0 32px;}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .ant-tabs-tab:last-of-type{margin-left:0;}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .anticon{margin-right:0;margin-left:12px;}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .ant-tabs-tab-remove{margin-right:8px;margin-left:-4px;}.ant-tabs-rtl .ant-tabs-nav .ant-tabs-tab .ant-tabs-tab-remove .anticon{margin:0;}.ant-tabs-rtl.ant-tabs-left >.ant-tabs-nav{order:1;}.ant-tabs-rtl.ant-tabs-left >.ant-tabs-content-holder{order:0;}.ant-tabs-rtl.ant-tabs-right >.ant-tabs-nav{order:0;}.ant-tabs-rtl.ant-tabs-right >.ant-tabs-content-holder{order:1;}.ant-tabs-rtl.ant-tabs-card.ant-tabs-top >.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom >.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-top >div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-rtl.ant-tabs-card.ant-tabs-bottom >div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-right:2px;margin-left:0;}.ant-tabs-dropdown-rtl{direction:rtl;}.ant-tabs-menu-item .ant-tabs-dropdown-rtl{text-align:right;}.ant-tabs-top,.ant-tabs-bottom{flex-direction:column;}.ant-tabs-top >.ant-tabs-nav,.ant-tabs-bottom >.ant-tabs-nav,.ant-tabs-top >div>.ant-tabs-nav,.ant-tabs-bottom >div>.ant-tabs-nav{margin:0 0 16px 0;}.ant-tabs-top >.ant-tabs-nav::before,.ant-tabs-bottom >.ant-tabs-nav::before,.ant-tabs-top >div>.ant-tabs-nav::before,.ant-tabs-bottom >div>.ant-tabs-nav::before{position:absolute;right:0;left:0;border-bottom:1px solid rgba(253, 253, 253, 0.12);content:'';}.ant-tabs-top >.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom >.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top >div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom >div>.ant-tabs-nav .ant-tabs-ink-bar{height:2px;}.ant-tabs-top >.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-bottom >.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-top >div>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-bottom >div>.ant-tabs-nav .ant-tabs-ink-bar-animated{transition:width 0.3s,left 0.3s,right 0.3s;}.ant-tabs-top >.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-bottom >.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top >div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-bottom >div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top >.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-bottom >.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-top >div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-bottom >div>.ant-tabs-nav .ant-tabs-nav-wrap::after{top:0;bottom:0;width:32px;}.ant-tabs-top >.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-bottom >.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-top >div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-bottom >div>.ant-tabs-nav .ant-tabs-nav-wrap::before{left:0;box-shadow:inset 10px 0 8px -8px rgba(0, 0, 0, 0.08);}.ant-tabs-top >.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-bottom >.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-top >div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-bottom >div>.ant-tabs-nav .ant-tabs-nav-wrap::after{right:0;box-shadow:inset -10px 0 8px -8px rgba(0, 0, 0, 0.08);}.ant-tabs-top >.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-bottom >.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-top >div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before,.ant-tabs-bottom >div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-left::before{opacity:1;}.ant-tabs-top >.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after,.ant-tabs-bottom >.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after,.ant-tabs-top >div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after,.ant-tabs-bottom >div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-right::after{opacity:1;}.ant-tabs-top >.ant-tabs-nav::before,.ant-tabs-top >div>.ant-tabs-nav::before{bottom:0;}.ant-tabs-top >.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-top >div>.ant-tabs-nav .ant-tabs-ink-bar{bottom:0;}.ant-tabs-bottom >.ant-tabs-nav,.ant-tabs-bottom >div>.ant-tabs-nav{order:1;margin-top:16px;margin-bottom:0;}.ant-tabs-bottom >.ant-tabs-nav::before,.ant-tabs-bottom >div>.ant-tabs-nav::before{top:0;}.ant-tabs-bottom >.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-bottom >div>.ant-tabs-nav .ant-tabs-ink-bar{top:0;}.ant-tabs-bottom >.ant-tabs-content-holder,.ant-tabs-bottom >div>.ant-tabs-content-holder{order:0;}.ant-tabs-left >.ant-tabs-nav,.ant-tabs-right >.ant-tabs-nav,.ant-tabs-left >div>.ant-tabs-nav,.ant-tabs-right >div>.ant-tabs-nav{flex-direction:column;min-width:40px;}.ant-tabs-left >.ant-tabs-nav .ant-tabs-tab,.ant-tabs-right >.ant-tabs-nav .ant-tabs-tab,.ant-tabs-left >div>.ant-tabs-nav .ant-tabs-tab,.ant-tabs-right >div>.ant-tabs-nav .ant-tabs-tab{padding:8px 24px;text-align:center;}.ant-tabs-left >.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-right >.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-left >div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-right >div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin:16px 0 0 0;}.ant-tabs-left >.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-right >.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-left >div>.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs-right >div>.ant-tabs-nav .ant-tabs-nav-wrap{flex-direction:column;}.ant-tabs-left >.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right >.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-left >div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right >div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-left >.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right >.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-left >div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right >div>.ant-tabs-nav .ant-tabs-nav-wrap::after{right:0;left:0;height:32px;}.ant-tabs-left >.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right >.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-left >div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs-right >div>.ant-tabs-nav .ant-tabs-nav-wrap::before{top:0;box-shadow:inset 0 10px 8px -8px rgba(0, 0, 0, 0.08);}.ant-tabs-left >.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right >.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-left >div>.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs-right >div>.ant-tabs-nav .ant-tabs-nav-wrap::after{bottom:0;box-shadow:inset 0 -10px 8px -8px rgba(0, 0, 0, 0.08);}.ant-tabs-left >.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-right >.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-left >div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before,.ant-tabs-right >div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-top::before{opacity:1;}.ant-tabs-left >.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-right >.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-left >div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after,.ant-tabs-right >div>.ant-tabs-nav .ant-tabs-nav-wrap.ant-tabs-nav-wrap-ping-bottom::after{opacity:1;}.ant-tabs-left >.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right >.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-left >div>.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right >div>.ant-tabs-nav .ant-tabs-ink-bar{width:2px;}.ant-tabs-left >.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-right >.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-left >div>.ant-tabs-nav .ant-tabs-ink-bar-animated,.ant-tabs-right >div>.ant-tabs-nav .ant-tabs-ink-bar-animated{transition:height 0.3s,top 0.3s;}.ant-tabs-left >.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-right >.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-left >div>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-right >div>.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs-left >.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-right >.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-left >div>.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs-right >div>.ant-tabs-nav .ant-tabs-nav-operations{flex:1 0 auto;flex-direction:column;}.ant-tabs-left >.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-left >div>.ant-tabs-nav .ant-tabs-ink-bar{right:0;}.ant-tabs-left >.ant-tabs-content-holder,.ant-tabs-left >div>.ant-tabs-content-holder{margin-left:-1px;border-left:1px solid #424242;}.ant-tabs-left >.ant-tabs-content-holder >.ant-tabs-content>.ant-tabs-tabpane,.ant-tabs-left >div>.ant-tabs-content-holder >.ant-tabs-content>.ant-tabs-tabpane{padding-left:24px;}.ant-tabs-right >.ant-tabs-nav,.ant-tabs-right >div>.ant-tabs-nav{order:1;}.ant-tabs-right >.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-right >div>.ant-tabs-nav .ant-tabs-ink-bar{left:0;}.ant-tabs-right >.ant-tabs-content-holder,.ant-tabs-right >div>.ant-tabs-content-holder{order:0;margin-right:-1px;border-right:1px solid #424242;}.ant-tabs-right >.ant-tabs-content-holder >.ant-tabs-content>.ant-tabs-tabpane,.ant-tabs-right >div>.ant-tabs-content-holder >.ant-tabs-content>.ant-tabs-tabpane{padding-right:24px;}.ant-tabs-dropdown{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:absolute;top:-9999px;left:-9999px;z-index:1050;display:block;}.ant-tabs-dropdown-hidden{display:none;}.ant-tabs-dropdown .ant-tabs-dropdown-menu{max-height:200px;margin:0;padding:4px 0;overflow-x:hidden;overflow-y:auto;text-align:left;list-style-type:none;background-color:#141414;background-clip:padding-box;border-radius:8px;outline:none;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-tabs-dropdown .ant-tabs-dropdown-menu-item{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;display:flex;align-items:center;min-width:120px;margin:0;padding:4px 12px;color:rgba(255, 255, 255, 0.85);font-weight:normal;font-size:14px;line-height:1.5714285714285714;cursor:pointer;transition:all 0.3s;}.ant-tabs-dropdown .ant-tabs-dropdown-menu-item >span{flex:1;white-space:nowrap;}.ant-tabs-dropdown .ant-tabs-dropdown-menu-item-remove{flex:none;margin-left:12px;color:rgba(255, 255, 255, 0.45);font-size:12px;background:transparent;border:0;cursor:pointer;}.ant-tabs-dropdown .ant-tabs-dropdown-menu-item-remove:hover{color:#198016;}.ant-tabs-dropdown .ant-tabs-dropdown-menu-item:hover{background:rgba(255, 255, 255, 0.08);}.ant-tabs-dropdown .ant-tabs-dropdown-menu-item-disabled,.ant-tabs-dropdown .ant-tabs-dropdown-menu-item-disabled:hover{color:rgba(255, 255, 255, 0.25);background:transparent;cursor:not-allowed;}.ant-tabs-card >.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card >div>.ant-tabs-nav .ant-tabs-tab{margin:0;padding:8px 16px;background:rgba(255, 255, 255, 0.04);border:1px solid rgba(253, 253, 253, 0.12);transition:all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);}.ant-tabs-card >.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card >div>.ant-tabs-nav .ant-tabs-tab-active{color:#037003;background:#141414;}.ant-tabs-card >.ant-tabs-nav .ant-tabs-ink-bar,.ant-tabs-card >div>.ant-tabs-nav .ant-tabs-ink-bar{visibility:hidden;}.ant-tabs-card.ant-tabs-top >.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-bottom >.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-top >div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-bottom >div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-left:2px;}.ant-tabs-card.ant-tabs-top >.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-top >div>.ant-tabs-nav .ant-tabs-tab{border-radius:8px 8px 0 0;}.ant-tabs-card.ant-tabs-top >.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-top >div>.ant-tabs-nav .ant-tabs-tab-active{border-bottom-color:#141414;}.ant-tabs-card.ant-tabs-bottom >.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-bottom >div>.ant-tabs-nav .ant-tabs-tab{border-radius:0 0 8px 8px;}.ant-tabs-card.ant-tabs-bottom >.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-bottom >div>.ant-tabs-nav .ant-tabs-tab-active{border-top-color:#141414;}.ant-tabs-card.ant-tabs-left >.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-right >.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-left >div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab,.ant-tabs-card.ant-tabs-right >div>.ant-tabs-nav .ant-tabs-tab+.ant-tabs-tab{margin-top:2px;}.ant-tabs-card.ant-tabs-left >.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-left >div>.ant-tabs-nav .ant-tabs-tab{border-radius:8px 0 0 8px;}.ant-tabs-card.ant-tabs-left >.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-left >div>.ant-tabs-nav .ant-tabs-tab-active{border-right-color:#141414;}.ant-tabs-card.ant-tabs-right >.ant-tabs-nav .ant-tabs-tab,.ant-tabs-card.ant-tabs-right >div>.ant-tabs-nav .ant-tabs-tab{border-radius:0 8px 8px 0;}.ant-tabs-card.ant-tabs-right >.ant-tabs-nav .ant-tabs-tab-active,.ant-tabs-card.ant-tabs-right >div>.ant-tabs-nav .ant-tabs-tab-active{border-left-color:#141414;}.ant-tabs{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';display:flex;}.ant-tabs >.ant-tabs-nav,.ant-tabs >div>.ant-tabs-nav{position:relative;display:flex;flex:none;align-items:center;}.ant-tabs >.ant-tabs-nav .ant-tabs-nav-wrap,.ant-tabs >div>.ant-tabs-nav .ant-tabs-nav-wrap{position:relative;display:flex;flex:auto;align-self:stretch;overflow:hidden;white-space:nowrap;transform:translate(0);}.ant-tabs >.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs >div>.ant-tabs-nav .ant-tabs-nav-wrap::before,.ant-tabs >.ant-tabs-nav .ant-tabs-nav-wrap::after,.ant-tabs >div>.ant-tabs-nav .ant-tabs-nav-wrap::after{position:absolute;z-index:1;opacity:0;transition:opacity 0.3s;content:'';pointer-events:none;}.ant-tabs >.ant-tabs-nav .ant-tabs-nav-list,.ant-tabs >div>.ant-tabs-nav .ant-tabs-nav-list{position:relative;display:flex;transition:opacity 0.3s;}.ant-tabs >.ant-tabs-nav .ant-tabs-nav-operations,.ant-tabs >div>.ant-tabs-nav .ant-tabs-nav-operations{display:flex;align-self:stretch;}.ant-tabs >.ant-tabs-nav .ant-tabs-nav-operations-hidden,.ant-tabs >div>.ant-tabs-nav .ant-tabs-nav-operations-hidden{position:absolute;visibility:hidden;pointer-events:none;}.ant-tabs >.ant-tabs-nav .ant-tabs-nav-more,.ant-tabs >div>.ant-tabs-nav .ant-tabs-nav-more{position:relative;padding:8px 16px;background:transparent;border:0;}.ant-tabs >.ant-tabs-nav .ant-tabs-nav-more::after,.ant-tabs >div>.ant-tabs-nav .ant-tabs-nav-more::after{position:absolute;right:0;bottom:0;left:0;height:5px;transform:translateY(100%);content:'';}.ant-tabs >.ant-tabs-nav .ant-tabs-nav-add,.ant-tabs >div>.ant-tabs-nav .ant-tabs-nav-add{min-width:40px;margin-left:2px;padding:0 8px;background:transparent;border:1px solid rgba(253, 253, 253, 0.12);border-radius:8px 8px 0 0;outline:none;cursor:pointer;color:rgba(255, 255, 255, 0.85);transition:all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);}.ant-tabs >.ant-tabs-nav .ant-tabs-nav-add:hover,.ant-tabs >div>.ant-tabs-nav .ant-tabs-nav-add:hover{color:#198016;}.ant-tabs >.ant-tabs-nav .ant-tabs-nav-add:active,.ant-tabs >div>.ant-tabs-nav .ant-tabs-nav-add:active,.ant-tabs >.ant-tabs-nav .ant-tabs-nav-add:focus:not(:focus-visible),.ant-tabs >div>.ant-tabs-nav .ant-tabs-nav-add:focus:not(:focus-visible){color:#075a07;}.ant-tabs >.ant-tabs-nav .ant-tabs-nav-add:focus-visible,.ant-tabs >div>.ant-tabs-nav .ant-tabs-nav-add:focus-visible{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-tabs .ant-tabs-extra-content{flex:none;}.ant-tabs .ant-tabs-ink-bar{position:absolute;background:#037003;pointer-events:none;}.ant-tabs .ant-tabs-tab{position:relative;display:inline-flex;align-items:center;padding:12px 0;font-size:14px;background:transparent;border:0;outline:none;cursor:pointer;}.ant-tabs .ant-tabs-tab-btn:focus:not(:focus-visible),.ant-tabs .ant-tabs-tab-remove:focus:not(:focus-visible),.ant-tabs .ant-tabs-tab-btn:active,.ant-tabs .ant-tabs-tab-remove:active{color:#075a07;}.ant-tabs .ant-tabs-tab-btn:focus-visible,.ant-tabs .ant-tabs-tab-remove:focus-visible{outline:2px solid #0e340e;outline-offset:1px;transition:outline-offset 0s,outline 0s;}.ant-tabs .ant-tabs-tab-btn{outline:none;transition:all 0.3s;}.ant-tabs .ant-tabs-tab-remove{flex:none;margin-right:-4px;margin-left:8px;color:rgba(255, 255, 255, 0.45);font-size:12px;background:transparent;border:none;outline:none;cursor:pointer;transition:all 0.3s;}.ant-tabs .ant-tabs-tab-remove:hover{color:rgba(255, 255, 255, 0.85);}.ant-tabs .ant-tabs-tab:hover{color:#198016;}.ant-tabs .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{color:#037003;text-shadow:0 0 0.25px currentcolor;}.ant-tabs .ant-tabs-tab.ant-tabs-tab-disabled{color:rgba(255, 255, 255, 0.25);cursor:not-allowed;}.ant-tabs .ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-btn:focus,.ant-tabs .ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-remove:focus,.ant-tabs .ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-tab-btn:active,.ant-tabs .ant-tabs-tab.ant-tabs-tab-disabled .ant-tabs-remove:active{color:rgba(255, 255, 255, 0.25);}.ant-tabs .ant-tabs-tab .ant-tabs-tab-remove .anticon{margin:0;}.ant-tabs .ant-tabs-tab .anticon{margin-right:12px;}.ant-tabs .ant-tabs-tab+.ant-tabs-tab{margin:0 0 0 32px;}.ant-tabs .ant-tabs-content{position:relative;display:flex;width:100%;}.ant-tabs .ant-tabs-content-animated{transition:margin 0.3s;}.ant-tabs .ant-tabs-content-holder{flex:auto;min-width:0;min-height:0;}.ant-tabs .ant-tabs-tabpane{outline:none;flex:none;width:100%;}.ant-tabs-centered >.ant-tabs-nav .ant-tabs-nav-wrap:not([class*='.ant-tabs-nav-wrap-ping']),.ant-tabs-centered >div>.ant-tabs-nav .ant-tabs-nav-wrap:not([class*='.ant-tabs-nav-wrap-ping']){justify-content:center;}.ant-tabs .ant-tabs-switch-appear,.ant-tabs .ant-tabs-switch-enter{transition:none;}.ant-tabs .ant-tabs-switch-appear-start,.ant-tabs .ant-tabs-switch-enter-start{opacity:0;}.ant-tabs .ant-tabs-switch-appear-active,.ant-tabs .ant-tabs-switch-enter-active{opacity:1;transition:opacity 0.3s;}.ant-tabs .ant-tabs-switch-leave{position:absolute;transition:none;inset:0;}.ant-tabs .ant-tabs-switch-leave-start{opacity:1;}.ant-tabs .ant-tabs-switch-leave-active{opacity:0;transition:opacity 0.3s;}.ant-slide-up-enter,.ant-slide-up-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-slide-up-leave{animation-duration:0.2s;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:cubic-bezier(0.23, 1, 0.32, 1);}.ant-slide-up-leave{animation-timing-function:cubic-bezier(0.755, 0.05, 0.855, 0.06);}.ant-slide-down-enter,.ant-slide-down-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}.ant-slide-down-leave{animation-duration:0.2s;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:cubic-bezier(0.23, 1, 0.32, 1);}.ant-slide-down-leave{animation-timing-function:cubic-bezier(0.755, 0.05, 0.855, 0.06);}[class^=\\"ant-tag\\"],[class*=\\" ant-tag\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-tag\\"]::before,[class*=\\" ant-tag\\"]::before,[class^=\\"ant-tag\\"]::after,[class*=\\" ant-tag\\"]::after{box-sizing:border-box;}[class^=\\"ant-tag\\"] [class^=\\"ant-tag\\"],[class*=\\" ant-tag\\"] [class^=\\"ant-tag\\"],[class^=\\"ant-tag\\"] [class*=\\" ant-tag\\"],[class*=\\" ant-tag\\"] [class*=\\" ant-tag\\"]{box-sizing:border-box;}[class^=\\"ant-tag\\"] [class^=\\"ant-tag\\"]::before,[class*=\\" ant-tag\\"] [class^=\\"ant-tag\\"]::before,[class^=\\"ant-tag\\"] [class*=\\" ant-tag\\"]::before,[class*=\\" ant-tag\\"] [class*=\\" ant-tag\\"]::before,[class^=\\"ant-tag\\"] [class^=\\"ant-tag\\"]::after,[class*=\\" ant-tag\\"] [class^=\\"ant-tag\\"]::after,[class^=\\"ant-tag\\"] [class*=\\" ant-tag\\"]::after,[class*=\\" ant-tag\\"] [class*=\\" ant-tag\\"]::after{box-sizing:border-box;}.ant-tag{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:12px;line-height:20px;list-style:none;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';display:inline-block;height:auto;margin-inline-end:8px;padding-inline:7px;white-space:nowrap;background:rgba(255, 255, 255, 0.04);border:1px solid #424242;border-radius:4px;opacity:1;transition:all 0.2s;text-align:start;}.ant-tag.ant-tag-rtl{direction:rtl;}.ant-tag,.ant-tag a,.ant-tag a:hover{color:rgba(255, 255, 255, 0.85);}.ant-tag .ant-tag-close-icon{margin-inline-start:3px;color:rgba(255, 255, 255, 0.45);font-size:10px;cursor:pointer;transition:all 0.2s;}.ant-tag .ant-tag-close-icon:hover{color:rgba(255, 255, 255, 0.85);}.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:#fff;}.ant-tag-checkable{background-color:transparent;border-color:transparent;cursor:pointer;}.ant-tag-checkable:not(.ant-tag-checkable-checked):hover{color:#037003;background-color:rgba(255, 255, 255, 0.12);}.ant-tag-checkable:active,.ant-tag-checkable-checked{color:#fff;}.ant-tag-checkable-checked{background-color:#037003;}.ant-tag-checkable-checked:hover{background-color:#198016;}.ant-tag-checkable:active{background-color:#075a07;}.ant-tag-hidden{display:none;}.ant-tag >.anticon+span,.ant-tag >span+.anticon{margin-inline-start:7px;}.ant-tag-borderless{border-color:transparent;background:rgba(255, 255, 255, 0.08);}.ant-tag-blue{color:#3c89e8;background:#111a2c;border-color:#15325b;}.ant-tag-blue-inverse{color:#fff;background:#1668dc;border-color:#1668dc;}.ant-tag-blue.ant-tag-borderless{border-color:transparent;}.ant-tag-purple{color:#854eca;background:#1a1325;border-color:#301c4d;}.ant-tag-purple-inverse{color:#fff;background:#642ab5;border-color:#642ab5;}.ant-tag-purple.ant-tag-borderless{border-color:transparent;}.ant-tag-cyan{color:#33bcb7;background:#112123;border-color:#144848;}.ant-tag-cyan-inverse{color:#fff;background:#13a8a8;border-color:#13a8a8;}.ant-tag-cyan.ant-tag-borderless{border-color:transparent;}.ant-tag-green{color:#6abe39;background:#162312;border-color:#274916;}.ant-tag-green-inverse{color:#fff;background:#49aa19;border-color:#49aa19;}.ant-tag-green.ant-tag-borderless{border-color:transparent;}.ant-tag-magenta{color:#e0529c;background:#291321;border-color:#551c3b;}.ant-tag-magenta-inverse{color:#fff;background:#cb2b83;border-color:#cb2b83;}.ant-tag-magenta.ant-tag-borderless{border-color:transparent;}.ant-tag-pink{color:#e0529c;background:#291321;border-color:#551c3b;}.ant-tag-pink-inverse{color:#fff;background:#cb2b83;border-color:#cb2b83;}.ant-tag-pink.ant-tag-borderless{border-color:transparent;}.ant-tag-red{color:#e84749;background:#2a1215;border-color:#58181c;}.ant-tag-red-inverse{color:#fff;background:#d32029;border-color:#d32029;}.ant-tag-red.ant-tag-borderless{border-color:transparent;}.ant-tag-orange{color:#e89a3c;background:#2b1d11;border-color:#593815;}.ant-tag-orange-inverse{color:#fff;background:#d87a16;border-color:#d87a16;}.ant-tag-orange.ant-tag-borderless{border-color:transparent;}.ant-tag-yellow{color:#e8d639;background:#2b2611;border-color:#595014;}.ant-tag-yellow-inverse{color:#fff;background:#d8bd14;border-color:#d8bd14;}.ant-tag-yellow.ant-tag-borderless{border-color:transparent;}.ant-tag-volcano{color:#e87040;background:#2b1611;border-color:#592716;}.ant-tag-volcano-inverse{color:#fff;background:#d84a1b;border-color:#d84a1b;}.ant-tag-volcano.ant-tag-borderless{border-color:transparent;}.ant-tag-geekblue{color:#5273e0;background:#131629;border-color:#1c2755;}.ant-tag-geekblue-inverse{color:#fff;background:#2b4acb;border-color:#2b4acb;}.ant-tag-geekblue.ant-tag-borderless{border-color:transparent;}.ant-tag-lime{color:#a9d134;background:#1f2611;border-color:#3e4f13;}.ant-tag-lime-inverse{color:#fff;background:#8bbb11;border-color:#8bbb11;}.ant-tag-lime.ant-tag-borderless{border-color:transparent;}.ant-tag-gold{color:#e8b339;background:#2b2111;border-color:#594214;}.ant-tag-gold-inverse{color:#fff;background:#d89614;border-color:#d89614;}.ant-tag-gold.ant-tag-borderless{border-color:transparent;}.ant-tag-success{color:#49aa19;background:#162312;border-color:#274916;}.ant-tag-success.ant-tag-borderless{border-color:transparent;}.ant-tag-processing{color:#1668dc;background:#111a2c;border-color:#15325b;}.ant-tag-processing.ant-tag-borderless{border-color:transparent;}.ant-tag-error{color:#dc4446;background:#2c1618;border-color:#5b2526;}.ant-tag-error.ant-tag-borderless{border-color:transparent;}.ant-tag-warning{color:#d89614;background:#2b2111;border-color:#594214;}.ant-tag-warning.ant-tag-borderless{border-color:transparent;}[class^=\\"ant-timeline\\"],[class*=\\" ant-timeline\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-timeline\\"]::before,[class*=\\" ant-timeline\\"]::before,[class^=\\"ant-timeline\\"]::after,[class*=\\" ant-timeline\\"]::after{box-sizing:border-box;}[class^=\\"ant-timeline\\"] [class^=\\"ant-timeline\\"],[class*=\\" ant-timeline\\"] [class^=\\"ant-timeline\\"],[class^=\\"ant-timeline\\"] [class*=\\" ant-timeline\\"],[class*=\\" ant-timeline\\"] [class*=\\" ant-timeline\\"]{box-sizing:border-box;}[class^=\\"ant-timeline\\"] [class^=\\"ant-timeline\\"]::before,[class*=\\" ant-timeline\\"] [class^=\\"ant-timeline\\"]::before,[class^=\\"ant-timeline\\"] [class*=\\" ant-timeline\\"]::before,[class*=\\" ant-timeline\\"] [class*=\\" ant-timeline\\"]::before,[class^=\\"ant-timeline\\"] [class^=\\"ant-timeline\\"]::after,[class*=\\" ant-timeline\\"] [class^=\\"ant-timeline\\"]::after,[class^=\\"ant-timeline\\"] [class*=\\" ant-timeline\\"]::after,[class*=\\" ant-timeline\\"] [class*=\\" ant-timeline\\"]::after{box-sizing:border-box;}.ant-timeline{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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-timeline .ant-timeline-item{position:relative;margin:0;padding-bottom:20px;font-size:14px;list-style:none;}.ant-timeline .ant-timeline-item-tail{position:absolute;inset-block-start:10px;inset-inline-start:4px;height:calc(100% - 10px);border-inline-start:2px solid rgba(253, 253, 253, 0.12);}.ant-timeline .ant-timeline-item-pending .ant-timeline-item-head{font-size:12px;background-color:transparent;}.ant-timeline .ant-timeline-item-pending .ant-timeline-item-tail{display:none;}.ant-timeline .ant-timeline-item-head{position:absolute;width:10px;height:10px;background-color:#141414;border:3px solid transparent;border-radius:50%;}.ant-timeline .ant-timeline-item-head-blue{color:#037003;border-color:#037003;}.ant-timeline .ant-timeline-item-head-red{color:#dc4446;border-color:#dc4446;}.ant-timeline .ant-timeline-item-head-green{color:#49aa19;border-color:#49aa19;}.ant-timeline .ant-timeline-item-head-gray{color:rgba(255, 255, 255, 0.25);border-color:rgba(255, 255, 255, 0.25);}.ant-timeline .ant-timeline-item-head-custom{position:absolute;inset-block-start:5px;inset-inline-start:5px;width:auto;height:auto;margin-block-start:0;padding-block:4px;line-height:1;text-align:center;border:0;border-radius:0;transform:translate(-50%, -50%);}.ant-timeline .ant-timeline-item-content{position:relative;inset-block-start:-7px;margin-inline-start:26px;margin-inline-end:0;margin-block-start:0;margin-block-end:0;word-break:break-word;}.ant-timeline .ant-timeline-item-last >.ant-timeline-item-tail{display:none;}.ant-timeline .ant-timeline-item-last >.ant-timeline-item-content{min-height:48px;}.ant-timeline.ant-timeline-alternate .ant-timeline-item-tail,.ant-timeline.ant-timeline-right .ant-timeline-item-tail,.ant-timeline.ant-timeline-label .ant-timeline-item-tail,.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-head,.ant-timeline.ant-timeline-label .ant-timeline-item-head,.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom{inset-inline-start:50%;}.ant-timeline.ant-timeline-alternate .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-head,.ant-timeline.ant-timeline-label .ant-timeline-item-head{margin-inline-start:-4px;}.ant-timeline.ant-timeline-alternate .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-right .ant-timeline-item-head-custom,.ant-timeline.ant-timeline-label .ant-timeline-item-head-custom{margin-inline-start:1px;}.ant-timeline.ant-timeline-alternate .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline.ant-timeline-right .ant-timeline-item-left .ant-timeline-item-content,.ant-timeline.ant-timeline-label .ant-timeline-item-left .ant-timeline-item-content{inset-inline-start:calc(50% - 4px);width:calc(50% - 12px);text-align:start;}.ant-timeline.ant-timeline-alternate .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content,.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-content{width:calc(50% - 12px);margin:0;text-align:end;}.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-tail,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head,.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-head-custom{inset-inline-start:calc(100% - 6px);}.ant-timeline.ant-timeline-right .ant-timeline-item-right .ant-timeline-item-content{width:calc(100% - 18px);}.ant-timeline.ant-timeline-pending .ant-timeline-item-last .ant-timeline-item-tail{display:block;height:calc(100% - 16px);border-inline-start:2px dotted rgba(253, 253, 253, 0.12);}.ant-timeline.ant-timeline-reverse .ant-timeline-item-last .ant-timeline-item-tail{display:none;}.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-tail{inset-block-start:16px;display:block;height:calc(100% - 16px);border-inline-start:2px dotted rgba(253, 253, 253, 0.12);}.ant-timeline.ant-timeline-reverse .ant-timeline-item-pending .ant-timeline-item-content{min-height:48px;}.ant-timeline.ant-timeline-label .ant-timeline-item-label{position:absolute;inset-block-start:-6px;width:calc(50% - 12px);text-align:end;}.ant-timeline.ant-timeline-label .ant-timeline-item-right .ant-timeline-item-label{inset-inline-start:calc(50% + 12px);width:calc(50% - 12px);text-align:start;}.ant-timeline-rtl{direction:rtl;}.ant-timeline-rtl .ant-timeline-item-head-custom{transform:translate(50%, -50%);}[class^=\\"ant-typography\\"],[class*=\\" ant-typography\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-typography\\"]::before,[class*=\\" ant-typography\\"]::before,[class^=\\"ant-typography\\"]::after,[class*=\\" ant-typography\\"]::after{box-sizing:border-box;}[class^=\\"ant-typography\\"] [class^=\\"ant-typography\\"],[class*=\\" ant-typography\\"] [class^=\\"ant-typography\\"],[class^=\\"ant-typography\\"] [class*=\\" ant-typography\\"],[class*=\\" ant-typography\\"] [class*=\\" ant-typography\\"]{box-sizing:border-box;}[class^=\\"ant-typography\\"] [class^=\\"ant-typography\\"]::before,[class*=\\" ant-typography\\"] [class^=\\"ant-typography\\"]::before,[class^=\\"ant-typography\\"] [class*=\\" ant-typography\\"]::before,[class*=\\" ant-typography\\"] [class*=\\" ant-typography\\"]::before,[class^=\\"ant-typography\\"] [class^=\\"ant-typography\\"]::after,[class*=\\" ant-typography\\"] [class^=\\"ant-typography\\"]::after,[class^=\\"ant-typography\\"] [class*=\\" ant-typography\\"]::after,[class*=\\" ant-typography\\"] [class*=\\" ant-typography\\"]::after{box-sizing:border-box;}.ant-typography{color:rgba(255, 255, 255, 0.85);word-break:break-word;line-height:1.5714285714285714;}.ant-typography.ant-typography-secondary{color:rgba(255, 255, 255, 0.45);}.ant-typography.ant-typography-success{color:#49aa19;}.ant-typography.ant-typography-warning{color:#d89614;}.ant-typography.ant-typography-danger{color:#dc4446;}a.ant-typography.ant-typography-danger:active,a.ant-typography.ant-typography-danger:focus{color:#ad393a;}a.ant-typography.ant-typography-danger:hover{color:#e86e6b;}.ant-typography.ant-typography-disabled{color:rgba(255, 255, 255, 0.25);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:0.5em;color:rgba(255, 255, 255, 0.85);font-weight:600;font-size:38px;line-height:1.2105263157894737;}h2.ant-typography,div.ant-typography-h2,div.ant-typography-h2>textarea,.ant-typography h2{margin-bottom:0.5em;color:rgba(255, 255, 255, 0.85);font-weight:600;font-size:30px;line-height:1.2666666666666666;}h3.ant-typography,div.ant-typography-h3,div.ant-typography-h3>textarea,.ant-typography h3{margin-bottom:0.5em;color:rgba(255, 255, 255, 0.85);font-weight:600;font-size:24px;line-height:1.3333333333333333;}h4.ant-typography,div.ant-typography-h4,div.ant-typography-h4>textarea,.ant-typography h4{margin-bottom:0.5em;color:rgba(255, 255, 255, 0.85);font-weight:600;font-size:20px;line-height:1.4;}h5.ant-typography,div.ant-typography-h5,div.ant-typography-h5>textarea,.ant-typography h5{margin-bottom:0.5em;color:rgba(255, 255, 255, 0.85);font-weight:600;font-size:16px;line-height:1.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:1.2em;}.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:1.2em;}.ant-typography code{margin:0 0.2em;padding-inline:0.4em;padding-block:0.2em 0.1em;font-size:85%;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%;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;}.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:#1668dc;text-decoration:none;outline:none;cursor:pointer;transition:color 0.3s;}a.ant-typography:focus,.ant-typography a:focus,a.ant-typography:hover,.ant-typography a:hover{color:#15417e;}a.ant-typography:active,.ant-typography a:active{color:#1554ad;}a.ant-typography:active,.ant-typography a:active,a.ant-typography:hover,.ant-typography a:hover{text-decoration:none;}a.ant-typography[disabled],.ant-typography a[disabled],a.ant-typography.ant-typography-disabled,.ant-typography a.ant-typography-disabled{color:rgba(255, 255, 255, 0.25);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:rgba(255, 255, 255, 0.25);}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-edit,.ant-typography .ant-typography-copy{color:#1668dc;text-decoration:none;outline:none;cursor:pointer;transition:color 0.3s;margin-inline-start:4px;}.ant-typography .ant-typography-expand:focus,.ant-typography .ant-typography-edit:focus,.ant-typography .ant-typography-copy:focus,.ant-typography .ant-typography-expand:hover,.ant-typography .ant-typography-edit:hover,.ant-typography .ant-typography-copy:hover{color:#15417e;}.ant-typography .ant-typography-expand:active,.ant-typography .ant-typography-edit:active,.ant-typography .ant-typography-copy:active{color:#1554ad;}.ant-typography-edit-content{position:relative;}div.ant-typography-edit-content{inset-inline-start:-12px;margin-top:-5px;margin-bottom:calc(1em - 5px);}.ant-typography-edit-content .ant-typography-edit-content-confirm{position:absolute;inset-inline-end:10px;inset-block-end:8px;color:rgba(255, 255, 255, 0.45);font-weight:normal;font-size:14px;font-style:normal;pointer-events:none;}.ant-typography-edit-content textarea{margin:0!important;-moz-transition:none;height:1em;}.ant-typography-copy-success,.ant-typography-copy-success:hover,.ant-typography-copy-success:focus{color:#49aa19;}a.ant-typography-ellipsis,span.ant-typography-ellipsis{display:inline-block;max-width:100%;}.ant-typography-single-line{white-space:nowrap;}.ant-typography-ellipsis-single-line{overflow:hidden;text-overflow:ellipsis;}a.ant-typography-ellipsis-single-line,span.ant-typography-ellipsis-single-line{vertical-align:bottom;}.ant-typography-ellipsis-multiple-line{display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical;}.ant-typography-rtl{direction:rtl;}[class^=\\"ant-upload\\"],[class*=\\" ant-upload\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-upload\\"]::before,[class*=\\" ant-upload\\"]::before,[class^=\\"ant-upload\\"]::after,[class*=\\" ant-upload\\"]::after{box-sizing:border-box;}[class^=\\"ant-upload\\"] [class^=\\"ant-upload\\"],[class*=\\" ant-upload\\"] [class^=\\"ant-upload\\"],[class^=\\"ant-upload\\"] [class*=\\" ant-upload\\"],[class*=\\" ant-upload\\"] [class*=\\" ant-upload\\"]{box-sizing:border-box;}[class^=\\"ant-upload\\"] [class^=\\"ant-upload\\"]::before,[class*=\\" ant-upload\\"] [class^=\\"ant-upload\\"]::before,[class^=\\"ant-upload\\"] [class*=\\" ant-upload\\"]::before,[class*=\\" ant-upload\\"] [class*=\\" ant-upload\\"]::before,[class^=\\"ant-upload\\"] [class^=\\"ant-upload\\"]::after,[class*=\\" ant-upload\\"] [class^=\\"ant-upload\\"]::after,[class^=\\"ant-upload\\"] [class*=\\" ant-upload\\"]::after,[class*=\\" ant-upload\\"] [class*=\\" ant-upload\\"]::after{box-sizing:border-box;}.ant-upload-wrapper{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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-upload-wrapper .ant-upload{outline:0;}.ant-upload-wrapper .ant-upload input[type='file']{cursor:pointer;}.ant-upload-wrapper .ant-upload-select{display:inline-block;}.ant-upload-wrapper .ant-upload-disabled{color:rgba(255, 255, 255, 0.25);cursor:not-allowed;}.ant-upload-wrapper .ant-upload-drag{position:relative;width:100%;height:100%;text-align:center;background:rgba(255, 255, 255, 0.04);border:1px dashed #424242;border-radius:8px;cursor:pointer;transition:border-color 0.3s;}.ant-upload-wrapper .ant-upload-drag .ant-upload{padding:16px 0;}.ant-upload-wrapper .ant-upload-drag .ant-upload-btn{display:table;width:100%;height:100%;outline:none;}.ant-upload-wrapper .ant-upload-drag .ant-upload-drag-container{display:table-cell;vertical-align:middle;}.ant-upload-wrapper .ant-upload-drag:not(.ant-upload-disabled):hover{border-color:#198016;}.ant-upload-wrapper .ant-upload-drag p.ant-upload-drag-icon{margin-bottom:16px;}.ant-upload-wrapper .ant-upload-drag p.ant-upload-drag-icon .anticon{color:#037003;font-size:48px;}.ant-upload-wrapper .ant-upload-drag p.ant-upload-text{margin:0 0 4px;color:rgba(255, 255, 255, 0.85);font-size:16px;}.ant-upload-wrapper .ant-upload-drag p.ant-upload-hint{color:rgba(255, 255, 255, 0.45);font-size:14px;}.ant-upload-wrapper .ant-upload-drag.ant-upload-disabled{cursor:not-allowed;}.ant-upload-wrapper .ant-upload-drag.ant-upload-disabled p.ant-upload-drag-icon .anticon,.ant-upload-wrapper .ant-upload-drag.ant-upload-disabled p.ant-upload-text,.ant-upload-wrapper .ant-upload-drag.ant-upload-disabled p.ant-upload-hint{color:rgba(255, 255, 255, 0.25);}.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture .ant-upload-list-item,.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item{position:relative;height:66px;padding:8px;border:1px solid #424242;border-radius:8px;}.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture .ant-upload-list-item:hover,.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item:hover{background:transparent;}.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture .ant-upload-list-item .ant-upload-list-item-thumbnail,.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item .ant-upload-list-item-thumbnail{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;width:48px;height:48px;line-height:60px;text-align:center;flex:none;}.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture .ant-upload-list-item .ant-upload-list-item-thumbnail .anticon,.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item .ant-upload-list-item-thumbnail .anticon{font-size:30px;color:#037003;}.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture .ant-upload-list-item .ant-upload-list-item-thumbnail img,.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item .ant-upload-list-item-thumbnail img{display:block;width:100%;height:100%;overflow:hidden;}.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture .ant-upload-list-item .ant-upload-list-item-progress,.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item .ant-upload-list-item-progress{bottom:12px;width:calc(100% - 24px);margin-top:0;padding-inline-start:56px;}.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture .ant-upload-list-item-error,.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-error{border-color:#dc4446;}.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#e6f7ff'],.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#e6f7ff']{fill:#2c1618;}.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#1890ff'],.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#1890ff']{fill:#dc4446;}.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture .ant-upload-list-item-uploading,.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-uploading{border-style:dashed;}.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture .ant-upload-list-item-uploading .ant-upload-list-item-name,.ant-upload-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-uploading .ant-upload-list-item-name{margin-bottom:12px;}.ant-upload-wrapper.ant-upload-picture-card-wrapper{display:inline-block;width:100%;}.ant-upload-wrapper.ant-upload-picture-card-wrapper::before{display:table;content:\\"\\";}.ant-upload-wrapper.ant-upload-picture-card-wrapper::after{display:table;clear:both;content:\\"\\";}.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload.ant-upload-select{width:102px;height:102px;margin-inline-end:8px;margin-bottom:8px;text-align:center;vertical-align:top;background-color:rgba(255, 255, 255, 0.04);border:1px dashed #424242;border-radius:8px;cursor:pointer;transition:border-color 0.3s;}.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload.ant-upload-select >.ant-upload{display:flex;align-items:center;justify-content:center;height:100%;text-align:center;}.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload.ant-upload-select:not(.ant-upload-disabled):hover{border-color:#037003;}.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-container{display:inline-block;width:102px;height:102px;margin-block:0 8px;margin-inline:0 8px;vertical-align:top;}.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card::after{display:none;}.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item{height:100%;margin:0;}.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item::before{position:absolute;z-index:1;width:calc(100% - 16px);height:calc(100% - 16px);background-color:rgba(0, 0, 0, 0.45);opacity:0;transition:all 0.3s;content:\\" \\";}.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item:hover::before,.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item:hover .ant-upload-list-item-actions{opacity:1;}.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-actions{position:absolute;inset-inline-start:0;z-index:10;width:100%;white-space:nowrap;text-align:center;opacity:0;transition:all 0.3s;}.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-eye,.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-download,.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-delete{z-index:10;width:16px;margin:0 4px;font-size:16px;cursor:pointer;transition:all 0.3s;}.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-eye,.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-actions:hover .anticon-eye,.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-download,.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-actions:hover .anticon-download,.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-delete,.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-actions:hover .anticon-delete{color:rgba(255, 255, 255, 0.65);}.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-eye:hover,.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-actions:hover .anticon-eye:hover,.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-download:hover,.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-actions:hover .anticon-download:hover,.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-delete:hover,.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-actions:hover .anticon-delete:hover{color:#fff;}.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-thumbnail,.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-thumbnail img{position:static;display:block;width:100%;height:100%;object-fit:contain;}.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-name{display:none;text-align:center;}.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-file+.ant-upload-list-item-name{position:absolute;bottom:16px;display:block;width:calc(100% - 16px);}.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-uploading.ant-upload-list-item{background-color:rgba(255, 255, 255, 0.04);}.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-uploading::before,.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-uploading .anticon-eye,.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-uploading .anticon-download,.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-uploading .anticon-delete{display:none;}.ant-upload-wrapper.ant-upload-picture-card-wrapper .ant-upload-list.ant-upload-list-picture-card .ant-upload-list-item-progress{bottom:32px;width:calc(100% - 16px);padding-inline-start:0;}.ant-upload-wrapper .ant-upload-list{line-height:1.5714285714285714;}.ant-upload-wrapper .ant-upload-list::before{display:table;content:\\"\\";}.ant-upload-wrapper .ant-upload-list::after{display:table;clear:both;content:\\"\\";}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item{position:relative;height:22px;margin-top:8px;font-size:14px;display:flex;align-items:center;transition:background-color 0.3s;}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item:hover{background-color:rgba(255, 255, 255, 0.08);}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item .ant-upload-list-item-name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:0 8px;line-height:1.5714285714285714;flex:auto;transition:all 0.3s;}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item .ant-upload-list-item-actions .ant-upload-list-item-action{opacity:0;}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item .ant-upload-list-item-actions .ant-upload-list-item-action.ant-btn-sm{height:22px;border:0;line-height:1;}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item .ant-upload-list-item-actions .ant-upload-list-item-action.ant-btn-sm >span{transform:scale(1);}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item .ant-upload-list-item-actions .ant-upload-list-item-action:focus,.ant-upload-wrapper .ant-upload-list .ant-upload-list-item .ant-upload-list-item-actions.picture .ant-upload-list-item-action{opacity:1;}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item .ant-upload-list-item-actions .anticon{color:rgba(255, 255, 255, 0.45);transition:all 0.3s;}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item .ant-upload-list-item-actions:hover .anticon{color:rgba(255, 255, 255, 0.85);}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item .ant-upload-icon .anticon{color:rgba(255, 255, 255, 0.45);font-size:14px;}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item .ant-upload-list-item-progress{position:absolute;bottom:-12px;width:100%;padding-inline-start:22px;font-size:14px;line-height:0;pointer-events:none;}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item .ant-upload-list-item-progress >div{margin:0;}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item:hover .ant-upload-list-item-action{opacity:1;color:rgba(255, 255, 255, 0.85);}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item-error{color:#dc4446;}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item-error .ant-upload-list-item-name,.ant-upload-wrapper .ant-upload-list .ant-upload-list-item-error .ant-upload-icon .anticon{color:#dc4446;}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item-error .ant-upload-list-item-actions .anticon,.ant-upload-wrapper .ant-upload-list .ant-upload-list-item-error .ant-upload-list-item-actions .anticon:hover{color:#dc4446;}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item-error .ant-upload-list-item-actions .ant-upload-list-item-action{opacity:1;}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item-container{transition:opacity 0.3s,height 0.3s;}.ant-upload-wrapper .ant-upload-list .ant-upload-list-item-container::before{display:table;width:0;height:0;content:\\"\\";}.ant-upload-wrapper .ant-upload-animate-inline-appear,.ant-upload-wrapper .ant-upload-animate-inline-enter,.ant-upload-wrapper .ant-upload-animate-inline-leave{animation-duration:0.3s;animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);animation-fill-mode:forwards;}.ant-upload-wrapper .ant-upload-animate-inline-appear,.ant-upload-wrapper .ant-upload-animate-inline-enter{animation-name:uploadAnimateInlineIn;}.ant-upload-wrapper .ant-upload-animate-inline-leave{animation-name:uploadAnimateInlineOut;}.ant-upload-rtl{direction:rtl;}.ant-upload .ant-motion-collapse-legacy{overflow:hidden;}.ant-upload .ant-motion-collapse-legacy-active{transition:height 0.2s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.2s cubic-bezier(0.645, 0.045, 0.355, 1)!important;}.ant-upload .ant-motion-collapse{overflow:hidden;transition:height 0.2s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.2s cubic-bezier(0.645, 0.045, 0.355, 1)!important;}@keyframes uploadAnimateInlineIn{from{width:0;height:0;margin:0;padding:0;opacity:0;}}@keyframes uploadAnimateInlineOut{to{width:0;height:0;margin:0;padding:0;opacity:0;}}[class^=\\"ant-segmented\\"],[class*=\\" ant-segmented\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-segmented\\"]::before,[class*=\\" ant-segmented\\"]::before,[class^=\\"ant-segmented\\"]::after,[class*=\\" ant-segmented\\"]::after{box-sizing:border-box;}[class^=\\"ant-segmented\\"] [class^=\\"ant-segmented\\"],[class*=\\" ant-segmented\\"] [class^=\\"ant-segmented\\"],[class^=\\"ant-segmented\\"] [class*=\\" ant-segmented\\"],[class*=\\" ant-segmented\\"] [class*=\\" ant-segmented\\"]{box-sizing:border-box;}[class^=\\"ant-segmented\\"] [class^=\\"ant-segmented\\"]::before,[class*=\\" ant-segmented\\"] [class^=\\"ant-segmented\\"]::before,[class^=\\"ant-segmented\\"] [class*=\\" ant-segmented\\"]::before,[class*=\\" ant-segmented\\"] [class*=\\" ant-segmented\\"]::before,[class^=\\"ant-segmented\\"] [class^=\\"ant-segmented\\"]::after,[class*=\\" ant-segmented\\"] [class^=\\"ant-segmented\\"]::after,[class^=\\"ant-segmented\\"] [class*=\\" ant-segmented\\"]::after,[class*=\\" ant-segmented\\"] [class*=\\" ant-segmented\\"]::after{box-sizing:border-box;}.ant-segmented{box-sizing:border-box;margin:0;padding:2px;color:rgba(255, 255, 255, 0.65);font-size:14px;line-height:1.5714285714285714;list-style:none;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';display:inline-block;background-color:#000000;border-radius:6px;transition:all 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);}.ant-segmented .ant-segmented-group{position:relative;display:flex;align-items:stretch;justify-items:flex-start;width:100%;}.ant-segmented.ant-segmented-rtl{direction:rtl;}.ant-segmented.ant-segmented-block{display:flex;}.ant-segmented.ant-segmented-block .ant-segmented-item{flex:1;min-width:0;}.ant-segmented .ant-segmented-item{position:relative;text-align:center;cursor:pointer;transition:color 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);border-radius:4px;}.ant-segmented .ant-segmented-item-selected{background-color:#1f1f1f;box-shadow: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);color:rgba(255, 255, 255, 0.85);}.ant-segmented .ant-segmented-item::after{content:\\"\\";position:absolute;width:100%;height:100%;top:0;inset-inline-start:0;border-radius:inherit;transition:background-color 0.2s;}.ant-segmented .ant-segmented-item:hover:not(.ant-segmented-item-selected):not(.ant-segmented-item-disabled){color:rgba(255, 255, 255, 0.85);}.ant-segmented .ant-segmented-item:hover:not(.ant-segmented-item-selected):not(.ant-segmented-item-disabled)::after{background-color:rgba(255, 255, 255, 0.12);}.ant-segmented .ant-segmented-item-label{min-height:28px;line-height:28px;padding:0 11px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}.ant-segmented .ant-segmented-item-icon+*{margin-inline-start:6px;}.ant-segmented .ant-segmented-item-input{position:absolute;inset-block-start:0;inset-inline-start:0;width:0;height:0;opacity:0;pointer-events:none;}.ant-segmented .ant-segmented-thumb{background-color:#1f1f1f;box-shadow: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);position:absolute;inset-block-start:0;inset-inline-start:0;width:0;height:100%;padding:4px 0;border-radius:4px;}.ant-segmented .ant-segmented-thumb~.ant-segmented-item:not(.ant-segmented-item-selected):not(.ant-segmented-item-disabled)::after{background-color:transparent;}.ant-segmented.ant-segmented-lg{border-radius:8px;}.ant-segmented.ant-segmented-lg .ant-segmented-item-label{min-height:36px;line-height:36px;padding:0 11px;font-size:16px;}.ant-segmented.ant-segmented-lg .ant-segmented-item,.ant-segmented.ant-segmented-lg .ant-segmented-thumb{border-radius:6px;}.ant-segmented.ant-segmented-sm{border-radius:4px;}.ant-segmented.ant-segmented-sm .ant-segmented-item-label{min-height:20px;line-height:20px;padding:0 7px;}.ant-segmented.ant-segmented-sm .ant-segmented-item,.ant-segmented.ant-segmented-sm .ant-segmented-thumb{border-radius:2px;}.ant-segmented-disabled .ant-segmented-item,.ant-segmented-disabled .ant-segmented-item:hover,.ant-segmented-disabled .ant-segmented-item:focus{color:rgba(255, 255, 255, 0.25);cursor:not-allowed;}.ant-segmented .ant-segmented-item-disabled,.ant-segmented .ant-segmented-item-disabled:hover,.ant-segmented .ant-segmented-item-disabled:focus{color:rgba(255, 255, 255, 0.25);cursor:not-allowed;}.ant-segmented .ant-segmented-thumb-motion-appear-active{transition:transform 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),width 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);will-change:transform,width;}[class^=\\"ant-qrcode\\"],[class*=\\" ant-qrcode\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-qrcode\\"]::before,[class*=\\" ant-qrcode\\"]::before,[class^=\\"ant-qrcode\\"]::after,[class*=\\" ant-qrcode\\"]::after{box-sizing:border-box;}[class^=\\"ant-qrcode\\"] [class^=\\"ant-qrcode\\"],[class*=\\" ant-qrcode\\"] [class^=\\"ant-qrcode\\"],[class^=\\"ant-qrcode\\"] [class*=\\" ant-qrcode\\"],[class*=\\" ant-qrcode\\"] [class*=\\" ant-qrcode\\"]{box-sizing:border-box;}[class^=\\"ant-qrcode\\"] [class^=\\"ant-qrcode\\"]::before,[class*=\\" ant-qrcode\\"] [class^=\\"ant-qrcode\\"]::before,[class^=\\"ant-qrcode\\"] [class*=\\" ant-qrcode\\"]::before,[class*=\\" ant-qrcode\\"] [class*=\\" ant-qrcode\\"]::before,[class^=\\"ant-qrcode\\"] [class^=\\"ant-qrcode\\"]::after,[class*=\\" ant-qrcode\\"] [class^=\\"ant-qrcode\\"]::after,[class^=\\"ant-qrcode\\"] [class*=\\" ant-qrcode\\"]::after,[class*=\\" ant-qrcode\\"] [class*=\\" ant-qrcode\\"]::after{box-sizing:border-box;}.ant-qrcode{box-sizing:border-box;margin:0;padding:12px;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';display:flex;justify-content:center;align-items:center;background-color:#fff;border-radius:8px;border:1px solid rgba(253, 253, 253, 0.12);position:relative;width:100%;height:100%;overflow:hidden;}.ant-qrcode>.ant-qrcode-mask{position:absolute;inset-block-start:0;inset-inline-start:0;z-index:10;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;color:rgba(255, 255, 255, 0.85);line-height:1.5714285714285714;background:rgba(255, 255, 255, 0.96);text-align:center;}.ant-qrcode>.ant-qrcode-mask>.ant-qrcode-expired{color:rgba(0, 0, 0, 0.88);}.ant-qrcode-icon{margin-block-end:8px;font-size:32px;}.ant-qrcode-borderless{border-color:transparent;}[class^=\\"ant-app\\"],[class*=\\" ant-app\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-app\\"]::before,[class*=\\" ant-app\\"]::before,[class^=\\"ant-app\\"]::after,[class*=\\" ant-app\\"]::after{box-sizing:border-box;}[class^=\\"ant-app\\"] [class^=\\"ant-app\\"],[class*=\\" ant-app\\"] [class^=\\"ant-app\\"],[class^=\\"ant-app\\"] [class*=\\" ant-app\\"],[class*=\\" ant-app\\"] [class*=\\" ant-app\\"]{box-sizing:border-box;}[class^=\\"ant-app\\"] [class^=\\"ant-app\\"]::before,[class*=\\" ant-app\\"] [class^=\\"ant-app\\"]::before,[class^=\\"ant-app\\"] [class*=\\" ant-app\\"]::before,[class*=\\" ant-app\\"] [class*=\\" ant-app\\"]::before,[class^=\\"ant-app\\"] [class^=\\"ant-app\\"]::after,[class*=\\" ant-app\\"] [class^=\\"ant-app\\"]::after,[class^=\\"ant-app\\"] [class*=\\" ant-app\\"]::after,[class*=\\" ant-app\\"] [class*=\\" ant-app\\"]::after{box-sizing:border-box;}.ant-app{color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;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';}[class^=\\"ant-message\\"],[class*=\\" ant-message\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-message\\"]::before,[class*=\\" ant-message\\"]::before,[class^=\\"ant-message\\"]::after,[class*=\\" ant-message\\"]::after{box-sizing:border-box;}[class^=\\"ant-message\\"] [class^=\\"ant-message\\"],[class*=\\" ant-message\\"] [class^=\\"ant-message\\"],[class^=\\"ant-message\\"] [class*=\\" ant-message\\"],[class*=\\" ant-message\\"] [class*=\\" ant-message\\"]{box-sizing:border-box;}[class^=\\"ant-message\\"] [class^=\\"ant-message\\"]::before,[class*=\\" ant-message\\"] [class^=\\"ant-message\\"]::before,[class^=\\"ant-message\\"] [class*=\\" ant-message\\"]::before,[class*=\\" ant-message\\"] [class*=\\" ant-message\\"]::before,[class^=\\"ant-message\\"] [class^=\\"ant-message\\"]::after,[class*=\\" ant-message\\"] [class^=\\"ant-message\\"]::after,[class^=\\"ant-message\\"] [class*=\\" ant-message\\"]::after,[class*=\\" ant-message\\"] [class*=\\" ant-message\\"]::after{box-sizing:border-box;}.ant-message{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:fixed;top:8px;width:100%;pointer-events:none;z-index:1010;}.ant-message .ant-message-move-up{animation-fill-mode:forwards;}.ant-message .ant-message-move-up-appear,.ant-message .ant-message-move-up-enter{animation-name:MessageMoveIn;animation-duration:0.3s;animation-play-state:paused;animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}.ant-message .ant-message-move-up-appear.ant-message-move-up-appear-active,.ant-message .ant-message-move-up-enter.ant-message-move-up-enter-active{animation-play-state:running;}.ant-message .ant-message-move-up-leave{animation-name:MessageMoveOut;animation-duration:0.3s;animation-play-state:paused;animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}.ant-message .ant-message-move-up-leave.ant-message-move-up-leave-active{animation-play-state:running;}.ant-message-rtl{direction:rtl;}.ant-message-rtl span{direction:rtl;}.ant-message-notice{padding:8px;text-align:center;}.ant-message-notice .anticon{vertical-align:text-bottom;margin-inline-end:8px;font-size:16px;}.ant-message-notice .ant-message-notice-content{display:inline-block;padding:9px 12px;background:#1f1f1f;border-radius:8px;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);pointer-events:all;}.ant-message-notice .ant-message-success .anticon{color:#49aa19;}.ant-message-notice .ant-message-error .anticon{color:#dc4446;}.ant-message-notice .ant-message-warning .anticon{color:#d89614;}.ant-message-notice .ant-message-info .anticon,.ant-message-notice .ant-message-loading .anticon{color:#1668dc;}.ant-message-notice-pure-panel{padding:0;text-align:start;}@keyframes MessageMoveIn{0%{padding:0;transform:translateY(-100%);opacity:0;}100%{padding:8px;transform:translateY(0);opacity:1;}}@keyframes MessageMoveOut{0%{max-height:150px;padding:8px;opacity:1;}100%{max-height:0;padding:0;opacity:0;}}[class^=\\"ant-notification\\"],[class*=\\" ant-notification\\"]{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';font-size:14px;box-sizing:border-box;}[class^=\\"ant-notification\\"]::before,[class*=\\" ant-notification\\"]::before,[class^=\\"ant-notification\\"]::after,[class*=\\" ant-notification\\"]::after{box-sizing:border-box;}[class^=\\"ant-notification\\"] [class^=\\"ant-notification\\"],[class*=\\" ant-notification\\"] [class^=\\"ant-notification\\"],[class^=\\"ant-notification\\"] [class*=\\" ant-notification\\"],[class*=\\" ant-notification\\"] [class*=\\" ant-notification\\"]{box-sizing:border-box;}[class^=\\"ant-notification\\"] [class^=\\"ant-notification\\"]::before,[class*=\\" ant-notification\\"] [class^=\\"ant-notification\\"]::before,[class^=\\"ant-notification\\"] [class*=\\" ant-notification\\"]::before,[class*=\\" ant-notification\\"] [class*=\\" ant-notification\\"]::before,[class^=\\"ant-notification\\"] [class^=\\"ant-notification\\"]::after,[class*=\\" ant-notification\\"] [class^=\\"ant-notification\\"]::after,[class^=\\"ant-notification\\"] [class*=\\" ant-notification\\"]::after,[class*=\\" ant-notification\\"] [class*=\\" ant-notification\\"]::after{box-sizing:border-box;}.ant-notification{box-sizing:border-box;margin:0;padding:0;color:rgba(255, 255, 255, 0.85);font-size:14px;line-height:1.5714285714285714;list-style:none;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';position:fixed;z-index:1050;margin-inline-end:24px;}.ant-notification .ant-notification-hook-holder{position:relative;}.ant-notification.ant-notification-top,.ant-notification.ant-notification-bottom{margin-inline:0;}.ant-notification.ant-notification-topLeft,.ant-notification.ant-notification-bottomLeft{margin-inline-end:0;margin-inline-start:24px;}.ant-notification.ant-notification-topLeft .ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification.ant-notification-bottomLeft .ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification.ant-notification-topLeft .ant-notification-fade-appear.ant-notification-fade-appear-active,.ant-notification.ant-notification-bottomLeft .ant-notification-fade-appear.ant-notification-fade-appear-active{animation-name:antNotificationLeftFadeIn;}.ant-notification .ant-notification-fade-enter,.ant-notification .ant-notification-fade-appear{animation-duration:0.2s;animation-timing-function:cubic-bezier(0.645, 0.045, 0.355, 1);animation-fill-mode:both;opacity:0;animation-play-state:paused;}.ant-notification .ant-notification-fade-leave{animation-timing-function:cubic-bezier(0.645, 0.045, 0.355, 1);animation-fill-mode:both;animation-duration:0.2s;animation-play-state:paused;}.ant-notification .ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification .ant-notification-fade-appear.ant-notification-fade-appear-active{animation-name:antNotificationFadeIn;animation-play-state:running;}.ant-notification .ant-notification-fade-leave.ant-notification-fade-leave-active{animation-name:antNotificationFadeOut;animation-play-state:running;}.ant-notification.ant-notification-top .ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification.ant-notification-top .ant-notification-fade-appear.ant-notification-fade-appear-active{animation-name:antNotificationTopFadeIn;}.ant-notification.ant-notification-bottom .ant-notification-fade-enter.ant-notification-fade-enter-active,.ant-notification.ant-notification-bottom .ant-notification-fade-appear.ant-notification-fade-appear-active{animation-name:antNotificationBottomFadeIn;}.ant-notification-rtl{direction:rtl;}.ant-notification-rtl .ant-notification-notice-btn{float:left;}.ant-notification-notice{position:relative;width:384px;max-width:calc(100vw - 48px);margin-bottom:16px;margin-inline-start:auto;padding:20px 24px;overflow:hidden;line-height:1.5714285714285714;word-wrap:break-word;background:#1f1f1f;border-radius:8px;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-notification-notice .ant-notification-close-icon{font-size:14px;cursor:pointer;}.ant-notification-notice .ant-notification-notice-message{margin-bottom:8px;color:rgba(255, 255, 255, 0.85);font-size:16px;line-height:1.5;}.ant-notification-notice .ant-notification-notice-description{font-size:14px;}.ant-notification-notice.ant-notification-notice-closable .ant-notification-notice-message{padding-inline-end:24px;}.ant-notification-notice .ant-notification-notice-with-icon .ant-notification-notice-message{margin-bottom:8px;margin-inline-start:36px;font-size:16px;}.ant-notification-notice .ant-notification-notice-with-icon .ant-notification-notice-description{margin-inline-start:36px;font-size:14px;}.ant-notification-notice .ant-notification-notice-icon{position:absolute;font-size:24px;line-height:0;}.ant-notification-notice .ant-notification-notice-icon-success.anticon{color:#49aa19;}.ant-notification-notice .ant-notification-notice-icon-info.anticon{color:#1668dc;}.ant-notification-notice .ant-notification-notice-icon-warning.anticon{color:#d89614;}.ant-notification-notice .ant-notification-notice-icon-error.anticon{color:#dc4446;}.ant-notification-notice .ant-notification-notice-close{position:absolute;top:20px;inset-inline-end:24px;color:rgba(255, 255, 255, 0.45);outline:none;width:22px;height:22px;border-radius:4px;transition:background-color 0.2s,color 0.2s;display:flex;align-items:center;justify-content:center;}.ant-notification-notice .ant-notification-notice-close:hover{color:rgba(255, 255, 255, 0.85);background-color:rgba(255, 255, 255, 0.12);}.ant-notification-notice .ant-notification-notice-btn{float:right;margin-top:12px;}.ant-notification-notice-pure-panel{margin:0;}@keyframes antNotificationLeftFadeIn{0%{right:384px;opacity:0;}100%{right:0;opacity:1;}}@keyframes antNotificationFadeIn{0%{left:384px;opacity:0;}100%{left:0;opacity:1;}}@keyframes antNotificationFadeOut{0%{max-height:150px;margin-bottom:16px;opacity:1;}100%{max-height:0;margin-bottom:0;padding-top:0;padding-bottom:0;opacity:0;}}@keyframes antNotificationTopFadeIn{0%{margin-top:-100%;opacity:0;}100%{margin-top:0;opacity:1;}}@keyframes antNotificationBottomFadeIn{0%{margin-bottom:-100%;opacity:0;}100%{margin-bottom:0;opacity:1;}}.data-ant-cssinjs-cache-path{content:\\"m3f0rh|ant-design-icons|anticon:ijrcqw;z6uaad|Shared|ant:c6s4t9;z6uaad|Affix|ant-affix|anticon:2zzvr5;z6uaad|Anchor|ant-anchor|anticon:13hrez8;z6uaad|Select|ant-select|anticon:f698cf;z6uaad|Alert|ant-alert|anticon:1es04j3;z6uaad|Avatar|ant-avatar|anticon:19qdqs6;z6uaad|Badge|ant-badge|anticon:11brd8k;z6uaad|Badge|ant-ribbon|anticon:42dxfk;z6uaad|Breadcrumb|ant-breadcrumb|anticon:1j0g5z6;z6uaad|Button|ant-btn|anticon:1rl4the;z6uaad|Wave|ant-wave|anticon:pkgtju;z6uaad|Calendar|ant-picker|anticon:mesz65;z6uaad|Radio|ant-radio|anticon:1rexxqj;z6uaad|Card|ant-card|anticon:pisf11;z6uaad|Collapse|ant-collapse|anticon:1mx93m;z6uaad|Carousel|ant-carousel|anticon:1rz7wcs;z6uaad|Cascader|ant-cascader|anticon:e8gwep;z6uaad|Checkbox|ant-checkbox|anticon:16cn1kz;z6uaad|Checkbox|ant-checkbox-group|anticon:dmylcw;z6uaad|Grid|ant-col|anticon:1b4gqad;z6uaad|Comment|ant-comment|anticon:1bgsssj;z6uaad|DatePicker|ant-picker|anticon:m4frye;z6uaad|Descriptions|ant-descriptions|anticon:6r2ueu;z6uaad|Divider|ant-divider|anticon:p1u0jv;z6uaad|Dropdown|ant-dropdown|anticon:t4fvdt;z6uaad|Drawer|ant-drawer|anticon:yej9xm;z6uaad|Empty|ant-empty|anticon:xi52lg;z6uaad|FloatButton|ant-float-btn|anticon:ri8ruk;z6uaad|Tooltip|ant-tooltip|anticon:1d6z8n1;z6uaad|Form|ant-form|anticon:1tct32d;z6uaad|Grid|ant-row|anticon:xfnjxw;z6uaad|Input|ant-input|anticon:bybrgq;z6uaad|Image|ant-image|anticon:1bvp3xn;z6uaad|InputNumber|ant-input-number|anticon:jtkpcs;z6uaad|Layout|ant-layout|anticon:1idg3qk;z6uaad|List|ant-list|anticon:5p7k62;z6uaad|Spin|ant-spin|anticon:1g1ryjx;z6uaad|Menu|ant-menu|anticon:wo2qbe;z6uaad|Mentions|ant-mentions|anticon:cwasus;z6uaad|Modal|ant-modal|anticon:1pabgrn;z6uaad|Statistic|ant-statistic|anticon:q73svq;z6uaad|Skeleton|ant-skeleton|anticon:10w76qa;z6uaad|PageHeader|ant-page-header|anticon:1a4nm7u;z6uaad|Pagination|ant-pagination|anticon:13nh3ua;z6uaad|Popconfirm|ant-popconfirm|anticon:nmwlv6;z6uaad|Popover|ant-popover|anticon:hwmhax;z6uaad|Tooltip|ant-popover|anticon:17hb4y9;z6uaad|Progress|ant-progress|anticon:1svsnks;z6uaad|Rate|ant-rate|anticon:x3tu0l;z6uaad|Result|ant-result|anticon:9bvn6n;z6uaad|Slider|ant-slider|anticon:haw8s9;z6uaad|Space|ant-space|anticon:10yzkeb;z6uaad|Space|ant-space-compact|anticon:ac2k07;z6uaad|Steps|ant-steps|anticon:h0jjl7;z6uaad|Switch|ant-switch|anticon:18cao7h;z6uaad|Table|ant-table|anticon:pfy5id;z6uaad|Transfer|ant-transfer|anticon:1y4rk2;z6uaad|Tree|ant-tree|anticon:1hk4izj;z6uaad|TreeSelect|ant-tree-select|anticon:dk50w9;z6uaad|Tabs|ant-tabs|anticon:1m3gz2f;z6uaad|Tag|ant-tag|anticon:mtm9nh;z6uaad|Timeline|ant-timeline|anticon:171edtc;z6uaad|Typography|ant-typography|anticon:1gsekci;z6uaad|Upload|ant-upload|anticon:9gg6kc;z6uaad|Segmented|ant-segmented|anticon:zywlxk;z6uaad|QRCode|ant-qrcode|anticon:1aglmhf;z6uaad|App|ant-app|anticon:vhxvxu;z6uaad|Message|ant-message|anticon:175ruci;z6uaad|Notification|ant-notification|anticon:czzwwj\\";}"`;
diff --git a/components/_util/static-style-extract/__tests__/index.test.js b/components/_util/static-style-extract/__tests__/index.test.js
deleted file mode 100644
index 4c007119d..000000000
--- a/components/_util/static-style-extract/__tests__/index.test.js
+++ /dev/null
@@ -1,82 +0,0 @@
-// import { StyleProvider } from '../../cssinjs';
-import { extractStyle } from '../index';
-import { ConfigProvider } from '../../../components';
-import { theme } from '../../../index';
-
-const testGreenColor = '#008000';
-describe('Static-Style-Extract', () => {
- it('should extract static styles', () => {
- const cssText = extractStyle();
- expect(cssText).not.toContain(testGreenColor);
- expect(cssText).toMatchSnapshot();
- });
- it('should extract static styles with customTheme', () => {
- const cssText = extractStyle(node => {
- return (
-
- {node}
-
- );
- });
- expect(cssText).toContain(testGreenColor);
- expect(cssText).toMatchSnapshot();
- });
-
- it('should extract static styles with customTheme and customStyle', () => {
- const cssText = extractStyle(node => {
- return (
-
- {node}
-
- );
- });
- expect(cssText).toContain('#037003');
- expect(cssText).toMatchSnapshot();
- });
- // it('with custom hashPriority', () => {
- // const cssText = extractStyle(
- // (node) => (
- //
- //