custom.css 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278
  1. :root {
  2. --color-primary-100: #008771;
  3. --dark-color-background: #0a1222;
  4. --dark-color-surface-100: #151f31;
  5. --dark-color-surface-200: #222d42;
  6. --dark-color-surface-300: #2c3950;
  7. --dark-color-surface-400: rgba(65, 85, 119, 0.5); /* line */
  8. --dark-color-surface-500: #2c3950; /* popover & switch btn */
  9. --dark-color-surface-600: #313f5a; /* dropmenu hover */
  10. --dark-color-surface-700: #111929; /* modals */
  11. --dark-color-table-hover: rgba(44, 57, 80, 0.2);
  12. --dark-color-text-primary: rgba(255, 255, 255, 0.75);
  13. --dark-color-stroke: #2c3950;
  14. --dark-color-btn-danger: #cd3838;
  15. --dark-color-btn-danger-border: transparent;
  16. --dark-color-btn-danger-hover: #e94b4b;
  17. --dark-color-tag-bg: rgba(255, 255, 255, 0.05);
  18. --dark-color-tag-border:rgba(255, 255, 255, 0.15);
  19. --dark-color-tag-color:rgba(255, 255, 255, 0.75);
  20. --dark-color-tag-green-bg: #112421;
  21. --dark-color-tag-green-border: #195141;
  22. --dark-color-tag-green-color: #3ad3ba;
  23. --dark-color-tag-purple-bg: #201425;
  24. --dark-color-tag-purple-border: #5a2969;
  25. --dark-color-tag-purple-color: #d988cd;
  26. --dark-color-tag-red-bg: #291515;
  27. --dark-color-tag-red-border: #5c2626;
  28. --dark-color-tag-red-color: #e04141;
  29. --dark-color-tag-orange-bg: #312313;
  30. --dark-color-tag-orange-border: #593914;
  31. --dark-color-tag-orange-color: #ffa031;
  32. --dark-color-tag-blue-bg: #111a2c;
  33. --dark-color-tag-blue-border: #1348ab;
  34. --dark-color-tag-blue-color: #529fff;
  35. --dark-color-codemirror-line-hover: rgba(0, 135, 113, 0.2);
  36. --dark-color-codemirror-line-selection: rgba(0, 135, 113, 0.3);
  37. --dark-color-login-background: var(--dark-color-background);
  38. --dark-color-login-wave: var(--dark-color-surface-200);
  39. }
  40. html[data-theme='ultra-dark'] {
  41. --dark-color-background: #21242a;
  42. --dark-color-surface-100: #0c0e12;
  43. --dark-color-surface-200: #222327;
  44. --dark-color-surface-300: #32353b;
  45. --dark-color-surface-400: rgba(255, 255, 255, 0.1);
  46. --dark-color-surface-500: #3b404b;
  47. --dark-color-surface-600: #505663;
  48. --dark-color-surface-700: #101113;
  49. --dark-color-table-hover: rgba(89, 89, 89, 0.15);
  50. --dark-color-text-primary: rgb(255 255 255 / 85%);
  51. --dark-color-stroke: #202025;
  52. --dark-color-tag-green-bg: #112421;
  53. --dark-color-tag-green-border: #1d5f4d;
  54. --dark-color-tag-green-color: #59cbac;
  55. --dark-color-tag-purple-bg: #241121;
  56. --dark-color-tag-purple-border: #5a2969;
  57. --dark-color-tag-purple-color: #d686ca;
  58. --dark-color-tag-red-bg: #2a1215;
  59. --dark-color-tag-red-border: #58181c;
  60. --dark-color-tag-red-color: #e84749;
  61. --dark-color-tag-orange-bg: #2b1d11;
  62. --dark-color-tag-orange-border: #593815;
  63. --dark-color-tag-orange-color: #e89a3c;
  64. --dark-color-tag-blue-bg: #111a2c;
  65. --dark-color-tag-blue-border: #0f367e;
  66. --dark-color-tag-blue-color: #3c89e8;
  67. --dark-color-codemirror-line-hover: rgba(85, 85, 85, 0.3);
  68. --dark-color-codemirror-line-selection: rgba(85, 85, 85, 0.4);
  69. --dark-color-login-background: #0a2227;
  70. --dark-color-login-wave: #0f2d32;
  71. .ant-dropdown-menu-dark {
  72. background-color: var(--dark-color-surface-500);
  73. }
  74. .dark .ant-dropdown-menu-submenu-title:hover,
  75. .dark .ant-select-dropdown-menu-item-active:not(.ant-select-dropdown-menu-item-disabled),
  76. .dark .ant-select-dropdown-menu-item:hover:not(.ant-select-dropdown-menu-item-disabled) {
  77. background-color: var(--dark-color-surface-300);
  78. }
  79. .dark .waves-header {
  80. background-color: #0a2227;
  81. }
  82. .dark .ant-calendar-year-panel-year:hover,
  83. .dark .ant-calendar-month-panel-month:hover,
  84. .dark .ant-calendar-decade-panel-decade:hover {
  85. background-color: var(--dark-color-surface-600);
  86. }
  87. }
  88. html,
  89. body {
  90. height: 100vh;
  91. width: 100vw;
  92. margin: 0;
  93. padding: 0;
  94. overflow: hidden;
  95. }
  96. body {
  97. color: rgba(0, 0, 0, 0.65);
  98. font-size: 14px;
  99. font-variant: tabular-nums;
  100. line-height: 1.5;
  101. background-color: #fff;
  102. font-feature-settings: "tnum";
  103. }
  104. html {
  105. --antd-wave-shadow-color: var(--color-primary-100);
  106. line-height: 1.15;
  107. text-size-adjust: 100%;
  108. -webkit-text-size-adjust: 100%;
  109. -ms-text-size-adjust: 100%;
  110. -ms-overflow-style: scrollbar;
  111. -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  112. }
  113. ::selection {
  114. color: var(--color-primary-100);
  115. background-color: #cfe8e4;
  116. }
  117. #app {
  118. height: 100%;
  119. position: fixed;
  120. top: 0;
  121. left: 0;
  122. right: 0;
  123. bottom: 0;
  124. margin: 0;
  125. padding: 0;
  126. overflow: auto;
  127. }
  128. .ant-layout,
  129. .ant-layout * {
  130. box-sizing: border-box;
  131. }
  132. .ant-spin-blur {
  133. border-radius: 1.5rem;
  134. }
  135. style attribute {
  136. text-align: center;
  137. }
  138. .ant-table-tbody > tr > td,
  139. .ant-table-thead > tr > th {
  140. padding: 12px 8px;
  141. overflow-wrap: break-word;
  142. }
  143. .ant-table-thead > tr > th {
  144. color: rgba(0, 0, 0, 0.85);
  145. font-weight: 500;
  146. text-align: left;
  147. border-bottom: 1px solid #e8e8e8;
  148. transition: background 0.3s ease;
  149. }
  150. .ant-table-row-cell-break-word {
  151. word-wrap: break-word;
  152. word-break: break-word;
  153. }
  154. .ant-table table {
  155. width: 100%;
  156. text-align: left;
  157. border-radius: 1rem 1rem 0 0;
  158. border-collapse: separate;
  159. border-spacing: 0;
  160. }
  161. .ant-table {
  162. box-sizing: border-box;
  163. margin: 0;
  164. padding: 0;
  165. color: rgba(0, 0, 0, 0.65);
  166. font-size: 14px;
  167. font-variant: tabular-nums;
  168. line-height: 1.5;
  169. list-style: none;
  170. font-feature-settings: "tnum";
  171. position: relative;
  172. clear: both;
  173. }
  174. .ant-table-wrapper > div > div > div > div > div > div {
  175. overflow-x: auto !important;
  176. }
  177. .ant-card-hoverable {
  178. cursor: auto;
  179. cursor: pointer;
  180. }
  181. .ant-card {
  182. box-sizing: border-box;
  183. margin: 0;
  184. padding: 0;
  185. color: rgba(0, 0, 0, 0.65);
  186. font-size: 14px;
  187. font-variant: tabular-nums;
  188. line-height: 1.5;
  189. list-style: none;
  190. font-feature-settings: "tnum";
  191. position: relative;
  192. background-color: #fff;
  193. border-radius: 2px;
  194. transition: all 0.3s;
  195. }
  196. .ant-space {
  197. width: 100%;
  198. }
  199. .ant-layout-sider-zero-width-trigger {
  200. display: none;
  201. }
  202. @media (max-width: 768px) {
  203. .ant-layout-sider {
  204. display: none;
  205. }
  206. .ant-card {
  207. margin: 0.5rem;
  208. }
  209. .ant-tabs {
  210. margin: 0.5rem;
  211. padding: 0.5rem;
  212. }
  213. .ant-modal-body {
  214. padding: 20px;
  215. }
  216. .ant-form-item-label {
  217. line-height: 1.5;
  218. padding: 8px 0 0;
  219. }
  220. }
  221. .ant-layout-content {
  222. min-height: auto;
  223. }
  224. .ant-card,
  225. .ant-tabs {
  226. border-radius: 1.5rem;
  227. }
  228. .ant-card-hoverable {
  229. cursor: auto;
  230. }
  231. .ant-card + .ant-card {
  232. margin-top: 20px;
  233. }
  234. .drawer-handle {
  235. position: absolute;
  236. top: 72px;
  237. width: 41px;
  238. height: 40px;
  239. cursor: pointer;
  240. z-index: 0;
  241. text-align: center;
  242. line-height: 40px;
  243. font-size: 16px;
  244. display: flex;
  245. justify-content: center;
  246. align-items: center;
  247. background-color: #fff;
  248. right: -40px;
  249. box-shadow: 2px 0 8px rgba(0, 0, 0, 0.15);
  250. border-radius: 0 4px 4px 0;
  251. }
  252. .ant-menu:not(.ant-menu-horizontal) .ant-menu-item-selected {
  253. background-color: #006655 !important;
  254. background-image: linear-gradient(
  255. 270deg,
  256. rgba(123, 199, 77, 0) 30%,
  257. #009980,
  258. rgba(123, 199, 77, 0) 100%
  259. );
  260. background-repeat: no-repeat;
  261. animation: ma-bg-move linear 6.6s infinite;
  262. color: #fff;
  263. border-radius: 0.5rem;
  264. }
  265. @-webkit-keyframes ma-bg-move {
  266. 0% {
  267. background-position: -500px 0;
  268. }
  269. 100% {
  270. background-position: 1000px 0;
  271. }
  272. }
  273. @keyframes ma-bg-move {
  274. 0% {
  275. background-position: -500px 0;
  276. }
  277. 50% {
  278. background-position: 1000px 0;
  279. }
  280. 100% {
  281. background-position: 1000px 0;
  282. }
  283. }
  284. .ant-menu-item-active,
  285. .ant-menu-item:hover,
  286. .ant-menu-submenu-active,
  287. .ant-menu-submenu-title:hover,
  288. .ant-menu:not(.ant-menu-inline) .ant-menu-submenu-open {
  289. color: var(--color-primary-100);
  290. background-color: rgb(232 244 242);
  291. border-radius: 0.5rem;
  292. }
  293. .ant-menu-inline .ant-menu-item {
  294. border-radius: 0.5rem;
  295. }
  296. .ant-menu-inline .ant-menu-item:after,
  297. .ant-menu {
  298. border-right-width: 0;
  299. }
  300. .ant-layout-sider-children,
  301. .ant-pagination ul {
  302. margin-top: -0.1px;
  303. padding: 0.5rem;
  304. }
  305. .ant-dropdown-menu,
  306. .ant-select-dropdown-menu {
  307. padding: 0.5rem;
  308. }
  309. .ant-dropdown-menu-item,
  310. .ant-dropdown-menu-item:hover,
  311. .ant-select-dropdown-menu-item,
  312. .ant-select-dropdown-menu-item:hover,
  313. .ant-select-dropdown-menu-item-selected,
  314. .ant-select-selection--multiple .ant-select-selection__choice {
  315. border-radius: 0.5rem;
  316. margin-bottom: 2px;
  317. }
  318. @media (min-width: 769px) {
  319. .drawer-handle {
  320. display: none;
  321. }
  322. .ant-tabs {
  323. padding: 2rem;
  324. }
  325. }
  326. .fade-in-enter,
  327. .fade-in-leave-active,
  328. .fade-in-linear-enter,
  329. .fade-in-linear-leave,
  330. .fade-in-linear-leave-active,
  331. .fade-in-linear-enter,
  332. .fade-in-linear-leave,
  333. .fade-in-linear-leave-active {
  334. opacity: 0;
  335. }
  336. .fade-in-linear-enter-active,
  337. .fade-in-linear-leave-active {
  338. -webkit-transition: opacity 0.2s linear;
  339. transition: opacity 0.2s linear;
  340. }
  341. .fade-in-linear-enter-active,
  342. .fade-in-linear-leave-active {
  343. -webkit-transition: opacity 0.2s linear;
  344. transition: opacity 0.2s linear;
  345. }
  346. .fade-in-enter-active,
  347. .fade-in-leave-active {
  348. -webkit-transition: all 0.3s cubic-bezier(0.55, 0, 0.1, 1);
  349. transition: all 0.3s cubic-bezier(0.55, 0, 0.1, 1);
  350. }
  351. .zoom-in-center-enter-active,
  352. .zoom-in-center-leave-active {
  353. -webkit-transition: all 0.3s cubic-bezier(0.55, 0, 0.1, 1);
  354. transition: all 0.3s cubic-bezier(0.55, 0, 0.1, 1);
  355. }
  356. .zoom-in-center-enter,
  357. .zoom-in-center-leave-active {
  358. opacity: 0;
  359. -webkit-transform: scaleX(0);
  360. transform: scaleX(0);
  361. }
  362. .zoom-in-top-enter-active,
  363. .zoom-in-top-leave-active {
  364. opacity: 1;
  365. -webkit-transform: scaleY(1);
  366. transform: scaleY(1);
  367. -webkit-transition: opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1),
  368. -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.32, 1);
  369. transition: opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1),
  370. -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.32, 1);
  371. transition: transform 0.3s cubic-bezier(0.23, 1, 0.32, 1),
  372. opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1);
  373. transition: transform 0.3s cubic-bezier(0.23, 1, 0.32, 1),
  374. opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1),
  375. -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.32, 1);
  376. -webkit-transform-origin: center top;
  377. transform-origin: center top;
  378. }
  379. .zoom-in-top-enter,
  380. .zoom-in-top-leave-active {
  381. opacity: 0;
  382. -webkit-transform: scaleY(0);
  383. transform: scaleY(0);
  384. }
  385. .zoom-in-bottom-enter-active,
  386. .zoom-in-bottom-leave-active {
  387. opacity: 1;
  388. -webkit-transform: scaleY(1);
  389. transform: scaleY(1);
  390. -webkit-transition: opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1),
  391. -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.32, 1);
  392. transition: opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1),
  393. -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.32, 1);
  394. transition: transform 0.3s cubic-bezier(0.23, 1, 0.32, 1),
  395. opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1);
  396. transition: transform 0.3s cubic-bezier(0.23, 1, 0.32, 1),
  397. opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1),
  398. -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.32, 1);
  399. -webkit-transform-origin: center bottom;
  400. transform-origin: center bottom;
  401. }
  402. .zoom-in-bottom-enter,
  403. .zoom-in-bottom-leave-active {
  404. opacity: 0;
  405. -webkit-transform: scaleY(0);
  406. transform: scaleY(0);
  407. }
  408. .zoom-in-left-enter-active,
  409. .zoom-in-left-leave-active {
  410. opacity: 1;
  411. -webkit-transform: scale(1, 1);
  412. transform: scale(1, 1);
  413. -webkit-transition: opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1),
  414. -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.32, 1);
  415. transition: opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1),
  416. -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.32, 1);
  417. transition: transform 0.3s cubic-bezier(0.23, 1, 0.32, 1),
  418. opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1);
  419. transition: transform 0.3s cubic-bezier(0.23, 1, 0.32, 1),
  420. opacity 0.3s cubic-bezier(0.23, 1, 0.32, 1),
  421. -webkit-transform 0.3s cubic-bezier(0.23, 1, 0.32, 1);
  422. -webkit-transform-origin: top left;
  423. transform-origin: top left;
  424. }
  425. .zoom-in-left-enter,
  426. .zoom-in-left-leave-active {
  427. opacity: 0;
  428. -webkit-transform: scale(0.45, 0.45);
  429. transform: scale(0.45, 0.45);
  430. }
  431. .list-enter-active,
  432. .list-leave-active {
  433. -webkit-transition: all 0.3s;
  434. transition: all 0.3s;
  435. }
  436. .list-enter,
  437. .list-leave-active {
  438. opacity: 0;
  439. -webkit-transform: translateY(-30px);
  440. transform: translateY(-30px);
  441. }
  442. .ant-tooltip-inner {
  443. min-height: 0;
  444. }
  445. .ant-list-item-meta-title {
  446. font-size: 14px;
  447. }
  448. .ant-progress-inner {
  449. background-color: #ebeef5;
  450. }
  451. .deactive-client .ant-collapse-header {
  452. color: rgb(255, 255, 255) !important;
  453. background-color: rgb(255, 127, 127);
  454. }
  455. .ant-table-expand-icon-th,
  456. .ant-table-row-expand-icon-cell {
  457. width: 30px;
  458. min-width: 30px;
  459. }
  460. .ant-tabs {
  461. background-color: white;
  462. }
  463. .ant-form-item {
  464. margin-bottom: 0;
  465. }
  466. .ant-setting-textarea {
  467. margin-top: 1.5rem;
  468. }
  469. .client-table-header {
  470. background-color: #f0f2f5;
  471. }
  472. .client-table-odd-row {
  473. background-color: #fafafa;
  474. }
  475. .ant-table-pagination.ant-pagination {
  476. float: left;
  477. }
  478. /* change basic colors */
  479. .ant-tag-blue {
  480. background-color: #edf4fa;
  481. border-color: #a9c5e7;
  482. color: #0e49b5;
  483. }
  484. .ant-tag-green {
  485. background-color: #eafff9;
  486. border-color: #76ccb4;
  487. color: #199270;
  488. }
  489. .ant-tag-purple {
  490. background-color: #f2eaf1;
  491. border-color: #d5bed2;
  492. color: #7a316f;
  493. }
  494. .ant-tag-orange,
  495. .ant-alert-warning {
  496. background-color: #ffeee1;
  497. border-color: #fec093;
  498. color: #f37b24;
  499. }
  500. .ant-tag-red,
  501. .ant-alert-error {
  502. background-color: #ffe9e9;
  503. border-color: #ff9e9e;
  504. color: #cf3c3c;
  505. }
  506. .ant-input::placeholder {
  507. opacity: 0.5;
  508. }
  509. .ant-input:hover,
  510. .ant-input:focus {
  511. background-color: rgb(232 244 242);
  512. }
  513. .delete-icon:hover {
  514. color: #e04141;
  515. }
  516. .normal-icon:hover {
  517. color: var(--color-primary-100);
  518. }
  519. /* DARK THEME */
  520. .dark ::selection {
  521. color: #fff;
  522. background-color: var(--color-primary-100);
  523. }
  524. .dark .normal-icon:hover {
  525. color: #ffffff;
  526. }
  527. .dark .ant-layout-sider,
  528. .dark .ant-drawer-content,
  529. .ant-menu-dark,
  530. .ant-menu-dark .ant-menu-sub,
  531. .dark .ant-card,
  532. .dark .ant-table,
  533. .dark .ant-collapse-content,
  534. .dark .ant-tabs {
  535. background-color: var(--dark-color-surface-100);
  536. color: var(--dark-color-text-primary);
  537. }
  538. .dark .ant-card-hoverable:hover,
  539. .dark .ant-space-item > .ant-tabs:hover {
  540. /* box-shadow: 0 1px 10px -1px rgb(154 175 238 / 80%); */
  541. box-shadow: 0 2px 8px transparent;
  542. }
  543. .dark > .ant-layout,
  544. .dark .drawer-handle,
  545. .dark .ant-table-thead > tr > th,
  546. .dark .ant-table-expanded-row,
  547. .dark .ant-table-expanded-row:hover,
  548. .dark .ant-table-expanded-row .ant-table-tbody,
  549. .dark .ant-calendar {
  550. background-color: var(--dark-color-background);
  551. color: var(--dark-color-text-primary);
  552. }
  553. .dark .ant-table-expanded-row .ant-table-thead > tr:first-child > th {
  554. border-radius: 0;
  555. }
  556. .dark .ant-calendar,
  557. .dark .ant-card-bordered {
  558. border-color: var(--dark-color-background);
  559. }
  560. .dark .ant-table-bordered,
  561. .dark .ant-table-bordered.ant-table-empty .ant-table-placeholder,
  562. .dark .ant-table-bordered .ant-table-body > table,
  563. .dark .ant-table-bordered .ant-table-fixed-left table,
  564. .dark .ant-table-bordered .ant-table-fixed-right table,
  565. .dark .ant-table-bordered .ant-table-header > table,
  566. .dark .ant-table-bordered .ant-table-thead > tr:not(:last-child) > th,
  567. .dark .ant-table-bordered .ant-table-tbody > tr > td,
  568. .dark .ant-table-bordered .ant-table-thead > tr > th {
  569. border-color: var(--dark-color-surface-400);
  570. }
  571. .dark .ant-table-tbody > tr > td,
  572. .dark .ant-table-thead > tr > th,
  573. .dark .ant-card-head,
  574. .dark .ant-modal-header,
  575. .dark .ant-collapse > .ant-collapse-item,
  576. .dark .ant-tabs-bar,
  577. .dark .ant-list-split .ant-list-item,
  578. .dark .ant-popover-title,
  579. .dark .ant-calendar-header,
  580. .dark .ant-calendar-input-wrap {
  581. border-bottom-color: var(--dark-color-surface-400);
  582. }
  583. .dark .ant-modal-footer,
  584. .dark .ant-collapse-content,
  585. .dark .ant-calendar-footer,
  586. .dark .ant-divider-horizontal.ant-divider-with-text-center:before,
  587. .dark .ant-divider-horizontal.ant-divider-with-text-center:after {
  588. border-top-color: var(--dark-color-surface-300);
  589. }
  590. .dark .ant-progress-text,
  591. .dark .ant-card-head,
  592. .dark .ant-form,
  593. .dark .ant-collapse > .ant-collapse-item > .ant-collapse-header,
  594. .dark .ant-modal-close-x,
  595. .dark .ant-pagination-item a,
  596. .dark li:not(.ant-pagination-disabled) i,
  597. .dark .ant-form .anticon,
  598. .dark .ant-tabs-tab-arrow-show:not(.ant-tabs-tab-btn-disabled),
  599. .dark .anticon-close,
  600. .dark .ant-list-item-meta-title,
  601. .dark .ant-select-selection i,
  602. .dark .ant-modal-confirm-title,
  603. .dark .ant-modal-confirm-content,
  604. .dark .ant-popover-message,
  605. .dark .ant-modal,
  606. .dark .ant-divider-inner-text,
  607. .dark .ant-popover-title,
  608. .dark .ant-popover-inner-content,
  609. .dark h2,
  610. .dark .ant-modal-title,
  611. .dark .ant-form-item-label > label,
  612. .dark .ant-checkbox-wrapper,
  613. .dark .ant-form-item,
  614. .dark .ant-calendar-footer .ant-calendar-today-btn,
  615. .dark .ant-calendar-footer .ant-calendar-time-picker-btn,
  616. .dark .ant-calendar-day-select,
  617. .dark .ant-calendar-month-select,
  618. .dark .ant-calendar-year-select,
  619. .dark .ant-calendar-date,
  620. .dark .ant-calendar-year-panel-year,
  621. .dark .ant-calendar-month-panel-month,
  622. .dark .ant-calendar-decade-panel-decade {
  623. color: var(--dark-color-text-primary);
  624. }
  625. .dark .ant-list-item-meta-description {
  626. color: rgba(255, 255, 255, 0.45);
  627. }
  628. .dark .ant-pagination-disabled i,
  629. .dark .ant-tabs-tab-btn-disabled {
  630. color: rgba(255, 255, 255, 0.25);
  631. }
  632. .dark .ant-input,
  633. .dark .ant-input-group-addon,
  634. .dark .ant-collapse,
  635. .dark .ant-select-selection,
  636. .dark .ant-input-number,
  637. .dark .ant-input-number-handler-wrap,
  638. .dark .ant-pagination-item-active,
  639. .dark .ant-table-placeholder,
  640. .dark .ant-empty-normal,
  641. .dark.ant-select-dropdown,
  642. .dark .ant-select-dropdown,
  643. .dark .ant-select-dropdown li,
  644. .dark .ant-select-dropdown-menu-item,
  645. .dark .ant-divider:not(.ant-divider-with-text-center),
  646. .dark .client-table-header,
  647. .dark .ant-select-selection--multiple .ant-select-selection__choice,
  648. .dark .ant-calendar-time-picker-inner {
  649. background-color: var(--dark-color-surface-200);
  650. border-color: var(--dark-color-surface-300);
  651. color: var(--dark-color-text-primary);
  652. }
  653. .dark .ant-select-selection:hover,
  654. .dark .ant-calendar-picker-clear,
  655. .dark .ant-input-number:hover,
  656. .dark .ant-input-number:focus,
  657. .dark .ant-input:hover,
  658. .dark .ant-input:focus {
  659. background-color: rgba(0, 135, 113, 0.3);
  660. border-color: var(--color-primary-100);
  661. }
  662. .dark .ant-btn:not(.ant-btn-primary):not(.ant-btn-danger) {
  663. color: var(--dark-color-text-primary);
  664. background-color: rgb(10 117 87 / 30%);
  665. border: 1px solid var(--color-primary-100);
  666. }
  667. .dark .ant-radio-button-wrapper,
  668. .dark .ant-radio-button-wrapper:before {
  669. color: var(--dark-color-text-primary);
  670. background-color: rgba(0, 135, 113, 0.3);
  671. border-color: var(--color-primary-100);
  672. }
  673. .dark .ant-btn:focus:not(.ant-btn-primary):not(.ant-btn-danger),
  674. .dark .ant-btn:hover:not(.ant-btn-primary):not(.ant-btn-danger) {
  675. color: #fff;
  676. background-color: rgb(10 117 87 / 50%);
  677. border-color: var(--color-primary-100);
  678. }
  679. .dark .ant-btn-primary[disabled],
  680. .dark .ant-btn-danger[disabled],
  681. .dark .ant-calendar-ok-btn-disabled {
  682. color: rgb(255 255 255 / 35%);
  683. background-color: var(--dark-color-surface-300);
  684. border-color: #42516c;
  685. }
  686. .dark
  687. .ant-table-tbody
  688. > tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected)
  689. > td,
  690. .dark .client-table-odd-row {
  691. background-color: var(--dark-color-table-hover);
  692. }
  693. .dark .ant-table-row-expand-icon {
  694. color: #fff;
  695. background-color: #fff0;
  696. border-color: rgb(255 255 255 / 20%);
  697. }
  698. .dark .ant-table-row-expand-icon:hover {
  699. color: var(--color-primary-100);
  700. background-color: #fff0;
  701. border-color: var(--color-primary-100);
  702. }
  703. .dark .ant-switch:not(.ant-switch-checked),
  704. .dark .ant-progress-line .ant-progress-inner {
  705. background-color: var(--dark-color-surface-500);
  706. }
  707. .dark .ant-progress-circle-trail {
  708. stroke: var(--dark-color-stroke) !important;
  709. }
  710. .dark .ant-popover-inner {
  711. background-color: var(--dark-color-surface-500);
  712. }
  713. .dark > .ant-popover-content > .ant-popover-arrow {
  714. border-color: var(--dark-color-surface-500);
  715. }
  716. @media (max-width: 768px) {
  717. .dark .ant-popover-inner {
  718. background-color: var(--dark-color-surface-200);
  719. }
  720. .dark > .ant-popover-content > .ant-popover-arrow {
  721. border-color: var(--dark-color-surface-200);
  722. }
  723. }
  724. .ant-dropdown-menu-dark .ant-dropdown-menu-item:hover,
  725. .dark .ant-select-dropdown-menu-item-selected,
  726. .dark .ant-calendar-time-picker-select-option-selected {
  727. background-color: var(--dark-color-surface-600);
  728. }
  729. .ant-menu-dark .ant-menu-item:hover {
  730. background-color: var(--dark-color-surface-300);
  731. }
  732. .dark .ant-alert-message {
  733. color: rgba(255, 255, 255, 0.85);
  734. }
  735. .dark .ant-tag {
  736. color: var(--dark-color-tag-color);
  737. background-color: var(--dark-color-tag-bg);
  738. border-color: var(--dark-color-tag-border);
  739. }
  740. .dark .ant-tag-blue {
  741. background-color: var(--dark-color-tag-blue-bg);
  742. border-color: var(--dark-color-tag-blue-border);
  743. color: var(--dark-color-tag-blue-color);
  744. }
  745. .dark .ant-tag-red,
  746. .dark .ant-alert-error {
  747. background-color: var(--dark-color-tag-red-bg);
  748. border-color: var(--dark-color-tag-red-border);
  749. color: var(--dark-color-tag-red-color);
  750. }
  751. .dark .ant-tag-orange,
  752. .dark .ant-alert-warning {
  753. background-color: var(--dark-color-tag-orange-bg);
  754. border-color: var(--dark-color-tag-orange-border);
  755. color: var(--dark-color-tag-orange-color);
  756. }
  757. .dark .ant-tag-green {
  758. background-color: var(--dark-color-tag-green-bg);
  759. border-color: var(--dark-color-tag-green-border);
  760. color: var(--dark-color-tag-green-color);
  761. }
  762. .dark .ant-tag-purple {
  763. background-color: var(--dark-color-tag-purple-bg);
  764. border-color: var(--dark-color-tag-purple-border);
  765. color: var(--dark-color-tag-purple-color);
  766. }
  767. .dark .ant-modal-content,
  768. .dark .ant-modal-header {
  769. background-color: var(--dark-color-surface-700);
  770. }
  771. .dark .ant-calendar-next-month-btn-day .ant-calendar-date,
  772. .dark .ant-calendar-last-month-cell .ant-calendar-date {
  773. color: var(--dark-color-surface-300);
  774. }
  775. .dark .ant-calendar-selected-day .ant-calendar-date {
  776. background-color: var(--color-primary-100) !important;
  777. color: #fff;
  778. }
  779. .dark .ant-calendar-date:hover,
  780. .dark .ant-calendar-time-picker-select li:hover {
  781. background-color: var(--dark-color-surface-600);
  782. color: #fff;
  783. }
  784. .dark .ant-calendar-header a:hover,
  785. .dark .ant-calendar-header a:hover::before,
  786. .dark .ant-calendar-header a:hover::after {
  787. border-color: #fff;
  788. }
  789. .dark .ant-calendar-time-picker-select li:focus {
  790. color: #fff;
  791. font-weight: 600;
  792. outline: none;
  793. background-color: var(--color-primary-100);
  794. }
  795. .dark .ant-calendar-time-picker-select {
  796. border-right-color: var(--dark-color-surface-300);
  797. }
  798. .has-warning .ant-select-selection,
  799. .has-warning .ant-select-selection:hover,
  800. .has-warning .ant-input,
  801. .has-warning .ant-input:hover {
  802. background-color: #ffeee1;
  803. border-color: #fec093;
  804. }
  805. .has-warning .ant-input::placeholder {
  806. color: #f37b24;
  807. }
  808. .has-warning .ant-input:not([disabled]):hover {
  809. border-color: #fec093;
  810. }
  811. .dark .has-warning .ant-select-selection,
  812. .dark .has-warning .ant-select-selection:hover,
  813. .dark .has-warning .ant-input,
  814. .dark .has-warning .ant-input:hover {
  815. border-color: #784e1d;
  816. background: rgb(49, 35, 19);
  817. }
  818. .dark .has-warning .ant-input::placeholder {
  819. color: rgb(255 160 49 / 70%);
  820. }
  821. .dark .has-warning .anticon {
  822. color: #ffa031;
  823. }
  824. .dark .has-success .anticon {
  825. color: var(--color-primary-100);
  826. animation-name: diffZoomIn1 !important;
  827. }
  828. .dark .anticon-close-circle {
  829. color: #e04141;
  830. }
  831. .dark .ant-spin-nested-loading > div > .ant-spin .ant-spin-text {
  832. text-shadow: 0 1px 2px #00000077;
  833. }
  834. .dark .ant-spin {
  835. color: #fff;
  836. }
  837. .dark .ant-spin-dot-item {
  838. background-color: #fff;
  839. }
  840. .ant-menu,
  841. .ant-radio-button-wrapper {
  842. user-select: none;
  843. -webkit-user-select: none;
  844. }
  845. .ant-calendar-date,
  846. .ant-calendar-year-panel-year,
  847. .ant-calendar-decade-panel-decade,
  848. .ant-calendar-month-panel-month,
  849. .ant-checkbox-inner,
  850. .ant-checkbox-checked:after,
  851. .ant-table-row-expand-icon {
  852. border-radius: 6px;
  853. }
  854. .ant-calendar-date:hover {
  855. background-color: rgb(232 244 242);
  856. }
  857. .ant-calendar-date:active {
  858. background-color: rgb(232 244 242);
  859. color: rgba(0, 0, 0, 0.65);
  860. }
  861. .ant-calendar-today .ant-calendar-date {
  862. color: var(--color-primary-100);
  863. font-weight: 700;
  864. border-color: var(--color-primary-100);
  865. }
  866. .dark .ant-calendar-today .ant-calendar-date {
  867. color: #fff;
  868. font-weight: 700;
  869. border-color: var(--color-primary-100);
  870. }
  871. .ant-calendar-selected-day .ant-calendar-date {
  872. background: var(--color-primary-100);
  873. color: #ffffff;
  874. }
  875. li.ant-select-dropdown-menu-item:empty:after {
  876. content: "None";
  877. font-weight: normal;
  878. color: rgba(0, 0, 0, 0.25);
  879. }
  880. .dark li.ant-select-dropdown-menu-item:empty:after {
  881. content: "None";
  882. font-weight: normal;
  883. color: rgba(255, 255, 255, 0.3);
  884. }
  885. .ant-select-dropdown.ant-select-dropdown--multiple
  886. .ant-select-dropdown-menu-item:hover
  887. .ant-select-selected-icon {
  888. color: rgba(0, 0, 0, 0.87);
  889. }
  890. .dark.ant-select-dropdown.ant-select-dropdown--multiple
  891. .ant-select-dropdown-menu-item:hover
  892. .ant-select-selected-icon {
  893. color: rgb(255, 255, 255);
  894. }
  895. .ant-select-dropdown.ant-select-dropdown--multiple
  896. .ant-select-dropdown-menu-item-selected
  897. .ant-select-selected-icon,
  898. .ant-select-dropdown.ant-select-dropdown--multiple
  899. .ant-select-dropdown-menu-item-selected:hover
  900. .ant-select-selected-icon {
  901. color: var(--color-primary-100);
  902. }
  903. .ant-select-selection:hover,
  904. .ant-input-number-focused,
  905. .ant-input-number:hover {
  906. background-color: rgb(232 244 242);
  907. }
  908. .dark .ant-input-number-handler:active {
  909. background-color: var(--color-primary-100);
  910. }
  911. .dark .ant-input-number-handler:hover .ant-input-number-handler-down-inner,
  912. .dark .ant-input-number-handler:hover .ant-input-number-handler-up-inner {
  913. color: #fff;
  914. }
  915. .dark .ant-input-number-handler-down {
  916. border-top: 1px solid rgba(217, 217, 217, 0.3);
  917. }
  918. .dark .ant-calendar-year-panel-header .ant-calendar-year-panel-century-select,
  919. .dark .ant-calendar-year-panel-header .ant-calendar-year-panel-decade-select,
  920. .dark .ant-calendar-year-panel-header .ant-calendar-year-panel-month-select,
  921. .dark
  922. .ant-calendar-year-panel-header
  923. .ant-calendar-year-panel-year-select
  924. .dark
  925. .ant-calendar-month-panel-header
  926. .ant-calendar-month-panel-century-select,
  927. .dark .ant-calendar-month-panel-header .ant-calendar-month-panel-decade-select,
  928. .dark .ant-calendar-month-panel-header .ant-calendar-month-panel-month-select,
  929. .dark .ant-calendar-month-panel-header .ant-calendar-month-panel-year-select {
  930. color: rgba(255, 255, 255, 0.85);
  931. }
  932. .dark .ant-calendar-year-panel-header {
  933. border-bottom: 1px solid var(--dark-color-surface-200);
  934. }
  935. .dark .ant-calendar-year-panel-last-decade-cell .ant-calendar-year-panel-year,
  936. .dark .ant-calendar-year-panel-next-decade-cell .ant-calendar-year-panel-year {
  937. color: rgba(255, 255, 255, 0.35);
  938. }
  939. .ant-dropdown-menu-dark,
  940. .dark .ant-calendar-year-panel-year:hover,
  941. .dark .ant-calendar-month-panel-month:hover,
  942. .dark .ant-calendar-decade-panel-decade:hover {
  943. background-color: var(--dark-color-surface-200);
  944. }
  945. .dark .ant-calendar-header a:hover {
  946. color: #fff;
  947. }
  948. .dark .ant-calendar-month-panel-header {
  949. background-color: var(--dark-color-background);
  950. border-bottom: 1px solid var(--dark-color-surface-200);
  951. }
  952. .dark .ant-calendar-year-panel,
  953. .dark .ant-calendar table {
  954. background-color: var(--dark-color-background);
  955. }
  956. .dark .ant-calendar-year-panel-selected-cell .ant-calendar-year-panel-year,
  957. .dark
  958. .ant-calendar-year-panel-selected-cell
  959. .ant-calendar-year-panel-year:hover,
  960. .dark .ant-calendar-month-panel-selected-cell .ant-calendar-month-panel-month,
  961. .dark
  962. .ant-calendar-month-panel-selected-cell
  963. .ant-calendar-month-panel-month:hover,
  964. .dark
  965. .ant-calendar-decade-panel-selected-cell
  966. .ant-calendar-decade-panel-decade,
  967. .dark
  968. .ant-calendar-decade-panel-selected-cell
  969. .ant-calendar-decade-panel-decade:hover {
  970. color: #fff;
  971. background-color: var(--color-primary-100);
  972. }
  973. .dark .ant-calendar-last-month-cell .ant-calendar-date,
  974. .dark .ant-calendar-last-month-cell .ant-calendar-date:hover,
  975. .dark .ant-calendar-next-month-btn-day .ant-calendar-date,
  976. .dark .ant-calendar-next-month-btn-day .ant-calendar-date:hover {
  977. color: rgb(255 255 255 / 25%);
  978. background: transparent;
  979. border-color: transparent;
  980. }
  981. .dark .ant-calendar-today .ant-calendar-date:hover {
  982. color: #fff;
  983. border-color: var(--color-primary-100);
  984. background-color: var(--color-primary-100);
  985. }
  986. .dark
  987. .ant-calendar-decade-panel-last-century-cell
  988. .ant-calendar-decade-panel-decade,
  989. .dark
  990. .ant-calendar-decade-panel-next-century-cell
  991. .ant-calendar-decade-panel-decade {
  992. color: rgb(255 255 255 / 25%);
  993. }
  994. .dark .ant-calendar-decade-panel-header {
  995. border-bottom: 1px solid var(--dark-color-surface-200);
  996. background-color: var(--dark-color-background);
  997. }
  998. .dark .ant-checkbox-inner {
  999. background-color: rgba(0, 135, 113, 0.3);
  1000. border-color: rgba(0, 135, 113, 0.3);
  1001. }
  1002. .dark .ant-checkbox-checked .ant-checkbox-inner {
  1003. background-color: var(--color-primary-100);
  1004. border-color: var(--color-primary-100);
  1005. }
  1006. .dark .ant-calendar-input {
  1007. background-color: var(--dark-color-background);
  1008. color: var(--dark-color-text-primary);
  1009. }
  1010. .dark .ant-calendar-input::placeholder {
  1011. color: rgba(255, 255, 255, 0.25);
  1012. }
  1013. .ant-input-group.ant-input-group-compact-addon:not(:first-child):not(
  1014. :last-child
  1015. ),
  1016. .ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(
  1017. :last-child
  1018. ),
  1019. .ant-input-group.ant-input-group-compact
  1020. > .ant-input:not(:first-child):not(:last-child),
  1021. .ant-input-number-handler,
  1022. .ant-input-number-handler-wrap {
  1023. border-radius: 0;
  1024. }
  1025. .ant-input-number {
  1026. overflow: clip;
  1027. }
  1028. .ant-modal-body,
  1029. .ant-collapse-content>.ant-collapse-content-box {
  1030. overflow-x: auto;
  1031. }
  1032. .ant-calendar-year-panel-year:hover,
  1033. .ant-calendar-decade-panel-decade:hover,
  1034. .ant-calendar-month-panel-month:hover,
  1035. .ant-dropdown-menu-item:hover,
  1036. .ant-dropdown-menu-submenu-title:hover,
  1037. .ant-select-dropdown-menu-item-active:not(.ant-select-dropdown-menu-item-disabled),
  1038. .ant-select-dropdown-menu-item:hover:not(.ant-select-dropdown-menu-item-disabled),
  1039. .ant-table-tbody
  1040. > tr.ant-table-row-hover:not(.ant-table-expanded-row):not(
  1041. .ant-table-row-selected
  1042. )
  1043. > td,
  1044. .ant-table-tbody
  1045. > tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected)
  1046. > td,
  1047. .ant-table-thead
  1048. > tr.ant-table-row-hover:not(.ant-table-expanded-row):not(
  1049. .ant-table-row-selected
  1050. )
  1051. > td,
  1052. .ant-table-thead
  1053. > tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected)
  1054. > td,
  1055. .ant-calendar-time-picker-select li:hover {
  1056. background-color: rgb(232 244 242);
  1057. }
  1058. .dark .ant-dropdown-menu-submenu-title:hover,
  1059. .dark .ant-select-dropdown-menu-item-active:not(.ant-select-dropdown-menu-item-disabled),
  1060. .dark .ant-select-dropdown-menu-item:hover:not(.ant-select-dropdown-menu-item-disabled) {
  1061. background-color: var(--dark-color-surface-600);
  1062. }
  1063. .ant-select-dropdown,
  1064. .ant-popover-inner {
  1065. overflow-x: hidden;
  1066. }
  1067. .ant-popover-inner-content {
  1068. max-height: 400px;
  1069. overflow-y: auto;
  1070. }
  1071. .qr-bg {
  1072. width: 100%;
  1073. height: 100%;
  1074. background-color: #fff;
  1075. display: flex;
  1076. justify-content: center;
  1077. align-content: center;
  1078. padding: 0.5rem;
  1079. border-radius: 1rem;
  1080. }
  1081. .ant-input-group-addon:not(:first-child):not(:last-child) {
  1082. border-radius: 0rem 1rem 1rem 0rem;
  1083. }
  1084. .ant-tag {
  1085. margin-right: 6px;
  1086. }
  1087. b, strong {
  1088. font-weight: 500;
  1089. }
  1090. .ant-collapse>.ant-collapse-item>.ant-collapse-header {
  1091. padding: 10px 16px 10px 40px;
  1092. }
  1093. .dark .ant-message-notice-content {
  1094. background-color: var(--dark-color-surface-200);
  1095. border: 1px solid var(--dark-color-surface-300);
  1096. color: var(--dark-color-text-primary);
  1097. }
  1098. .ant-btn-danger {
  1099. background-color: var(--dark-color-btn-danger);
  1100. border-color: var(--dark-color-btn-danger-border);
  1101. }
  1102. .ant-btn-danger:focus, .ant-btn-danger:hover {
  1103. background-color: var(--dark-color-btn-danger-hover);
  1104. border-color: var(--dark-color-btn-danger-hover);
  1105. }
  1106. .dark .ant-alert-close-icon .anticon-close:hover {
  1107. color: rgb(255 255 255);
  1108. }
  1109. .ant-empty-small {
  1110. margin: 4px 0;
  1111. background-color: transparent !important;
  1112. }
  1113. .ant-empty-small .ant-empty-image {
  1114. height: 20px;
  1115. }
  1116. .ant-menu-theme-switch:hover {
  1117. background-color: transparent !important;
  1118. cursor: default !important;
  1119. }