:root {
  --ant-primary-color: #1677ff;
  --ant-primary-color-hover: color-mix(in srgb, var(--ant-primary-color) 90%, white);
  --ant-primary-color-active: color-mix(in srgb, var(--ant-primary-color) 110%, black);
  --ant-primary-1: color-mix(in srgb, var(--ant-primary-color) 20%, white);
  --primary-color: var(--ant-primary-color);
  --primary-color-hover: var(--ant-primary-color-hover);
  --primary-color-active: var(--ant-primary-color-active);
  --primary-1: var(--ant-primary-1);
  --bg-color: #f0f2f5;
  --component-background: #fff;
  --sidebar-background: #fff;
  --drawer-bg: #fff;
  --modal-bg: #fff;
  --dropdown-bg: #fff;
  --input-bg: #fff;
  --list-bg: #fff;
  --card-bg: #fff;
  --table-header-bg: #fafafa;
  --hover-bg: rgba(0, 0, 0, 0.04);
  --active-bg: rgba(0, 0, 0, 0.06);
  --selected-bg: var(--primary-1);
  --text-primary: rgba(0, 0, 0, 0.85);
  --text-secondary: rgba(0, 0, 0, 0.65);
  --text-disabled: rgba(0, 0, 0, 0.25);
  --text-color: var(--text-primary);
  --text-color-secondary: var(--text-secondary);
  --border-color: #f0f0f0;
  --border-color-base: #d9d9d9;
  --border-color-split: #f0f0f0;
  --drawer-border: #f0f0f0;
  --modal-border: #f0f0f0;
  --divider-color: #f0f0f0;
  --menu-bg: var(--menu-bg-light);
  --menu-bg-light: #fff;
  --menu-bg-dark: #1f1f1f;
  --menu-item-color: var(--menu-item-color-light);
  --menu-item-color-light: var(--text-primary);
  --menu-item-color-dark: rgba(255, 255, 255, 0.85);
  --menu-item-hover-color: var(--menu-item-hover-color-light);
  --menu-item-hover-color-light: var(--primary-color);
  --menu-item-hover-color-dark: #fff;
  --menu-item-active-color: var(--menu-item-active-color-light);
  --menu-item-active-color-light: var(--primary-color);
  --menu-item-active-color-dark: #fff;
  --menu-item-active-bg: var(--menu-item-active-bg-light);
  --menu-item-active-bg-light: var(--primary-1);
  --menu-item-active-bg-dark: var(--primary-color);
  --btn-primary-bg: var(--primary-color);
  --btn-primary-color: #fff;
  --btn-hover-bg: var(--primary-color-hover);
  --btn-active-bg: var(--primary-color-active);
}
.dark-theme {
  --bg-color: #0d1117;
  --component-background: #161b22;
  --sidebar-background: #1f242d;
  --drawer-bg: #1f242d;
  --modal-bg: #21262D;
  --modal-bg-elevated: #2D333B;
  --dropdown-bg: #1f242d;
  --input-bg: #1c2128;
  --modal-input-bg: #161b22;
  --list-bg: #161b22;
  --card-bg: #161b22;
  --table-header-bg: #1f242d;
  --hover-bg: rgba(255, 255, 255, 0.04);
  --active-bg: rgba(255, 255, 255, 0.08);
  --selected-bg: var(--primary-color);
  --text-primary: rgba(255, 255, 255, 0.95);
  --text-secondary: rgba(255, 255, 255, 0.65);
  --text-tertiary: rgba(255, 255, 255, 0.45);
  --text-disabled: rgba(255, 255, 255, 0.25);
  --text-color: var(--text-primary);
  --text-color-secondary: var(--text-secondary);
  --border-color: rgba(255, 255, 255, 0.06);
  --border-color-base: rgba(255, 255, 255, 0.06);
  --border-color-split: rgba(255, 255, 255, 0.04);
  --border-hover: rgba(255, 255, 255, 0.1);
  --drawer-border: rgba(255, 255, 255, 0.06);
  --modal-border: rgba(255, 255, 255, 0.15);
  --modal-glow-border: rgba(96, 165, 250, 0.25);
  --divider-color: rgba(255, 255, 255, 0.04);
  --table-border: rgba(255, 255, 255, 0.03);
  --table-header-border: rgba(255, 255, 255, 0.05);
  --input-border: rgba(255, 255, 255, 0.15);
  --input-border-hover: rgba(255, 255, 255, 0.25);
  --input-border-focus: var(--primary-color);
  --menu-bg: var(--sidebar-background);
  --menu-item-color: var(--text-secondary);
  --menu-item-hover-color: var(--primary-color);
  --menu-item-active-color: var(--primary-color);
  --menu-item-active-bg: rgba(96, 165, 250, 0.1);
  --menu-active-border: #60A5FA;
  --primary-color: #60A5FA;
  --primary-color-hover: #93C5FD;
  --primary-color-active: #3B82F6;
  --primary-alpha-10: rgba(96, 165, 250, 0.1);
  --primary-alpha-20: rgba(96, 165, 250, 0.2);
  --btn-primary-bg: var(--primary-color);
  --btn-primary-color: #fff;
  --btn-hover-bg: var(--primary-color-hover);
  --btn-active-bg: var(--primary-color-active);
  --modal-shadow: 0 20px 50px rgba(0, 0, 0, 0.5), 0 10px 25px rgba(0, 0, 0, 0.3), 0 0 1px rgba(0, 0, 0, 0.5);
  --modal-mask-bg: rgba(0, 0, 0, 0.45);
  --modal-mask-blur: 8px;
  --modal-close-color: rgba(255, 255, 255, 0.65);
  --modal-close-hover-color: rgba(255, 255, 255, 0.95);
}
.theme-transition {
  transition: all 0.3s ease-in-out;
}
/* 色弱模式样式 */
.color-weak {
  filter: invert(80%);
}
.color-weak .ant-layout-header,
.color-weak .ant-layout-footer,
.color-weak .ant-layout-sider {
  filter: invert(100%);
}
.color-weak img,
.color-weak .anticon,
.color-weak .ant-avatar {
  filter: invert(100%);
}
/**
 * 公共样式Mixins
 * 用于减少代码重复，提高样式复用性
 */
/* 新增布局模式样式 */
/* 分栏布局 */
.layout-column .column-header {
  background: #fff;
  border-bottom: 1px solid #f0f0f0;
  padding: 0;
  height: 56px;
  line-height: 56px;
  position: relative;
  z-index: 100;
}
.layout-column .column-header .column-header-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
  padding: 0 24px;
}
.layout-column .column-header .column-header-left .header-logo {
  display: flex;
  align-items: center;
}
.layout-column .column-header .column-header-left .header-logo .logo-title {
  font-size: 20px;
  font-weight: 600;
  margin-left: 80px;
  color: var(--primary-color);
}
.layout-column .column-header .column-header-right .header-actions {
  display: flex;
  align-items: center;
  gap: 16px;
}
.layout-column .column-header .column-header-right .header-actions .action-icon {
  font-size: 16px;
  color: #666;
  cursor: pointer;
  padding: 8px;
  border-radius: 4px;
  transition: all 0.3s;
}
.layout-column .column-header .column-header-right .header-actions .action-icon:hover {
  color: var(--primary-color);
  background: #f0f9ff;
}
.layout-column .column-header .column-header-right .header-actions .user-info {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  padding: 4px 12px;
  border-radius: 6px;
  transition: background 0.3s;
}
.layout-column .column-header .column-header-right .header-actions .user-info:hover {
  background: #f0f9ff;
}
.layout-column .column-header .column-header-right .header-actions .user-info .user-name {
  font-size: 14px;
  color: #333;
}
.layout-column .first-level-menu {
  border-right: 1px solid #f0f0f0;
  background: #fafafa;
}
.layout-column .first-level-menu .column-first-menu {
  height: 100%;
}
.layout-column .first-level-menu .column-first-menu .menu-logo {
  padding: 16px;
  text-align: center;
  border-bottom: 1px solid #f0f0f0;
  background: #fff;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.layout-column .first-level-menu .column-first-menu .menu-logo .logo-img {
  width: 32px;
  height: 32px;
  object-fit: contain;
}
.layout-column .first-level-menu .column-first-menu .ant-menu {
  border-right: none;
  background: transparent;
  padding-top: 0;
}
.layout-column .first-level-menu .column-first-menu .ant-menu-item {
  display: grid !important;
  place-items: center !important;
  height: 60px;
  padding: 0 !important;
  margin: 8px 4px;
  border-radius: 8px;
  text-align: center;
  border: 1px solid transparent;
  width: 60px !important;
}
.layout-column .first-level-menu .column-first-menu .ant-menu-item:hover {
  background: var(--primary-1);
  border-color: transparent;
}
.layout-column .first-level-menu .column-first-menu .ant-menu-item:hover .anticon {
  color: var(--primary-color) !important;
}
.layout-column .first-level-menu .column-first-menu .ant-menu-item.ant-menu-item-selected {
  background: var(--primary-1);
  color: var(--primary-color);
}
.layout-column .first-level-menu .column-first-menu .ant-menu-item.ant-menu-item-selected .anticon {
  color: var(--primary-color) !important;
}
.layout-column .first-level-menu .column-first-menu .ant-menu-item .anticon {
  font-size: 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  width: 24px !important;
  height: 24px !important;
  line-height: 1 !important;
  color: var(--primary-color);
  transition: color 0.3s ease;
}
.layout-column .first-level-menu .column-first-menu .ant-menu-item span {
  display: none !important;
}
.layout-column .first-level-menu .column-first-menu .ant-menu-item .ant-tooltip-open {
  display: grid !important;
  place-items: center !important;
  width: 100% !important;
  height: 100% !important;
}
.layout-column .first-level-menu .column-first-menu .ant-menu-item .bear-jia-icon {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.layout-column .second-level-menu {
  border-right: 1px solid #f0f0f0;
  background: #fff;
}
.layout-column .second-level-menu .column-second-menu {
  height: 100%;
}
.layout-column .second-level-menu .column-second-menu .system-title {
  padding: 16px;
  text-align: center;
  border-bottom: 1px solid #f0f0f0;
  background: #fff;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.layout-column .second-level-menu .column-second-menu .system-title .title-text {
  font-size: 16px;
  font-weight: 600;
  color: var(--primary-color);
}
.layout-column .second-level-menu .column-second-menu .ant-menu {
  border-right: none;
  background: transparent;
  padding-top: 0;
}
.layout-column .second-level-menu .column-second-menu .ant-menu-item {
  margin: 4px 8px;
  border-radius: 6px;
}
.layout-column .second-level-menu .column-second-menu .ant-menu-item:hover {
  background: #f0f9ff;
}
.layout-column .second-level-menu .column-second-menu .ant-menu-item.ant-menu-item-selected {
  background: var(--primary-color);
  color: #fff;
}
.layout-column .second-level-menu .column-second-menu .ant-menu-item.ant-menu-item-selected .anticon {
  color: #fff;
}
.layout-column .second-level-menu .column-second-menu .ant-menu-submenu {
  margin: 4px 8px;
  border-radius: 6px;
}
.layout-column .second-level-menu .column-second-menu .ant-menu-submenu .ant-menu-submenu-title {
  border-radius: 6px;
}
.layout-column .second-level-menu .column-second-menu .ant-menu-submenu .ant-menu-submenu-title:hover {
  background: #f0f9ff;
}
.layout-column .second-level-menu .column-second-menu .ant-menu-submenu .ant-menu-item {
  margin: 2px 4px;
}
.layout-column .second-level-menu .column-second-menu .no-menu-tip {
  padding: 60px 20px;
  text-align: center;
  color: #999;
}
.layout-column .second-level-menu .column-second-menu .no-menu-tip p {
  margin: 0;
  font-size: 14px;
}
/* 抽屉布局 */
.layout-drawer {
  height: 100vh;
  display: flex;
  flex-direction: column;
  position: relative;
  background: var(--bg-color);
}
.layout-drawer .header-bar {
  flex-shrink: 0;
  background: var(--component-background);
  border-bottom: 1px solid var(--border-color);
  z-index: 10;
  position: relative;
}
.layout-drawer .header-bar .header-left .trigger {
  font-size: 18px;
  padding: 0 24px;
  cursor: pointer;
  transition: color 0.3s, transform 0.2s;
  line-height: 56px;
  color: var(--text-secondary);
}
.layout-drawer .header-bar .header-left .trigger:hover {
  color: var(--primary-color);
  transform: scale(1.1);
}
.layout-drawer .header-bar .header-left .header-title {
  margin-left: 16px;
  font-size: 16px;
  color: var(--text-primary);
}
.layout-drawer .drawer-history {
  flex-shrink: 0;
  margin-left: 0;
  width: 100%;
  background: var(--component-background);
  z-index: 9;
  position: relative;
}
.layout-drawer .layout-container__content,
.layout-drawer .drawer-content-area {
  flex: 1;
  overflow: hidden;
  background: var(--bg-color);
  position: relative;
  z-index: 1;
}
.layout-drawer .layout-container__content .content-wrapper,
.layout-drawer .drawer-content-area .content-wrapper {
  height: 100%;
  background: var(--bg-color);
  border-radius: 0;
  min-height: calc(100vh - 104px);
  padding: 16px 0 16px 16px;
  overflow: hidden;
  position: relative;
}
.layout-drawer .custom-drawer-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
  background: rgba(0, 0, 0, 0.45);
  opacity: 0;
  animation: fadeIn 0.3s ease-out forwards;
  pointer-events: auto;
}
.layout-drawer .custom-drawer-overlay .custom-drawer-menu {
  width: 280px;
  height: 100vh;
  background: var(--component-background);
  box-shadow: 2px 0 8px rgba(0, 0, 0, 0.15);
  display: flex;
  flex-direction: column;
  position: absolute;
  left: 0;
  top: 0;
  transform: translateX(-100%);
  animation: slideInLeft 0.3s ease-out forwards;
}
.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 24px;
  border-bottom: 1px solid var(--border-color);
  background: var(--component-background);
  height: 56px;
}
.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-header .drawer-title {
  font-weight: 600;
  font-size: 16px;
  color: var(--text-primary);
}
.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-header .drawer-close {
  background: none;
  border: none;
  font-size: 16px;
  cursor: pointer;
  padding: 8px;
  border-radius: 4px;
  transition: all 0.3s;
  color: var(--text-secondary);
  display: flex;
  align-items: center;
  justify-content: center;
}
.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-header .drawer-close:hover {
  background: var(--hover-bg);
  color: var(--primary-color);
  transform: rotate(90deg);
}
.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-content {
  flex: 1;
  overflow-y: auto;
  background: var(--component-background);
}
.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-content .ant-layout-sider {
  background: var(--component-background) !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  border-radius: 0 !important;
}
.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-content .ant-layout-sider .layout-logo {
  display: flex !important;
  align-items: center;
  padding: 16px 24px;
  border-bottom: 1px solid var(--border-color);
  background: var(--component-background);
}
.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-content .ant-layout-sider .layout-logo .logo-img {
  height: 32px;
  margin-right: 12px;
  transition: transform 0.3s ease;
}
.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-content .ant-layout-sider .layout-logo .logo-img:hover {
  transform: scale(1.05);
}
.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-content .ant-layout-sider .layout-logo .logo-title {
  font-size: 18px;
  font-weight: 600;
  color: var(--text-primary);
  white-space: nowrap;
}
.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-content .ant-layout-sider .ant-menu {
  border-right: none;
  background: var(--component-background);
  height: calc(100% - 80px);
}
@keyframes slideInLeft {
  from {
    transform: translateX(-100%);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes slideOutLeft {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
/* 响应式设计 */
@media (max-width: 1200px) {
  .layout-column .column-header {
    margin-left: 250px;
  }
  .layout-column .first-level-menu {
    width: 70px !important;
    min-width: 70px !important;
  }
  .layout-column .first-level-menu .ant-menu-item {
    height: 50px;
    padding: 8px 4px;
    margin: 4px 2px;
  }
  .layout-column .first-level-menu .ant-menu-item .anticon {
    font-size: 16px;
  }
  .layout-column .second-level-menu {
    width: 180px !important;
    min-width: 180px !important;
  }
  .layout-column .column-history {
    margin-left: 250px;
  }
}
@media (max-width: 768px) {
  .layout-column .first-level-menu {
    display: none;
  }
  .layout-column .second-level-menu {
    width: 100% !important;
    min-width: auto !important;
  }
  .layout-drawer .drawer-menu {
    width: 100% !important;
  }
}
@media (min-width: 769px) and (max-width: 1024px) {
  .layout-drawer .drawer-menu {
    width: 280px !important;
  }
}
@media (min-width: 1025px) {
  .layout-drawer .drawer-menu {
    width: 240px !important;
  }
}
/* 暗色主题适配 */
.dark-theme.layout-column .column-header {
  background: #1f1f1f;
  border-bottom-color: #434343;
}
.dark-theme.layout-column .column-header .column-header-left .logo-title {
  color: var(--primary-color);
}
.dark-theme.layout-column .column-header .column-header-right .action-icon {
  color: rgba(255, 255, 255, 0.65);
}
.dark-theme.layout-column .column-header .column-header-right .action-icon:hover {
  color: var(--primary-color);
  background: rgba(255, 255, 255, 0.04);
}
.dark-theme.layout-column .column-header .column-header-right .user-info:hover {
  background: rgba(255, 255, 255, 0.04);
}
.dark-theme.layout-column .column-header .column-header-right .user-info .user-name {
  color: rgba(255, 255, 255, 0.85);
}
.dark-theme.layout-column .first-level-menu {
  background: #1f1f1f;
  border-right-color: #434343;
}
.dark-theme.layout-column .first-level-menu .column-first-menu .menu-logo {
  background: #141414;
  border-bottom-color: #434343;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.dark-theme.layout-column .first-level-menu .column-first-menu .ant-menu-item {
  color: rgba(255, 255, 255, 0.65);
}
.dark-theme.layout-column .first-level-menu .column-first-menu .ant-menu-item .anticon {
  color: var(--primary-color) !important;
}
.dark-theme.layout-column .first-level-menu .column-first-menu .ant-menu-item:hover {
  background: var(--primary-1);
  border-color: transparent;
}
.dark-theme.layout-column .first-level-menu .column-first-menu .ant-menu-item:hover .anticon {
  color: var(--primary-color) !important;
}
.dark-theme.layout-column .first-level-menu .column-first-menu .ant-menu-item.ant-menu-item-selected {
  background: var(--primary-1);
  color: var(--primary-color);
}
.dark-theme.layout-column .first-level-menu .column-first-menu .ant-menu-item.ant-menu-item-selected .anticon {
  color: var(--primary-color) !important;
}
.dark-theme.layout-column .second-level-menu {
  background: #1f1f1f;
  border-right-color: #434343;
}
.dark-theme.layout-column .second-level-menu .column-second-menu .system-title {
  background: #141414;
  border-bottom-color: #434343;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.dark-theme.layout-column .second-level-menu .column-second-menu .system-title .title-text {
  color: var(--primary-color);
}
.dark-theme.layout-column .second-level-menu .column-second-menu .ant-menu {
  background: transparent;
  color: rgba(255, 255, 255, 0.65);
}
.dark-theme.layout-column .second-level-menu .column-second-menu .no-menu-tip {
  color: rgba(255, 255, 255, 0.45);
}
.dark-theme.layout-drawer {
  background: var(--bg-color);
}
.dark-theme.layout-drawer .header-bar {
  background: var(--component-background);
  border-bottom-color: var(--border-color);
}
.dark-theme.layout-drawer .header-bar .header-left .trigger {
  color: var(--text-secondary);
}
.dark-theme.layout-drawer .header-bar .header-left .trigger:hover {
  color: var(--primary-color);
}
.dark-theme.layout-drawer .header-bar .header-left .header-title {
  color: var(--text-primary);
}
.dark-theme.layout-drawer .drawer-history {
  background: var(--component-background);
}
.dark-theme.layout-drawer .layout-container__content {
  background: var(--bg-color) !important;
}
.dark-theme.layout-drawer .layout-container__content .content-wrapper {
  background: var(--bg-color) !important;
}
.dark-theme.layout-drawer .layout-container__content .content-wrapper::after {
  background: var(--bg-color);
}
.dark-theme.layout-drawer .custom-drawer-overlay {
  background: rgba(0, 0, 0, 0.65);
}
.dark-theme.layout-drawer .custom-drawer-overlay .custom-drawer-menu {
  background: var(--component-background);
  box-shadow: 2px 0 8px rgba(0, 0, 0, 0.25);
}
.dark-theme.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-header {
  background: var(--component-background);
  border-bottom-color: var(--border-color);
}
.dark-theme.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-header .drawer-title {
  color: var(--text-primary);
}
.dark-theme.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-header .drawer-close {
  color: var(--text-secondary);
}
.dark-theme.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-header .drawer-close:hover {
  background: var(--hover-bg);
  color: var(--primary-color);
}
.dark-theme.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-content {
  background: var(--component-background);
}
.dark-theme.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-content .ant-layout-sider {
  background: var(--component-background) !important;
}
.dark-theme.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-content .ant-layout-sider .layout-logo {
  background: var(--component-background);
  border-bottom-color: var(--border-color);
}
.dark-theme.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-content .ant-layout-sider .layout-logo .logo-title {
  color: var(--text-primary);
}
.dark-theme.layout-drawer .custom-drawer-overlay .custom-drawer-menu .drawer-content .ant-layout-sider .ant-menu {
  background: var(--component-background);
  color: var(--text-primary);
}
.side-menu {
  height: 100%;
  border-right: 0;
}
.side-menu::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
.side-menu::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.12);
  border-radius: 3px;
  box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.05);
}
.side-menu::-webkit-scrollbar-thumb:hover {
  background: rgba(0, 0, 0, 0.24);
}
.side-menu::-webkit-scrollbar-track {
  background: rgba(0, 0, 0, 0.06);
  border-radius: 3px;
  box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.05);
}
.layout-logo {
  height: 64px;
  line-height: 64px;
  overflow: hidden;
  white-space: nowrap;
  padding: 0 16px;
}
.layout-logo img {
  width: 32px;
  height: 32px;
  margin-right: 12px;
  vertical-align: middle;
}
.layout-logo h1 {
  display: inline-block;
  margin: 0;
  color: #fff;
  font-weight: 600;
  font-size: 18px;
  vertical-align: middle;
}
.ant-menu-light {
  background: var(--menu-bg-light);
}
.ant-menu-light .ant-menu-item {
  color: var(--menu-item-color-light);
  transition: all 0.3s;
}
.ant-menu-light .ant-menu-item.ant-menu-item-selected {
  color: var(--menu-item-active-color-light) !important;
  background: var(--menu-item-active-bg-light) !important;
}
.ant-menu-light .ant-menu-item.ant-menu-item-selected::after {
  border-right-color: var(--primary-color) !important;
}
.ant-menu-light .ant-menu-item.ant-menu-item-selected .anticon {
  color: var(--menu-item-active-color-light) !important;
}
.ant-menu-light .ant-menu-item .anticon {
  color: inherit;
}
.ant-menu-light .ant-menu-submenu-title {
  color: var(--menu-item-color-light);
  transition: all 0.3s;
}
.ant-menu-light .ant-menu-submenu-title .anticon {
  color: inherit;
}
.ant-menu-light .ant-menu-submenu-selected > .ant-menu-submenu-title {
  color: var(--menu-item-active-color-light) !important;
}
.ant-menu-light .ant-menu-submenu-selected > .ant-menu-submenu-title .anticon {
  color: var(--menu-item-active-color-light) !important;
}
.dark-theme .side-menu {
  background: var(--component-background) !important;
}
.dark-theme .ant-menu-dark {
  background: var(--component-background) !important;
}
.dark-theme .ant-menu-dark .ant-menu-item {
  border-radius: 8px !important;
  margin: 2px 8px !important;
  transition: all 0.3s ease !important;
  color: var(--menu-item-color-dark);
  background: transparent !important;
}
.dark-theme .ant-menu-dark .ant-menu-item span,
.dark-theme .ant-menu-dark .ant-menu-item .ant-menu-title-content {
  background: transparent !important;
}
.dark-theme .ant-menu-dark .ant-menu-item:hover {
  color: var(--primary-color) !important;
  background: linear-gradient(135deg, rgba(24, 144, 255, 0.15), rgba(24, 144, 255, 0.1)) !important;
  box-shadow: 0 2px 8px rgba(24, 144, 255, 0.2) !important;
  transform: translateX(2px) !important;
}
.dark-theme .ant-menu-dark .ant-menu-item.ant-menu-item-selected {
  background: linear-gradient(135deg, var(--primary-color), #40a9ff) !important;
  color: #fff !important;
  font-weight: 600 !important;
  box-shadow: 0 4px 12px rgba(24, 144, 255, 0.4) !important;
}
.dark-theme .ant-menu-dark .ant-menu-item.ant-menu-item-selected .anticon {
  color: #fff !important;
}
.dark-theme .ant-menu-dark .ant-menu-item.ant-menu-item-selected:hover {
  background: linear-gradient(135deg, #40a9ff, var(--primary-color)) !important;
  transform: translateX(2px) !important;
  box-shadow: 0 6px 16px rgba(24, 144, 255, 0.5) !important;
}
.dark-theme .ant-menu-dark .ant-menu-submenu-title {
  border-radius: 8px !important;
  margin: 2px 8px !important;
  transition: all 0.3s ease !important;
  color: var(--menu-item-color-dark);
  background: transparent !important;
}
.dark-theme .ant-menu-dark .ant-menu-submenu-title span,
.dark-theme .ant-menu-dark .ant-menu-submenu-title .ant-menu-title-content {
  background: transparent !important;
}
.dark-theme .ant-menu-dark .ant-menu-submenu-title:hover {
  color: var(--primary-color) !important;
  background: linear-gradient(135deg, rgba(24, 144, 255, 0.15), rgba(24, 144, 255, 0.1)) !important;
  box-shadow: 0 2px 8px rgba(24, 144, 255, 0.2) !important;
  transform: translateX(2px) !important;
}
.dark-theme .ant-menu-dark .ant-menu-submenu-title.ant-menu-submenu-selected {
  color: var(--primary-color) !important;
  background: linear-gradient(135deg, rgba(24, 144, 255, 0.2), rgba(24, 144, 255, 0.15)) !important;
}
.dark-theme .ant-menu-dark .ant-menu-submenu-title.ant-menu-submenu-selected span {
  background: transparent !important;
}
.dark-theme .ant-menu-dark .ant-menu-submenu-selected > .ant-menu-submenu-title {
  color: var(--menu-item-active-color-dark) !important;
}
.dark-theme .ant-menu-dark .ant-menu-submenu-selected > .ant-menu-submenu-title .anticon {
  color: var(--menu-item-active-color-dark) !important;
}
.dark-theme .ant-menu-dark .ant-menu-submenu {
  background: transparent !important;
}
.dark-theme .ant-menu-dark .ant-menu-submenu .ant-menu-sub {
  background: var(--component-background) !important;
}
.dark-theme .ant-layout-sider {
  background: var(--component-background) !important;
}
.dark-theme .ant-layout-sider .ant-menu {
  background: var(--component-background) !important;
}
.dark-theme .ant-dropdown .ant-menu {
  background-color: var(--component-background) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: 8px !important;
  padding: 4px !important;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.4) !important;
}
.dark-theme .ant-dropdown .ant-menu .ant-menu-item {
  background-color: transparent !important;
  background: transparent !important;
  color: var(--text-primary) !important;
  border-radius: 4px !important;
  margin: 2px 4px !important;
  height: 36px !important;
  line-height: 36px !important;
}
.dark-theme .ant-dropdown .ant-menu .ant-menu-item:hover {
  background-color: rgba(255, 255, 255, 0.08) !important;
  background: rgba(255, 255, 255, 0.08) !important;
}
.dark-theme .ant-dropdown .ant-menu .ant-menu-item.ant-menu-item-selected,
.dark-theme .ant-dropdown .ant-menu .ant-menu-item.ant-menu-item-active {
  background-color: rgba(255, 255, 255, 0.08) !important;
  background: rgba(255, 255, 255, 0.08) !important;
}
.dark-theme .ant-dropdown .ant-menu .ant-menu-item .anticon {
  color: var(--text-secondary) !important;
}
.ant-btn {
  transition: all 0.2s ease;
  margin-right: 8px;
  border-radius: 6px;
}
.ant-btn-primary {
  color: var(--btn-primary-color);
  background-color: var(--btn-primary-bg);
}
.ant-btn-primary:active {
  color: var(--btn-primary-color);
  background-color: var(--btn-active-bg);
  border-color: var(--btn-active-bg);
}
.dark-theme .ant-btn:not(.ant-btn-primary):not(.ant-btn-link):not(.ant-btn-text) {
  background-color: transparent !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  color: var(--text-secondary) !important;
  box-shadow: none !important;
}
.dark-theme .ant-btn:not(.ant-btn-primary):not(.ant-btn-link):not(.ant-btn-text):hover {
  border-color: var(--primary-color) !important;
  color: var(--primary-color) !important;
  background-color: rgba(255, 255, 255, 0.05) !important;
}
.dark-theme .ant-btn:not(.ant-btn-primary):not(.ant-btn-link):not(.ant-btn-text).ant-btn-dangerous {
  border-color: rgba(255, 77, 79, 0.3) !important;
  color: #ff4d4f !important;
}
.dark-theme .ant-btn:not(.ant-btn-primary):not(.ant-btn-link):not(.ant-btn-text).ant-btn-dangerous:hover {
  background-color: rgba(255, 77, 79, 0.1) !important;
  border-color: #ff4d4f !important;
}
.dark-theme .ant-btn-primary {
  color: #fff !important;
  background-color: var(--primary-color) !important;
  border: none !important;
  box-shadow: 0 4px 12px rgba(24, 144, 255, 0.2) !important;
}
.dark-theme .ant-btn-primary:hover {
  background-color: var(--primary-color-hover) !important;
  box-shadow: 0 6px 16px rgba(24, 144, 255, 0.3) !important;
}
.dark-theme .ant-btn-primary.ant-btn-dangerous {
  background-color: #ff4d4f !important;
  color: #fff !important;
}
.dark-theme .ant-btn-primary.ant-btn-dangerous:hover {
  background-color: #ff7875 !important;
}
.dark-theme .ant-btn-link,
.dark-theme .ant-btn-text {
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  color: var(--primary-color);
}
.dark-theme .ant-btn-link:hover,
.dark-theme .ant-btn-text:hover {
  color: var(--primary-color-hover);
  background-color: transparent !important;
}
.view-btn {
  display: inline-flex;
  align-items: center;
  padding: 4px 8px;
  font-size: 13px;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.2s ease;
  user-select: none;
  background-color: transparent;
  border: none;
  color: #1677ff;
}
.view-btn:hover {
  color: #40a9ff;
  text-decoration: underline;
}
.edit-btn {
  background-color: transparent;
  border: none;
  color: #faad14;
}
.edit-btn:hover {
  color: #ffc53d;
  text-decoration: underline;
}
.delete-btn {
  background-color: transparent;
  border: none;
  color: #ff4d4f;
}
.delete-btn:hover {
  color: #ff7875;
  text-decoration: underline;
}
.add-btn {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-weight: 500;
}
.dark-theme .view-btn {
  color: var(--primary-color);
}
.dark-theme .view-btn:hover {
  color: var(--primary-color-hover);
}
.dark-theme .edit-btn {
  color: #faad14;
}
.dark-theme .edit-btn:hover {
  color: #ffc53d;
}
.dark-theme .delete-btn {
  color: #ff4d4f;
}
.dark-theme .delete-btn:hover {
  color: #ff7875;
}
.search-form .ant-space,
.search-actions .ant-space {
  gap: 8px !important;
}
.search-form .ant-space-item,
.search-actions .ant-space-item {
  margin-right: 0 !important;
}
.search-form .ant-btn,
.search-actions .ant-btn {
  margin-right: 0 !important;
  padding: 4px 16px !important;
  height: 32px !important;
  border-radius: 6px !important;
}
.dark-theme .search-form .ant-btn-primary,
.dark-theme .search-actions .ant-btn-primary {
  background-color: var(--primary-color) !important;
  border-color: var(--primary-color) !important;
  color: #fff !important;
}
.dark-theme .search-form .ant-btn-primary:hover,
.dark-theme .search-actions .ant-btn-primary:hover {
  background-color: var(--primary-color-hover) !important;
  border-color: var(--primary-color-hover) !important;
}
.dark-theme .search-form .ant-btn:not(.ant-btn-primary),
.dark-theme .search-actions .ant-btn:not(.ant-btn-primary) {
  background-color: transparent !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  color: var(--text-secondary) !important;
}
.dark-theme .search-form .ant-btn:not(.ant-btn-primary):hover,
.dark-theme .search-actions .ant-btn:not(.ant-btn-primary):hover {
  border-color: var(--primary-color) !important;
  color: var(--primary-color) !important;
  background-color: rgba(96, 165, 250, 0.08) !important;
}
/* 功能组件样式 */
/* 全局搜索组件 */
.global-search-modal .ant-modal-header {
  border-bottom: 1px solid var(--border-color-split);
  background-color: var(--component-background);
}
.global-search-modal .ant-modal-content {
  background-color: var(--modal-bg);
}
.global-search-modal .search-container .search-input .ant-input-search .ant-input {
  border-radius: 8px;
  font-size: 16px;
  background-color: var(--input-bg);
  color: var(--text-primary);
  border-color: var(--border-color-base);
}
.global-search-modal .search-container .search-input .ant-input-search .ant-input-search-button {
  border-radius: 0 8px 8px 0;
}
.global-search-modal .search-container .search-results {
  max-height: 300px;
  overflow-y: auto;
}
.global-search-modal .search-container .search-results .result-item {
  border-radius: 8px;
  transition: all 0.3s ease;
  background-color: var(--component-background);
  border-color: var(--border-color-base);
}
.global-search-modal .search-container .search-results .result-item:hover {
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.global-search-modal .search-container .quick-actions .action-item {
  transition: all 0.3s ease;
  background-color: var(--component-background);
}
.global-search-modal .search-container .quick-actions .action-item:hover {
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
/* 消息中心组件 */
.message-center-drawer .ant-drawer-content {
  background-color: var(--drawer-bg);
  color: var(--text-primary);
}
.message-center-drawer .ant-drawer-header {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
}
.message-center-drawer .ant-drawer-header .ant-drawer-title {
  color: white;
}
.message-center-drawer .ant-drawer-header .ant-drawer-close {
  color: white;
}
.message-center-drawer .ant-drawer-header .ant-drawer-close:hover {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 4px;
}
.message-center-drawer .message-container .message-tabs .ant-tabs-tab {
  padding: 12px 16px;
  color: var(--text-primary);
}
.message-center-drawer .message-container .message-tabs .ant-tabs-tab .ant-badge .ant-badge-count {
  font-size: 10px;
  min-width: 16px;
  height: 16px;
  line-height: 16px;
}
.message-center-drawer .message-container .message-list .message-item {
  background-color: var(--component-background);
  border: 1px solid var(--border-color-base);
  border-radius: 8px;
  color: var(--text-primary);
  margin: 8px 0;
  padding: 12px 16px;
  transition: all 0.3s ease;
}
.message-center-drawer .message-container .message-list .message-item:hover {
  transform: translateX(4px);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.message-center-drawer .message-container .message-list .message-item.unread {
  border-left: 3px solid #1890ff;
  background: linear-gradient(90deg, var(--primary-1) 0%, var(--component-background) 100%);
}
.message-center-drawer .message-container .message-list .message-item.urgent {
  border-left-color: #ff4d4f;
  background: linear-gradient(90deg, #fff2f0 0%, var(--component-background) 100%);
}
.message-center-drawer .message-container .message-footer {
  background: var(--component-background);
  margin: 0 -24px -24px -24px;
}
.message-center-drawer .message-container .message-footer .ant-btn {
  color: var(--text-secondary);
}
.message-center-drawer .message-container .message-footer .ant-btn:hover {
  color: #1890ff;
}
/* 聊天面板组件 */
.chat-panel-drawer .ant-drawer-content {
  background-color: var(--drawer-bg);
  color: var(--text-primary);
}
.chat-panel-drawer .ant-drawer-header {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
}
.chat-panel-drawer .ant-drawer-header .ant-drawer-title {
  color: white;
}
.chat-panel-drawer .ant-drawer-header .ant-drawer-close {
  color: white;
}
.chat-panel-drawer .ant-drawer-header .ant-drawer-close:hover {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 4px;
}
.chat-panel-drawer .chat-container .contact-list .contact-item {
  border-radius: 8px;
  margin: 4px 0;
  transition: all 0.3s ease;
  background-color: var(--component-background);
  color: var(--text-primary);
}
.chat-panel-drawer .chat-container .contact-list .contact-item:hover {
  transform: translateX(4px);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.chat-panel-drawer .chat-container .chat-interface .chat-header {
  background: var(--component-background);
  border-radius: 8px;
  padding: 12px;
  color: var(--text-primary);
}
.chat-panel-drawer .chat-container .chat-interface .message-list .message-item .message-content .message-bubble {
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
  background-color: var(--component-background);
  color: var(--text-primary);
}
.chat-panel-drawer .chat-container .chat-interface .message-list .message-item .message-content .message-bubble:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.chat-panel-drawer .chat-container .chat-interface .message-list .message-item.own-message .message-content .message-bubble {
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
}
.chat-panel-drawer .chat-container .chat-interface .message-input {
  background: var(--component-background);
  border-radius: 8px;
  padding: 12px;
}
.chat-panel-drawer .chat-container .chat-interface .message-input .input-area .ant-input {
  border-radius: 8px;
  resize: none;
  background-color: var(--input-bg);
  color: var(--text-primary);
  border-color: var(--border-color-base);
}
.chat-panel-drawer .chat-container .chat-interface .message-input .input-area .ant-btn {
  border-radius: 8px;
  height: auto;
  min-height: 64px;
}
/* 头部按钮样式增强 */
.header-icon-btn {
  border-radius: 8px !important;
  transition: all 0.3s ease !important;
}
.header-icon-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  background: #f0f9ff !important;
}
.header-icon-btn .anticon {
  transition: all 0.3s ease;
}
.header-icon-btn:hover .anticon {
  transform: scale(1.1);
}
/* 暗色主题适配 */
.dark-theme .global-search-modal .ant-modal-content {
  background: #1f1f1f;
}
.dark-theme .global-search-modal .ant-modal-content .ant-modal-header {
  background: #1f1f1f;
  border-bottom-color: #434343;
}
.dark-theme .global-search-modal .ant-modal-content .ant-modal-header .ant-modal-title {
  color: rgba(255, 255, 255, 0.85);
}
.dark-theme .global-search-modal .search-container .search-input .ant-input {
  background: #141414;
  border-color: #434343;
  color: rgba(255, 255, 255, 0.85);
}
.dark-theme .global-search-modal .search-container .quick-actions .action-item {
  background: #141414;
  border-color: #434343;
  color: rgba(255, 255, 255, 0.85);
}
.dark-theme .global-search-modal .search-container .quick-actions .action-item:hover {
  border-color: #1890ff;
  background: #111b26;
}
.dark-theme .message-center-drawer .ant-drawer-body,
.dark-theme .chat-panel-drawer .ant-drawer-body {
  background: #1f1f1f;
  color: rgba(255, 255, 255, 0.85);
}
.dark-theme .message-center-drawer .message-item:hover,
.dark-theme .chat-panel-drawer .message-item:hover,
.dark-theme .message-center-drawer .contact-item:hover,
.dark-theme .chat-panel-drawer .contact-item:hover {
  background: #262626;
}
.dark-theme .header-icon-btn:hover {
  background: rgba(255, 255, 255, 0.04) !important;
}
/* 响应式设计 */
@media (max-width: 768px) {
  .global-search-modal .ant-modal {
    width: 95% !important;
    margin: 10px auto;
  }
  .message-center-drawer .ant-drawer,
  .chat-panel-drawer .ant-drawer {
    width: 100% !important;
  }
  .header-icon-btn {
    padding: 4px 8px !important;
  }
  .header-icon-btn .anticon {
    font-size: 14px;
  }
}
/**
 * 表格组件专用样式
 * 包含表格、分页、操作列等相关样式
 *
 * 进阶优化：
 * 1. 消除表格内深色背景块 - 让表格通透
 * 2. 弱化操作按钮 - 使用文字链接样式
 * 3. 统一边框颜色 - 极低透明度
 * 4. 去掉垂直分割线 - 只保留水平行线
 */
.ant-table-measure-row,
.ant-table-measure-row td {
  height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  font-size: 0 !important;
  line-height: 0 !important;
  visibility: hidden !important;
}
.dark-theme .ant-table-wrapper,
.dark-theme .ant-table,
.dark-theme .ant-table-container,
.dark-theme .ant-table-content,
.dark-theme .ant-table-header,
.dark-theme .ant-table-body,
.dark-theme .ant-table-summary,
.dark-theme .ant-spin-nested-loading,
.dark-theme .ant-spin-container {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
}
.dark-theme .ant-table-wrapper::before,
.dark-theme .ant-table::before,
.dark-theme .ant-table-container::before,
.dark-theme .ant-table-content::before,
.dark-theme .ant-table-header::before,
.dark-theme .ant-table-body::before,
.dark-theme .ant-table-summary::before,
.dark-theme .ant-spin-nested-loading::before,
.dark-theme .ant-spin-container::before,
.dark-theme .ant-table-wrapper::after,
.dark-theme .ant-table::after,
.dark-theme .ant-table-container::after,
.dark-theme .ant-table-content::after,
.dark-theme .ant-table-header::after,
.dark-theme .ant-table-body::after,
.dark-theme .ant-table-summary::after,
.dark-theme .ant-spin-nested-loading::after,
.dark-theme .ant-spin-container::after {
  display: none !important;
}
.dark-theme .ant-table-container {
  border: none !important;
  border-top: none !important;
}
.dark-theme .ant-table-container::before,
.dark-theme .ant-table-container::after {
  display: none !important;
  content: none !important;
  height: 0 !important;
}
.dark-theme .ant-table-thead > tr > th {
  border-top: none !important;
  border-right: none !important;
  border-left: none !important;
  border-bottom: none !important;
  background-clip: padding-box !important;
  position: relative;
}
.dark-theme .ant-table {
  border: none !important;
  border-top: none !important;
  border-bottom: none !important;
}
.dark-theme .ant-table-row-expand-icon {
  background-color: var(--component-background) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  border-radius: 2px !important;
  color: var(--text-secondary) !important;
  width: 17px !important;
  height: 17px !important;
  line-height: 14px !important;
}
.dark-theme .ant-table-row-expand-icon:focus,
.dark-theme .ant-table-row-expand-icon:hover {
  background-color: rgba(255, 255, 255, 0.05) !important;
  border-color: var(--primary-color) !important;
  color: var(--primary-color) !important;
}
.dark-theme .ant-table-row-expand-icon:active {
  background-color: rgba(255, 255, 255, 0.08) !important;
}
.dark-theme .ant-table {
  background: transparent !important;
  border-radius: 0 !important;
}
.dark-theme .ant-table .ant-table-container {
  border: none !important;
  border-top: none !important;
  border-radius: 0 !important;
}
.dark-theme .ant-table .ant-table-container::before,
.dark-theme .ant-table .ant-table-container::after {
  display: none !important;
}
.dark-theme .ant-table .ant-table-thead > tr > th {
  background: var(--table-header-bg) !important;
  color: var(--text-primary) !important;
  border: none !important;
  border-bottom: none !important;
  border-right: none !important;
  border-left: none !important;
  border-top: 0 !important;
  font-weight: 500;
  padding: 14px 16px !important;
}
.dark-theme .ant-table .ant-table-thead > tr > th::before {
  display: none !important;
}
.dark-theme .ant-table .ant-table-thead > tr > th:first-child {
  border-left: none !important;
}
.dark-theme .ant-table .ant-table-thead > tr > th:last-child {
  border-right: none !important;
}
.dark-theme .ant-table .ant-table-tbody > tr:not(.ant-table-measure-row) > td {
  border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
  border-right: none !important;
  border-left: none !important;
  color: var(--text-secondary) !important;
  padding: 12px 16px !important;
  background-color: transparent !important;
}
.dark-theme .ant-table .ant-table-tbody > tr.ant-table-measure-row,
.dark-theme .ant-table .ant-table-tbody > tr.ant-table-measure-row > td {
  height: 0 !important;
  max-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  font-size: 0 !important;
  line-height: 0 !important;
  overflow: hidden !important;
}
.dark-theme .ant-table .ant-table-container,
.dark-theme .ant-table .ant-table-content,
.dark-theme .ant-table .ant-table-body,
.dark-theme .ant-table .ant-table-scroll,
.dark-theme .ant-table .ant-table-header {
  background-color: transparent !important;
  background: transparent !important;
  border: none !important;
}
.dark-theme .ant-table .ant-table-tbody .ant-table-cell {
  background-color: transparent !important;
  background: transparent !important;
}
.dark-theme .ant-table .ant-table-cell-fix-left,
.dark-theme .ant-table .ant-table-cell-fix-right {
  position: sticky !important;
  z-index: 10 !important;
  box-shadow: none !important;
  border-left: none !important;
  border-right: none !important;
}
.dark-theme .ant-table .ant-table-cell-fix-left::before,
.dark-theme .ant-table .ant-table-cell-fix-right::before,
.dark-theme .ant-table .ant-table-cell-fix-left::after,
.dark-theme .ant-table .ant-table-cell-fix-right::after {
  display: none !important;
  content: none !important;
  box-shadow: none !important;
  width: 0 !important;
}
.dark-theme .ant-table .ant-table-ping-left .ant-table-cell-fix-left-last::after,
.dark-theme .ant-table .ant-table-ping-right .ant-table-cell-fix-right-first::after,
.dark-theme .ant-table .ant-table-cell-fix-left-last::after,
.dark-theme .ant-table .ant-table-cell-fix-right-first::after {
  display: none !important;
  box-shadow: none !important;
  border: none !important;
}
.dark-theme .ant-table .ant-table-thead > tr > th.ant-table-cell-fix-left,
.dark-theme .ant-table .ant-table-thead > tr > th.ant-table-cell-fix-right,
.dark-theme .ant-table .ant-table-tbody > tr > td.ant-table-cell-fix-left,
.dark-theme .ant-table .ant-table-tbody > tr > td.ant-table-cell-fix-right {
  border-left: none !important;
  border-right: none !important;
}
.dark-theme .ant-table .ant-table-thead > tr > th.ant-table-cell-fix-left,
.dark-theme .ant-table .ant-table-thead > tr > th.ant-table-cell-fix-right {
  background-color: var(--table-header-bg) !important;
  background: var(--table-header-bg) !important;
  border-bottom: none !important;
}
.dark-theme .ant-table .ant-table-tbody > tr > td.ant-table-cell-fix-left,
.dark-theme .ant-table .ant-table-tbody > tr > td.ant-table-cell-fix-right {
  background-color: var(--component-background) !important;
  background: var(--component-background) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
}
.dark-theme .ant-table .ant-table-tbody > tr:hover > td.ant-table-cell-fix-left,
.dark-theme .ant-table .ant-table-tbody > tr:hover > td.ant-table-cell-fix-right {
  background-color: rgba(255, 255, 255, 0.03) !important;
  background: rgba(255, 255, 255, 0.03) !important;
}
.dark-theme .ant-table .ant-table-body {
  overflow-x: auto !important;
  overflow-y: hidden !important;
}
.dark-theme .ant-table .ant-table-tbody > tr > td {
  background-color: transparent !important;
}
.dark-theme .ant-table .ant-table-tbody > tr:hover > td {
  background-color: rgba(255, 255, 255, 0.03) !important;
}
.dark-theme .ant-table .ant-table-cell .ant-input,
.dark-theme .ant-table .ant-table-cell .ant-input-number,
.dark-theme .ant-table .ant-table-cell .ant-select-selector,
.dark-theme .ant-table .ant-table-cell .ant-picker,
.dark-theme .ant-table .ant-table-cell .ant-tag,
.dark-theme .ant-table .ant-table-cell .ant-badge,
.dark-theme .ant-table .ant-table-cell span[class*="tag"],
.dark-theme .ant-table .ant-table-cell div[class*="cell"] {
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
.dark-theme .ant-table .ant-table-cell .ant-tag {
  background-color: transparent !important;
  border: 1px solid var(--border-color) !important;
  color: var(--text-secondary) !important;
}
.dark-theme .ant-table .ant-table-cell .ant-tag.ant-tag-success,
.dark-theme .ant-table .ant-table-cell .ant-tag.ant-tag-green {
  color: #52c41a !important;
  border-color: rgba(82, 196, 26, 0.3) !important;
}
.dark-theme .ant-table .ant-table-cell .ant-tag.ant-tag-error,
.dark-theme .ant-table .ant-table-cell .ant-tag.ant-tag-red {
  color: #ff4d4f !important;
  border-color: rgba(255, 77, 79, 0.3) !important;
}
.dark-theme .ant-table .ant-table-cell .ant-tag.ant-tag-warning,
.dark-theme .ant-table .ant-table-cell .ant-tag.ant-tag-orange {
  color: #faad14 !important;
  border-color: rgba(250, 173, 20, 0.3) !important;
}
.dark-theme .ant-table .ant-table-cell .ant-tag.ant-tag-processing,
.dark-theme .ant-table .ant-table-cell .ant-tag.ant-tag-blue {
  color: var(--primary-color) !important;
  border-color: var(--primary-alpha-20) !important;
}
.dark-theme .ant-table .ant-table-cell,
.dark-theme .table-action-bar,
.dark-theme .action-buttons,
.dark-theme .table-actions {
  background-color: transparent !important;
}
.dark-theme .ant-table .ant-table-cell .ant-btn,
.dark-theme .ant-table .ant-table-cell .ant-btn-default,
.dark-theme .ant-table .ant-table-cell .ant-btn-primary,
.dark-theme .ant-table .ant-table-cell .ant-btn-link,
.dark-theme .ant-table .ant-table-cell .ant-btn-text,
.dark-theme .ant-table .ant-table-cell .ant-btn-ghost,
.dark-theme .ant-table .ant-table-cell .ant-btn-dashed,
.dark-theme .ant-table .ant-table-cell button[class*="ant-btn"],
.dark-theme .ant-table .ant-table-cell .action-btn,
.dark-theme .ant-table .ant-table-cell .view-btn,
.dark-theme .ant-table .ant-table-cell .edit-btn,
.dark-theme .ant-table .ant-table-cell .delete-btn {
  background-color: transparent !important;
  background: transparent !important;
  background-image: none !important;
  border: none !important;
  box-shadow: none !important;
  padding: 4px 8px !important;
  height: auto !important;
  line-height: 1.5 !important;
  font-size: 13px !important;
  transition: all 0.2s ease !important;
}
.dark-theme .ant-table .ant-table-cell .ant-btn:hover,
.dark-theme .ant-table .ant-table-cell .ant-btn-default:hover,
.dark-theme .ant-table .ant-table-cell .ant-btn-primary:hover,
.dark-theme .ant-table .ant-table-cell .ant-btn-link:hover,
.dark-theme .ant-table .ant-table-cell .ant-btn-text:hover,
.dark-theme .ant-table .ant-table-cell .ant-btn-ghost:hover,
.dark-theme .ant-table .ant-table-cell .ant-btn-dashed:hover,
.dark-theme .ant-table .ant-table-cell button[class*="ant-btn"]:hover,
.dark-theme .ant-table .ant-table-cell .action-btn:hover,
.dark-theme .ant-table .ant-table-cell .view-btn:hover,
.dark-theme .ant-table .ant-table-cell .edit-btn:hover,
.dark-theme .ant-table .ant-table-cell .delete-btn:hover,
.dark-theme .ant-table .ant-table-cell .ant-btn:focus,
.dark-theme .ant-table .ant-table-cell .ant-btn-default:focus,
.dark-theme .ant-table .ant-table-cell .ant-btn-primary:focus,
.dark-theme .ant-table .ant-table-cell .ant-btn-link:focus,
.dark-theme .ant-table .ant-table-cell .ant-btn-text:focus,
.dark-theme .ant-table .ant-table-cell .ant-btn-ghost:focus,
.dark-theme .ant-table .ant-table-cell .ant-btn-dashed:focus,
.dark-theme .ant-table .ant-table-cell button[class*="ant-btn"]:focus,
.dark-theme .ant-table .ant-table-cell .action-btn:focus,
.dark-theme .ant-table .ant-table-cell .view-btn:focus,
.dark-theme .ant-table .ant-table-cell .edit-btn:focus,
.dark-theme .ant-table .ant-table-cell .delete-btn:focus,
.dark-theme .ant-table .ant-table-cell .ant-btn:active,
.dark-theme .ant-table .ant-table-cell .ant-btn-default:active,
.dark-theme .ant-table .ant-table-cell .ant-btn-primary:active,
.dark-theme .ant-table .ant-table-cell .ant-btn-link:active,
.dark-theme .ant-table .ant-table-cell .ant-btn-text:active,
.dark-theme .ant-table .ant-table-cell .ant-btn-ghost:active,
.dark-theme .ant-table .ant-table-cell .ant-btn-dashed:active,
.dark-theme .ant-table .ant-table-cell button[class*="ant-btn"]:active,
.dark-theme .ant-table .ant-table-cell .action-btn:active,
.dark-theme .ant-table .ant-table-cell .view-btn:active,
.dark-theme .ant-table .ant-table-cell .edit-btn:active,
.dark-theme .ant-table .ant-table-cell .delete-btn:active {
  background-color: rgba(255, 255, 255, 0.05) !important;
  background: rgba(255, 255, 255, 0.05) !important;
  border: none !important;
  box-shadow: none !important;
}
.dark-theme .ant-table .ant-table-cell .ant-btn::before,
.dark-theme .ant-table .ant-table-cell .ant-btn-default::before,
.dark-theme .ant-table .ant-table-cell .ant-btn-primary::before,
.dark-theme .ant-table .ant-table-cell .ant-btn-link::before,
.dark-theme .ant-table .ant-table-cell .ant-btn-text::before,
.dark-theme .ant-table .ant-table-cell .ant-btn-ghost::before,
.dark-theme .ant-table .ant-table-cell .ant-btn-dashed::before,
.dark-theme .ant-table .ant-table-cell button[class*="ant-btn"]::before,
.dark-theme .ant-table .ant-table-cell .action-btn::before,
.dark-theme .ant-table .ant-table-cell .view-btn::before,
.dark-theme .ant-table .ant-table-cell .edit-btn::before,
.dark-theme .ant-table .ant-table-cell .delete-btn::before,
.dark-theme .ant-table .ant-table-cell .ant-btn::after,
.dark-theme .ant-table .ant-table-cell .ant-btn-default::after,
.dark-theme .ant-table .ant-table-cell .ant-btn-primary::after,
.dark-theme .ant-table .ant-table-cell .ant-btn-link::after,
.dark-theme .ant-table .ant-table-cell .ant-btn-text::after,
.dark-theme .ant-table .ant-table-cell .ant-btn-ghost::after,
.dark-theme .ant-table .ant-table-cell .ant-btn-dashed::after,
.dark-theme .ant-table .ant-table-cell button[class*="ant-btn"]::after,
.dark-theme .ant-table .ant-table-cell .action-btn::after,
.dark-theme .ant-table .ant-table-cell .view-btn::after,
.dark-theme .ant-table .ant-table-cell .edit-btn::after,
.dark-theme .ant-table .ant-table-cell .delete-btn::after {
  display: none !important;
}
.dark-theme .ant-table .ant-table-cell .ant-btn > span,
.dark-theme .ant-table .ant-table-cell .ant-btn-default > span,
.dark-theme .ant-table .ant-table-cell .ant-btn-primary > span,
.dark-theme .ant-table .ant-table-cell .ant-btn-link > span,
.dark-theme .ant-table .ant-table-cell .ant-btn-text > span,
.dark-theme .ant-table .ant-table-cell .ant-btn-ghost > span,
.dark-theme .ant-table .ant-table-cell .ant-btn-dashed > span,
.dark-theme .ant-table .ant-table-cell button[class*="ant-btn"] > span,
.dark-theme .ant-table .ant-table-cell .action-btn > span,
.dark-theme .ant-table .ant-table-cell .view-btn > span,
.dark-theme .ant-table .ant-table-cell .edit-btn > span,
.dark-theme .ant-table .ant-table-cell .delete-btn > span {
  background: transparent !important;
}
.dark-theme .ant-table .ant-table-cell .ant-btn:first-child,
.dark-theme .ant-table .ant-table-cell .view-btn,
.dark-theme .ant-table .ant-table-cell .detail-btn,
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="view"],
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="detail"],
.dark-theme .ant-table .ant-table-cell a[class*="view"],
.dark-theme .ant-table .ant-table-cell a[class*="detail"] {
  color: var(--primary-color) !important;
}
.dark-theme .ant-table .ant-table-cell .ant-btn:first-child:hover,
.dark-theme .ant-table .ant-table-cell .view-btn:hover,
.dark-theme .ant-table .ant-table-cell .detail-btn:hover,
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="view"]:hover,
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="detail"]:hover,
.dark-theme .ant-table .ant-table-cell a[class*="view"]:hover,
.dark-theme .ant-table .ant-table-cell a[class*="detail"]:hover {
  color: var(--primary-color-hover) !important;
  text-decoration: underline !important;
}
.dark-theme .ant-table .ant-table-cell .edit-btn,
.dark-theme .ant-table .ant-table-cell .modify-btn,
.dark-theme .ant-table .ant-table-cell .update-btn,
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="edit"],
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="modify"],
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="update"],
.dark-theme .ant-table .ant-table-cell a[class*="edit"],
.dark-theme .ant-table .ant-table-cell a[class*="modify"] {
  color: #faad14 !important;
}
.dark-theme .ant-table .ant-table-cell .edit-btn:hover,
.dark-theme .ant-table .ant-table-cell .modify-btn:hover,
.dark-theme .ant-table .ant-table-cell .update-btn:hover,
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="edit"]:hover,
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="modify"]:hover,
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="update"]:hover,
.dark-theme .ant-table .ant-table-cell a[class*="edit"]:hover,
.dark-theme .ant-table .ant-table-cell a[class*="modify"]:hover {
  color: #ffc53d !important;
  text-decoration: underline !important;
}
.dark-theme .ant-table .ant-table-cell .delete-btn,
.dark-theme .ant-table .ant-table-cell .remove-btn,
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="delete"],
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="remove"],
.dark-theme .ant-table .ant-table-cell .ant-btn-dangerous,
.dark-theme .ant-table .ant-table-cell a[class*="delete"],
.dark-theme .ant-table .ant-table-cell a[class*="remove"] {
  color: #ff4d4f !important;
}
.dark-theme .ant-table .ant-table-cell .delete-btn:hover,
.dark-theme .ant-table .ant-table-cell .remove-btn:hover,
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="delete"]:hover,
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="remove"]:hover,
.dark-theme .ant-table .ant-table-cell .ant-btn-dangerous:hover,
.dark-theme .ant-table .ant-table-cell a[class*="delete"]:hover,
.dark-theme .ant-table .ant-table-cell a[class*="remove"]:hover {
  color: #ff7875 !important;
  text-decoration: underline !important;
}
.dark-theme .ant-table .ant-table-cell .warning-btn,
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="warning"] {
  color: #fa8c16 !important;
}
.dark-theme .ant-table .ant-table-cell .warning-btn:hover,
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="warning"]:hover {
  color: #ffa940 !important;
}
.dark-theme .ant-table .ant-table-cell .info-btn,
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="info"] {
  color: #13c2c2 !important;
}
.dark-theme .ant-table .ant-table-cell .info-btn:hover,
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="info"]:hover {
  color: #36cfc9 !important;
}
.dark-theme .ant-table .ant-table-cell .success-btn,
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="success"] {
  color: #52c41a !important;
}
.dark-theme .ant-table .ant-table-cell .success-btn:hover,
.dark-theme .ant-table .ant-table-cell .ant-btn[class*="success"]:hover {
  color: #73d13d !important;
}
.dark-theme .ant-table .ant-btn-group {
  background-color: transparent !important;
  background: transparent !important;
}
.dark-theme .table-action-bar .ant-btn,
.dark-theme .action-buttons .ant-btn,
.dark-theme .table-actions .ant-btn,
.dark-theme .table-action-bar .ant-btn-default,
.dark-theme .action-buttons .ant-btn-default,
.dark-theme .table-actions .ant-btn-default,
.dark-theme .table-action-bar .ant-btn-link,
.dark-theme .action-buttons .ant-btn-link,
.dark-theme .table-actions .ant-btn-link,
.dark-theme .table-action-bar .ant-btn-text,
.dark-theme .action-buttons .ant-btn-text,
.dark-theme .table-actions .ant-btn-text {
  background-color: transparent !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
.dark-theme .table-action-bar .ant-btn:hover,
.dark-theme .action-buttons .ant-btn:hover,
.dark-theme .table-actions .ant-btn:hover,
.dark-theme .table-action-bar .ant-btn-default:hover,
.dark-theme .action-buttons .ant-btn-default:hover,
.dark-theme .table-actions .ant-btn-default:hover,
.dark-theme .table-action-bar .ant-btn-link:hover,
.dark-theme .action-buttons .ant-btn-link:hover,
.dark-theme .table-actions .ant-btn-link:hover,
.dark-theme .table-action-bar .ant-btn-text:hover,
.dark-theme .action-buttons .ant-btn-text:hover,
.dark-theme .table-actions .ant-btn-text:hover,
.dark-theme .table-action-bar .ant-btn:focus,
.dark-theme .action-buttons .ant-btn:focus,
.dark-theme .table-actions .ant-btn:focus,
.dark-theme .table-action-bar .ant-btn-default:focus,
.dark-theme .action-buttons .ant-btn-default:focus,
.dark-theme .table-actions .ant-btn-default:focus,
.dark-theme .table-action-bar .ant-btn-link:focus,
.dark-theme .action-buttons .ant-btn-link:focus,
.dark-theme .table-actions .ant-btn-link:focus,
.dark-theme .table-action-bar .ant-btn-text:focus,
.dark-theme .action-buttons .ant-btn-text:focus,
.dark-theme .table-actions .ant-btn-text:focus {
  background-color: transparent !important;
  background: transparent !important;
}
.dark-theme .ant-table-cell a.ant-btn,
.dark-theme .ant-table-cell a[role="button"] {
  background: transparent !important;
  border: none !important;
}
.dark-theme .ant-table-cell a.ant-btn:hover,
.dark-theme .ant-table-cell a[role="button"]:hover {
  background: transparent !important;
}
.dark-theme .ant-pagination {
  background-color: transparent !important;
}
.dark-theme .ant-pagination .ant-pagination-item {
  background-color: transparent !important;
  border-color: var(--border-color-base) !important;
}
.dark-theme .ant-pagination .ant-pagination-item a {
  color: var(--text-secondary) !important;
}
.dark-theme .ant-pagination .ant-pagination-item:hover {
  border-color: var(--primary-color) !important;
}
.dark-theme .ant-pagination .ant-pagination-item:hover a {
  color: var(--primary-color) !important;
}
.dark-theme .ant-pagination .ant-pagination-item-active {
  background-color: transparent !important;
  border-color: var(--primary-color) !important;
}
.dark-theme .ant-pagination .ant-pagination-item-active a {
  color: var(--primary-color) !important;
}
.dark-theme .ant-pagination .ant-pagination-prev,
.dark-theme .ant-pagination .ant-pagination-next {
  background-color: transparent !important;
  border-color: var(--border-color-base) !important;
}
.dark-theme .ant-pagination .ant-pagination-prev .ant-pagination-item-link,
.dark-theme .ant-pagination .ant-pagination-next .ant-pagination-item-link {
  color: var(--text-secondary) !important;
  background-color: transparent !important;
  border: none !important;
}
.dark-theme .ant-pagination .ant-pagination-prev:hover .ant-pagination-item-link,
.dark-theme .ant-pagination .ant-pagination-next:hover .ant-pagination-item-link {
  color: var(--primary-color) !important;
}
.dark-theme .ant-pagination .ant-pagination-total-text {
  color: var(--text-tertiary) !important;
}
.dark-theme .ant-pagination .ant-pagination-options .ant-select-selector {
  background-color: transparent !important;
  border-color: var(--border-color-base) !important;
}
.dark-theme .ant-pagination .ant-pagination-options-quick-jumper {
  color: var(--text-secondary) !important;
}
.dark-theme .ant-pagination .ant-pagination-options-quick-jumper input {
  background-color: var(--component-background) !important;
  border-color: var(--border-color-base) !important;
  color: var(--text-primary) !important;
}
.dark-theme .ant-pagination .ant-pagination-options-quick-jumper input:hover {
  border-color: var(--primary-color) !important;
}
.dark-theme .ant-pagination .ant-pagination-options-quick-jumper input:focus {
  border-color: var(--primary-color) !important;
  box-shadow: 0 0 0 2px var(--primary-alpha-20) !important;
}
.dark-theme .ant-table-pagination,
.dark-theme .ant-table-pagination-left,
.dark-theme .ant-table-pagination-right {
  background-color: transparent !important;
}
.dark-theme .ant-table-wrapper {
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
.dark-theme .ant-table-wrapper::before,
.dark-theme .ant-table-wrapper::after {
  display: none !important;
}
.dark-theme .ant-table-wrapper .ant-table {
  border: none !important;
}
.dark-theme .ant-table-bordered .ant-table-container {
  border-left: 1px solid rgba(255, 255, 255, 0.05) !important;
  border-right: 1px solid rgba(255, 255, 255, 0.05) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
  border-top: 0 !important;
  border-radius: 12px !important;
}
.dark-theme .ant-table-bordered .ant-table-container::before {
  display: none !important;
}
.dark-theme .ant-table-bordered .ant-table-cell {
  border-right: none !important;
  border-left: none !important;
}
.dark-theme .ant-table-bordered .ant-table-thead > tr:first-child > th {
  border-top: none !important;
}
.dark-theme .ant-table-wrapper,
.dark-theme .ant-table-container,
.dark-theme .ant-table-header,
.dark-theme .ant-table-content,
.dark-theme .ant-table,
.dark-theme .ant-table-thead,
.dark-theme .ant-table-thead > tr > th {
  border-top: 0 !important;
  box-shadow: none !important;
}
.dark-theme .ant-table {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}
.dark-theme .ant-card-body div:has(> .ant-table-wrapper),
.dark-theme .ant-card-body div:has(> .ant-spin-nested-loading),
.dark-theme .ant-card-body div:has(> .ant-table),
.dark-theme .ant-card-body .table-operator,
.dark-theme .ant-card-body .ant-pro-table-search,
.dark-theme .ant-card-body .ant-pro-table-toolbar {
  border-bottom: none !important;
  border-color: transparent !important;
}
.dark-theme .ant-card-body > div:has(+ .ant-table-wrapper),
.dark-theme .ant-card-body > div:has(+ .ant-spin-nested-loading),
.dark-theme .ant-card-body > div:has(+ .ant-table),
.dark-theme .ant-card-body > div:has(+ .ant-table-container) {
  border-bottom: none !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
.dark-theme .ant-card-body .ant-divider-horizontal {
  display: none !important;
}
.dark-theme .ant-table-tbody > tr:last-child > td {
  border-bottom: none !important;
}
.dark-theme .ant-table-container {
  border-bottom: none !important;
}
.dark-theme .ant-card .ant-table-wrapper {
  border-bottom: none !important;
}
.dark-theme .ant-card .ant-table-wrapper .ant-table {
  border-bottom: none !important;
}
.dark-theme .ant-card .ant-table-wrapper .ant-table-container {
  border-bottom: none !important;
}
.dark-theme .ant-table-wrapper .ant-spin-container::after {
  display: none !important;
}
.dark-theme .ant-table-content {
  border-bottom: none !important;
}
.dark-theme .ant-table-scroll {
  border-bottom: none !important;
}
.dark-theme .table-actions-wrapper {
  border-bottom: none !important;
  margin-bottom: 8px !important;
  padding-bottom: 0 !important;
}
.dark-theme .ant-card {
  border-color: rgba(255, 255, 255, 0.05) !important;
}
.dark-theme .ant-table .ant-checkbox .ant-checkbox-inner {
  background-color: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  border-radius: 4px !important;
  transition: all 0.2s ease !important;
}
.dark-theme .ant-table .ant-checkbox:hover .ant-checkbox-inner {
  border-color: var(--primary-color) !important;
}
.dark-theme .ant-table .ant-checkbox.ant-checkbox-checked .ant-checkbox-inner {
  background-color: var(--primary-color) !important;
  border-color: var(--primary-color) !important;
}
.dark-theme .ant-table .ant-checkbox.ant-checkbox-checked .ant-checkbox-inner::after {
  border-color: #fff !important;
}
.dark-theme .ant-table .ant-checkbox.ant-checkbox-indeterminate .ant-checkbox-inner {
  background-color: transparent !important;
  border-color: var(--primary-color) !important;
}
.dark-theme .ant-table .ant-checkbox.ant-checkbox-indeterminate .ant-checkbox-inner::after {
  background-color: var(--primary-color) !important;
}
.dark-theme .ant-table .ant-checkbox-disabled .ant-checkbox-inner {
  background-color: rgba(255, 255, 255, 0.04) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}
.dark-theme .ant-checkbox .ant-checkbox-inner {
  background-color: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  border-radius: 4px !important;
}
.dark-theme .ant-checkbox:hover .ant-checkbox-inner {
  border-color: var(--primary-color) !important;
}
.dark-theme .ant-checkbox.ant-checkbox-checked .ant-checkbox-inner {
  background-color: var(--primary-color) !important;
  border-color: var(--primary-color) !important;
}
/**
 * 表单组件专用样式
 * 包含输入框、选择器、表单验证等相关样式
 */
.ant-input-search {
  display: flex !important;
  align-items: stretch !important;
}
.ant-input-search.ant-input-group {
  display: flex !important;
}
.ant-input-search.ant-input-group .ant-input-group-wrapper {
  display: flex !important;
  flex: 1 !important;
}
.ant-input-search .ant-input {
  border-right: none !important;
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}
.ant-input-search .ant-input:focus {
  border-color: var(--primary-color) !important;
  box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.2) !important;
  z-index: 1 !important;
}
.ant-input-search .ant-input-search-button {
  border-left: none !important;
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
  background-color: var(--primary-color) !important;
  border-color: var(--primary-color) !important;
  margin-left: -1px !important;
}
.ant-input-search .ant-input-search-button:hover {
  background-color: var(--primary-color-hover) !important;
  border-color: var(--primary-color-hover) !important;
}
.ant-input-search .ant-input-group-addon {
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
}
.ant-input-search .ant-input-group-addon .ant-btn {
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}
.dark-theme .ant-input,
.dark-theme .ant-input-number,
.dark-theme .ant-input-number-input,
.dark-theme .ant-input-password,
.dark-theme .ant-textarea,
.dark-theme .ant-mentions {
  background-color: var(--input-bg) !important;
  color: var(--text-primary) !important;
  border: 1px solid var(--input-border) !important;
  border-radius: 6px !important;
  transition: all 0.2s ease !important;
}
.dark-theme .ant-input::placeholder,
.dark-theme .ant-input-number::placeholder,
.dark-theme .ant-input-number-input::placeholder,
.dark-theme .ant-input-password::placeholder,
.dark-theme .ant-textarea::placeholder,
.dark-theme .ant-mentions::placeholder {
  color: var(--text-tertiary) !important;
}
.dark-theme .ant-input:hover,
.dark-theme .ant-input-number:hover,
.dark-theme .ant-input-number-input:hover,
.dark-theme .ant-input-password:hover,
.dark-theme .ant-textarea:hover,
.dark-theme .ant-mentions:hover {
  border-color: var(--input-border-hover) !important;
  background-color: var(--input-bg) !important;
}
.dark-theme .ant-input:focus,
.dark-theme .ant-input-number:focus,
.dark-theme .ant-input-number-input:focus,
.dark-theme .ant-input-password:focus,
.dark-theme .ant-textarea:focus,
.dark-theme .ant-mentions:focus {
  border-color: var(--input-border-focus) !important;
  box-shadow: 0 0 0 2px rgba(96, 165, 250, 0.15) !important;
  background-color: var(--input-bg) !important;
}
.dark-theme .ant-input-number {
  background-color: var(--input-bg) !important;
  border: 1px solid var(--input-border) !important;
}
.dark-theme .ant-input-number .ant-input-number-input {
  background-color: transparent !important;
  border: none !important;
}
.dark-theme .ant-input-number .ant-input-number-handler-wrap {
  background-color: var(--input-bg) !important;
  border-left: 1px solid var(--input-border) !important;
}
.dark-theme .ant-input-number:hover {
  border-color: var(--input-border-hover) !important;
}
.dark-theme .ant-input-number:focus,
.dark-theme .ant-input-number.ant-input-number-focused {
  border-color: var(--input-border-focus) !important;
  box-shadow: 0 0 0 2px rgba(96, 165, 250, 0.15) !important;
}
.dark-theme .ant-select .ant-select-selector {
  background-color: var(--input-bg) !important;
  border: 1px solid var(--input-border) !important;
  border-radius: 6px !important;
  transition: all 0.2s ease !important;
}
.dark-theme .ant-select .ant-select-selector .ant-select-selection-placeholder {
  color: var(--text-tertiary) !important;
}
.dark-theme .ant-select .ant-select-selector .ant-select-selection-item {
  color: var(--text-primary) !important;
}
.dark-theme .ant-select .ant-select-selector .ant-select-selection-search-input {
  background-color: transparent !important;
}
.dark-theme .ant-select:hover .ant-select-selector {
  border-color: var(--input-border-hover) !important;
}
.dark-theme .ant-select.ant-select-focused .ant-select-selector,
.dark-theme .ant-select.ant-select-open .ant-select-selector {
  border-color: var(--input-border-focus) !important;
  box-shadow: 0 0 0 2px rgba(96, 165, 250, 0.15) !important;
}
.dark-theme .ant-picker {
  background-color: var(--input-bg) !important;
  border: 1px solid var(--input-border) !important;
  border-radius: 6px !important;
  transition: all 0.2s ease !important;
}
.dark-theme .ant-picker .ant-picker-input > input {
  background-color: transparent !important;
  color: var(--text-primary) !important;
}
.dark-theme .ant-picker .ant-picker-input > input::placeholder {
  color: var(--text-tertiary) !important;
}
.dark-theme .ant-picker .ant-picker-suffix,
.dark-theme .ant-picker .ant-picker-clear {
  color: var(--text-secondary) !important;
}
.dark-theme .ant-picker:hover {
  border-color: var(--input-border-hover) !important;
}
.dark-theme .ant-picker.ant-picker-focused,
.dark-theme .ant-picker:focus {
  border-color: var(--input-border-focus) !important;
  box-shadow: 0 0 0 2px rgba(96, 165, 250, 0.15) !important;
}
.dark-theme .ant-cascader .ant-select-selector {
  background-color: var(--input-bg) !important;
  border: 1px solid var(--input-border) !important;
}
.dark-theme .ant-tree-select .ant-select-selector {
  background-color: var(--input-bg) !important;
  border: 1px solid var(--input-border) !important;
}
.dark-theme .ant-input-group .ant-input-group-addon {
  background-color: var(--component-background) !important;
  border-color: var(--border-color-base) !important;
  color: var(--text-primary) !important;
}
.dark-theme .ant-input-search {
  display: flex !important;
  align-items: stretch !important;
}
.dark-theme .ant-input-search.ant-input-group {
  display: flex !important;
}
.dark-theme .ant-input-search.ant-input-group .ant-input-group-wrapper {
  display: flex !important;
  flex: 1 !important;
}
.dark-theme .ant-input-search .ant-input {
  border-right: none !important;
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
  background-color: var(--input-bg) !important;
}
.dark-theme .ant-input-search .ant-input:focus {
  border-color: var(--primary-color) !important;
  box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.2) !important;
  z-index: 1 !important;
}
.dark-theme .ant-input-search .ant-input-search-button {
  border-left: none !important;
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
  background-color: var(--primary-color) !important;
  border-color: var(--primary-color) !important;
  margin-left: -1px !important;
}
.dark-theme .ant-input-search .ant-input-search-button:hover {
  background-color: var(--primary-color-hover) !important;
  border-color: var(--primary-color-hover) !important;
}
.dark-theme .ant-input-search .ant-input-group-addon {
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
}
.dark-theme .ant-input-search .ant-input-group-addon .ant-btn {
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}
.dark-theme .ant-input-affix-wrapper {
  background-color: var(--input-bg) !important;
  border: 1px solid var(--input-border) !important;
  border-radius: 6px !important;
  transition: all 0.2s ease !important;
}
.dark-theme .ant-input-affix-wrapper .ant-input {
  background-color: transparent !important;
  border: none !important;
}
.dark-theme .ant-input-affix-wrapper .ant-input-prefix,
.dark-theme .ant-input-affix-wrapper .ant-input-suffix {
  color: var(--text-secondary) !important;
}
.dark-theme .ant-input-affix-wrapper:hover {
  border-color: var(--input-border-hover) !important;
}
.dark-theme .ant-input-affix-wrapper:focus,
.dark-theme .ant-input-affix-wrapper.ant-input-affix-wrapper-focused {
  border-color: var(--input-border-focus) !important;
  box-shadow: 0 0 0 2px rgba(96, 165, 250, 0.15) !important;
}
.dark-theme .ant-form-item-label > label {
  color: var(--text-primary) !important;
}
.dark-theme .ant-form-item-explain-error {
  color: #ff4d4f !important;
}
.dark-theme .ant-form-item-explain-success {
  color: #52c41a !important;
}
.dark-theme .ant-form-item-explain-warning {
  color: #faad14 !important;
}
.dark-theme .ant-checkbox-wrapper,
.dark-theme .ant-radio-wrapper {
  color: var(--text-primary) !important;
}
.dark-theme .ant-checkbox-inner,
.dark-theme .ant-radio-inner {
  background-color: var(--input-bg) !important;
  border-color: var(--border-color-base) !important;
}
.dark-theme .ant-checkbox-checked .ant-checkbox-inner,
.dark-theme .ant-radio-checked .ant-radio-inner {
  background-color: var(--primary-color) !important;
  border-color: var(--primary-color) !important;
}
.dark-theme .ant-radio-group .ant-radio-button-wrapper {
  background-color: rgba(255, 255, 255, 0.05) !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
  color: var(--text-secondary) !important;
}
.dark-theme .ant-radio-group .ant-radio-button-wrapper:first-child {
  border-left: 1px solid rgba(255, 255, 255, 0.1) !important;
}
.dark-theme .ant-radio-group .ant-radio-button-wrapper:hover {
  color: var(--primary-color) !important;
}
.dark-theme .ant-radio-group .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled) {
  background-color: var(--primary-color) !important;
  border-color: var(--primary-color) !important;
  color: #fff !important;
}
.dark-theme .ant-radio-group .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled)::before {
  background-color: var(--primary-color) !important;
}
.dark-theme .ant-switch {
  background-color: rgba(255, 255, 255, 0.15) !important;
}
.dark-theme .ant-switch .ant-switch-inner {
  color: var(--text-primary) !important;
}
.dark-theme .ant-switch-checked {
  background-color: var(--primary-color) !important;
}
.dark-theme .ant-switch .ant-switch-handle::before {
  background-color: #fff !important;
}
.dark-theme .ant-input::placeholder,
.dark-theme .ant-input-number-input::placeholder,
.dark-theme .ant-select-selection-placeholder,
.dark-theme .ant-picker-input > input::placeholder,
.dark-theme .ant-input-affix-wrapper input::placeholder,
.dark-theme .ant-textarea::placeholder {
  color: var(--text-secondary) !important;
  opacity: 0.65 !important;
  background-color: transparent !important;
}
.dark-theme .search-form,
.dark-theme .search-actions,
.dark-theme .filter-form,
.dark-theme .query-form,
.dark-theme [class*="search-"],
.dark-theme [class*="filter-"],
.dark-theme [class*="query-"] {
  background-color: transparent !important;
  background: transparent !important;
}
.dark-theme .search-form .ant-form-item,
.dark-theme .search-actions .ant-form-item,
.dark-theme .filter-form .ant-form-item,
.dark-theme .query-form .ant-form-item,
.dark-theme [class*="search-"] .ant-form-item,
.dark-theme [class*="filter-"] .ant-form-item,
.dark-theme [class*="query-"] .ant-form-item,
.dark-theme .search-form .ant-form-item-control,
.dark-theme .search-actions .ant-form-item-control,
.dark-theme .filter-form .ant-form-item-control,
.dark-theme .query-form .ant-form-item-control,
.dark-theme [class*="search-"] .ant-form-item-control,
.dark-theme [class*="filter-"] .ant-form-item-control,
.dark-theme [class*="query-"] .ant-form-item-control,
.dark-theme .search-form .ant-form-item-control-input,
.dark-theme .search-actions .ant-form-item-control-input,
.dark-theme .filter-form .ant-form-item-control-input,
.dark-theme .query-form .ant-form-item-control-input,
.dark-theme [class*="search-"] .ant-form-item-control-input,
.dark-theme [class*="filter-"] .ant-form-item-control-input,
.dark-theme [class*="query-"] .ant-form-item-control-input,
.dark-theme .search-form .ant-form-item-control-input-content,
.dark-theme .search-actions .ant-form-item-control-input-content,
.dark-theme .filter-form .ant-form-item-control-input-content,
.dark-theme .query-form .ant-form-item-control-input-content,
.dark-theme [class*="search-"] .ant-form-item-control-input-content,
.dark-theme [class*="filter-"] .ant-form-item-control-input-content,
.dark-theme [class*="query-"] .ant-form-item-control-input-content {
  background-color: transparent !important;
  background: transparent !important;
}
.dark-theme .search-form .ant-space,
.dark-theme .search-actions .ant-space,
.dark-theme .filter-form .ant-space,
.dark-theme .query-form .ant-space,
.dark-theme [class*="search-"] .ant-space,
.dark-theme [class*="filter-"] .ant-space,
.dark-theme [class*="query-"] .ant-space,
.dark-theme .search-form .ant-space-item,
.dark-theme .search-actions .ant-space-item,
.dark-theme .filter-form .ant-space-item,
.dark-theme .query-form .ant-space-item,
.dark-theme [class*="search-"] .ant-space-item,
.dark-theme [class*="filter-"] .ant-space-item,
.dark-theme [class*="query-"] .ant-space-item,
.dark-theme .search-form .ant-btn-group,
.dark-theme .search-actions .ant-btn-group,
.dark-theme .filter-form .ant-btn-group,
.dark-theme .query-form .ant-btn-group,
.dark-theme [class*="search-"] .ant-btn-group,
.dark-theme [class*="filter-"] .ant-btn-group,
.dark-theme [class*="query-"] .ant-btn-group,
.dark-theme .search-form .button-group,
.dark-theme .search-actions .button-group,
.dark-theme .filter-form .button-group,
.dark-theme .query-form .button-group,
.dark-theme [class*="search-"] .button-group,
.dark-theme [class*="filter-"] .button-group,
.dark-theme [class*="query-"] .button-group,
.dark-theme .search-form .btn-group,
.dark-theme .search-actions .btn-group,
.dark-theme .filter-form .btn-group,
.dark-theme .query-form .btn-group,
.dark-theme [class*="search-"] .btn-group,
.dark-theme [class*="filter-"] .btn-group,
.dark-theme [class*="query-"] .btn-group,
.dark-theme .search-form [class*="button"],
.dark-theme .search-actions [class*="button"],
.dark-theme .filter-form [class*="button"],
.dark-theme .query-form [class*="button"],
.dark-theme [class*="search-"] [class*="button"],
.dark-theme [class*="filter-"] [class*="button"],
.dark-theme [class*="query-"] [class*="button"],
.dark-theme .search-form [class*="action"],
.dark-theme .search-actions [class*="action"],
.dark-theme .filter-form [class*="action"],
.dark-theme .query-form [class*="action"],
.dark-theme [class*="search-"] [class*="action"],
.dark-theme [class*="filter-"] [class*="action"],
.dark-theme [class*="query-"] [class*="action"] {
  background-color: transparent !important;
  background: transparent !important;
}
.dark-theme .search-form .ant-row,
.dark-theme .search-actions .ant-row,
.dark-theme .filter-form .ant-row,
.dark-theme .query-form .ant-row,
.dark-theme [class*="search-"] .ant-row,
.dark-theme [class*="filter-"] .ant-row,
.dark-theme [class*="query-"] .ant-row,
.dark-theme .search-form .ant-col,
.dark-theme .search-actions .ant-col,
.dark-theme .filter-form .ant-col,
.dark-theme .query-form .ant-col,
.dark-theme [class*="search-"] .ant-col,
.dark-theme [class*="filter-"] .ant-col,
.dark-theme [class*="query-"] .ant-col {
  background-color: transparent !important;
  background: transparent !important;
}
.dark-theme .ant-form .ant-form-item:last-child,
.dark-theme .ant-form .form-actions,
.dark-theme .ant-form .form-buttons,
.dark-theme .ant-form .submit-row {
  background-color: transparent !important;
  background: transparent !important;
}
.dark-theme .ant-form .ant-form-item:last-child .ant-form-item-control-input-content,
.dark-theme .ant-form .form-actions .ant-form-item-control-input-content,
.dark-theme .ant-form .form-buttons .ant-form-item-control-input-content,
.dark-theme .ant-form .submit-row .ant-form-item-control-input-content {
  background-color: transparent !important;
  background: transparent !important;
}
.dark-theme .ant-space {
  background-color: transparent !important;
  background: transparent !important;
}
.dark-theme .ant-space .ant-space-item {
  background-color: transparent !important;
  background: transparent !important;
}
/**
 * Modal弹窗组件专用样式
 * 暗黑模式优化 - 遵循"海拔越高，颜色越亮"原则
 *
 * 优化内容：
 * 1. 提升海拔色调 - 让弹窗从背景中"跳"出来
 * 2. 发光边框 - 精致的1px半透明边框
 * 3. 毛玻璃遮罩 - backdrop-filter模糊效果
 * 4. 扩散式阴影 - 增强层次感
 * 5. 标题栏优化 - 更精致的顶部设计
 * 6. 关闭按钮优化 - 提升对比度
 */
.dark-theme .ant-modal-mask {
  background-color: var(--modal-mask-bg) !important;
  backdrop-filter: blur(var(--modal-mask-blur)) !important;
  -webkit-backdrop-filter: blur(var(--modal-mask-blur)) !important;
}
.dark-theme .ant-modal .ant-modal-content {
  background-color: var(--modal-bg) !important;
  border: 1px solid var(--modal-border) !important;
  border-radius: 12px !important;
  box-shadow: var(--modal-shadow) !important;
  overflow: hidden;
}
.dark-theme .ant-modal .ant-modal-content::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 12px;
  padding: 1px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.05) 50%, transparent 100%);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
}
.dark-theme .ant-modal-header {
  background-color: transparent;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  padding: 16px 24px !important;
  margin: 0 !important;
  border-radius: 12px 12px 0 0 !important;
}
.dark-theme .ant-modal-header .ant-modal-title {
  color: var(--text-primary) !important;
  font-weight: 600 !important;
  font-size: 16px !important;
  padding-left: 12px !important;
  border-left: 3px solid var(--primary-color) !important;
  line-height: 1.4 !important;
}
.dark-theme .ant-modal-close {
  color: var(--modal-close-color) !important;
  transition: all 0.2s ease !important;
  top: 12px !important;
  right: 12px !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 6px !important;
}
.dark-theme .ant-modal-close:hover {
  color: var(--modal-close-hover-color) !important;
  background-color: rgba(255, 255, 255, 0.1) !important;
}
.dark-theme .ant-modal-close .ant-modal-close-x {
  width: 32px !important;
  height: 32px !important;
  line-height: 32px !important;
  font-size: 16px !important;
}
.dark-theme .ant-modal-body {
  background-color: var(--modal-bg) !important;
  padding: 24px !important;
  color: var(--text-primary) !important;
}
.dark-theme .ant-modal-body .ant-form-item-label > label {
  color: var(--text-secondary) !important;
}
.dark-theme .ant-modal-body .ant-form-item-required::before {
  color: #ff6b6b !important;
}
.dark-theme .ant-modal-footer {
  background-color: var(--modal-bg) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
  padding: 16px 24px !important;
  margin: 0 !important;
  border-radius: 0 0 12px 12px !important;
}
.dark-theme .ant-modal-footer .ant-btn:not(.ant-btn-primary) {
  background-color: transparent !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  color: var(--text-secondary) !important;
}
.dark-theme .ant-modal-footer .ant-btn:not(.ant-btn-primary):hover {
  border-color: var(--primary-color) !important;
  color: var(--primary-color) !important;
  background-color: rgba(96, 165, 250, 0.1) !important;
}
.dark-theme .ant-modal-footer .ant-btn-primary {
  background-color: var(--primary-color) !important;
  border-color: var(--primary-color) !important;
  color: #fff !important;
  box-shadow: 0 2px 8px rgba(96, 165, 250, 0.35) !important;
}
.dark-theme .ant-modal-footer .ant-btn-primary:hover {
  background-color: var(--primary-color-hover) !important;
  border-color: var(--primary-color-hover) !important;
  box-shadow: 0 4px 12px rgba(96, 165, 250, 0.45) !important;
}
.dark-theme .ant-modal-confirm .ant-modal-content {
  padding: 0 !important;
}
.dark-theme .ant-modal-confirm .ant-modal-confirm-body-wrapper {
  padding: 24px !important;
}
.dark-theme .ant-modal-confirm .ant-modal-confirm-title {
  color: var(--text-primary) !important;
  font-weight: 600 !important;
}
.dark-theme .ant-modal-confirm .ant-modal-confirm-content {
  color: var(--text-secondary) !important;
  margin-top: 8px !important;
}
.dark-theme .ant-modal-confirm .ant-modal-confirm-btns {
  margin-top: 24px !important;
}
.dark-theme .ant-modal-body .ant-tree {
  background: var(--modal-input-bg) !important;
  border-radius: 8px !important;
  padding: 8px !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
}
.dark-theme .ant-modal-body .ant-tree .ant-tree-node-content-wrapper {
  color: var(--text-primary) !important;
  border-radius: 4px !important;
}
.dark-theme .ant-modal-body .ant-tree .ant-tree-node-content-wrapper:hover {
  background-color: rgba(96, 165, 250, 0.1) !important;
}
.dark-theme .ant-modal-body .ant-tree .ant-tree-node-content-wrapper.ant-tree-node-selected {
  background-color: var(--primary-color) !important;
  color: #fff !important;
}
.dark-theme .ant-modal-body .ant-tree .ant-tree-switcher {
  color: var(--text-secondary) !important;
}
.dark-theme .ant-modal-body .ant-tree .ant-tree-checkbox .ant-tree-checkbox-inner {
  background-color: var(--modal-input-bg) !important;
  border-color: rgba(255, 255, 255, 0.2) !important;
}
.dark-theme .ant-modal-body .ant-tree .ant-tree-checkbox.ant-tree-checkbox-checked .ant-tree-checkbox-inner {
  background-color: var(--primary-color) !important;
  border-color: var(--primary-color) !important;
}
.dark-theme .ant-select-dropdown {
  background-color: var(--component-background) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: 8px !important;
}
.dark-theme .ant-select-dropdown .rc-virtual-list {
  background-color: transparent !important;
  background: transparent !important;
}
.dark-theme .ant-select-dropdown .rc-virtual-list-holder {
  background-color: transparent !important;
  background: transparent !important;
}
.dark-theme .ant-select-dropdown .rc-virtual-list-holder-inner {
  background-color: transparent !important;
  background: transparent !important;
}
.dark-theme .ant-select-dropdown .ant-select-item {
  background-color: transparent !important;
  background: transparent !important;
  color: var(--text-primary) !important;
  border-radius: 4px !important;
  margin: 2px 4px !important;
}
.dark-theme .ant-select-dropdown .ant-select-item .ant-select-item-option-content {
  background-color: transparent !important;
  background: transparent !important;
}
.dark-theme .ant-select-dropdown .ant-select-item:hover,
.dark-theme .ant-select-dropdown .ant-select-item.ant-select-item-option-active {
  background-color: rgba(255, 255, 255, 0.08) !important;
  background: rgba(255, 255, 255, 0.08) !important;
}
.dark-theme .ant-select-dropdown .ant-select-item.ant-select-item-option-selected {
  background-color: var(--primary-color) !important;
  background: var(--primary-color) !important;
  color: #fff !important;
  font-weight: 600 !important;
}
.dark-theme .ant-select-dropdown .ant-select-item.ant-select-item-option-selected .ant-select-item-option-content {
  color: #fff !important;
}
.dark-theme .ant-select-dropdown .ant-select-item.ant-select-item-option-selected .ant-select-item-option-state {
  color: #fff !important;
}
.dark-theme .ant-select-dropdown .ant-select-item-group {
  background-color: transparent !important;
  color: var(--text-secondary) !important;
}
.dark-theme .ant-dropdown-menu {
  background-color: var(--component-background) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
}
.dark-theme .ant-dropdown-menu .ant-dropdown-menu-item,
.dark-theme .ant-dropdown-menu .ant-dropdown-menu-item-only-child {
  background-color: transparent !important;
  background: transparent !important;
}
.dark-theme .ant-tree-select-dropdown .ant-select-tree,
.dark-theme .ant-select-tree-dropdown .ant-select-tree,
.dark-theme .ant-tree-select-dropdown .ant-select-tree-list-holder-inner,
.dark-theme .ant-select-tree-dropdown .ant-select-tree-list-holder-inner {
  background-color: transparent !important;
}
.dark-theme .ant-cascader-dropdown .ant-cascader-menus,
.dark-theme .ant-cascader-dropdown .ant-cascader-menu {
  background-color: transparent !important;
}
.dark-theme .ant-picker-dropdown .ant-picker-panel {
  background-color: transparent !important;
}
body:not(.dark-theme) .ant-modal-content {
  border-radius: 12px !important;
  box-shadow: 0 6px 30px rgba(0, 0, 0, 0.12) !important;
}
body:not(.dark-theme) .ant-modal-footer {
  border-radius: 0 0 12px 12px !important;
}
/**
 * WangEditor 富文本编辑器暗黑模式
 */
.dark-theme .wangeditor-wrapper,
.dark-theme .editor {
  border-color: var(--border-color-base) !important;
  background-color: var(--component-background) !important;
}
.dark-theme .w-e-toolbar,
.dark-theme .w-e-bar {
  background-color: var(--table-header-bg) !important;
  border-color: var(--border-color-split) !important;
}
.dark-theme .w-e-text-container {
  background-color: var(--component-background) !important;
}
.dark-theme .w-e-text-container [data-slate-editor="true"] {
  color: var(--text-color) !important;
}
.dark-theme [style*="background-color: rgb(255, 255, 255)"],
.dark-theme [style*="background:#fff"],
.dark-theme [style*="background-color:#fff"] {
  background-color: var(--component-background) !important;
}
.dark-theme .w-e-bar-item svg {
  fill: var(--text-color) !important;
}
.dark-theme .w-e-bar-item.w-e-bar-item-active svg {
  fill: var(--primary-color) !important;
}
body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  color: var(--text-primary);
  background-color: var(--bg-color);
}
.dark-theme body,
.dark-theme .ant-layout,
.dark-theme .ant-app,
.dark-theme #app,
.dark-theme .page-container,
.dark-theme .content-wrapper,
.dark-theme .layout-container {
  background-color: var(--bg-color) !important;
}
body.dark-theme .ant-drawer-content,
html.dark-theme .ant-drawer-content,
body.dark-theme .ant-drawer-header,
html.dark-theme .ant-drawer-header,
body.dark-theme .ant-modal-content,
html.dark-theme .ant-modal-content,
body.dark-theme .ant-modal-header,
html.dark-theme .ant-modal-header,
body.dark-theme .ant-popover-inner,
html.dark-theme .ant-popover-inner,
body.dark-theme .ant-select-dropdown,
html.dark-theme .ant-select-dropdown,
body.dark-theme .ant-dropdown-menu,
html.dark-theme .ant-dropdown-menu {
  --ant-component-background: var(--component-background);
  --ant-container-background: var(--component-background);
  background-color: var(--modal-bg) !important;
}
body.dark-theme .ant-drawer-mask,
html.dark-theme .ant-drawer-mask {
  background-color: rgba(0, 0, 0, 0.45) !important;
  backdrop-filter: blur(4px);
}
body.dark-theme .ant-drawer-content,
html.dark-theme .ant-drawer-content,
body.dark-theme .ant-drawer-header,
html.dark-theme .ant-drawer-header,
body.dark-theme .ant-drawer-wrapper-body,
html.dark-theme .ant-drawer-wrapper-body,
body.dark-theme .ant-drawer-body,
html.dark-theme .ant-drawer-body,
body.dark-theme .ant-modal-content,
html.dark-theme .ant-modal-content,
body.dark-theme .ant-modal-header,
html.dark-theme .ant-modal-header,
body.dark-theme .ant-modal-body,
html.dark-theme .ant-modal-body,
body.dark-theme .ant-modal-footer,
html.dark-theme .ant-modal-footer {
  background-color: var(--modal-bg) !important;
  color: var(--text-primary) !important;
  border-color: var(--border-color-split) !important;
}
body.dark-theme .theme-setting-drawer .ant-drawer-content,
html.dark-theme .theme-setting-drawer .ant-drawer-content,
body.dark-theme .theme-setting-drawer .ant-drawer-header,
html.dark-theme .theme-setting-drawer .ant-drawer-header,
body.dark-theme .theme-setting-drawer .ant-drawer-body,
html.dark-theme .theme-setting-drawer .ant-drawer-body {
  background-color: var(--drawer-bg) !important;
  color: var(--text-primary) !important;
}
body.dark-theme .theme-setting-drawer .ant-divider-inner-text,
html.dark-theme .theme-setting-drawer .ant-divider-inner-text {
  color: var(--text-primary) !important;
  background-color: transparent !important;
  font-weight: 600;
}
body.dark-theme .theme-setting-drawer .ant-list-item,
html.dark-theme .theme-setting-drawer .ant-list-item {
  color: var(--text-primary) !important;
}
body.dark-theme .theme-setting-drawer .setting-drawer-block h3,
html.dark-theme .theme-setting-drawer .setting-drawer-block h3 {
  color: var(--text-primary) !important;
}
body.dark-theme .theme-setting-drawer .setting-drawer-block-checbox-item,
html.dark-theme .theme-setting-drawer .setting-drawer-block-checbox-item {
  background-color: var(--component-background) !important;
  border-color: var(--border-color-base) !important;
}
body.dark-theme .theme-setting-drawer .setting-drawer-block-checbox-item img,
html.dark-theme .theme-setting-drawer .setting-drawer-block-checbox-item img {
  filter: invert(0.8) hue-rotate(180deg) brightness(1.2);
  opacity: 0.7;
}
body.dark-theme .theme-setting-drawer .setting-drawer-block-checbox-item.active,
html.dark-theme .theme-setting-drawer .setting-drawer-block-checbox-item.active {
  border-color: var(--primary-color) !important;
  background-color: rgba(24, 144, 255, 0.1) !important;
}
body.dark-theme .theme-setting-drawer .setting-drawer-block-checbox-item.active img,
html.dark-theme .theme-setting-drawer .setting-drawer-block-checbox-item.active img {
  filter: none;
  opacity: 1;
}
body.dark-theme .ant-drawer-title,
html.dark-theme .ant-drawer-title,
body.dark-theme .ant-drawer-close,
html.dark-theme .ant-drawer-close,
body.dark-theme .ant-modal-title,
html.dark-theme .ant-modal-title,
body.dark-theme .ant-modal-close,
html.dark-theme .ant-modal-close {
  color: var(--text-primary) !important;
}
body.dark-theme .ant-message-notice-content,
html.dark-theme .ant-message-notice-content,
body.dark-theme .ant-notification-notice,
html.dark-theme .ant-notification-notice {
  background-color: var(--modal-bg) !important;
  color: var(--text-primary) !important;
  border: 1px solid var(--border-color-split) !important;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.4) !important;
}
body.dark-theme .ant-message-notice-content .ant-message-custom-content > span:last-child,
html.dark-theme .ant-message-notice-content .ant-message-custom-content > span:last-child,
body.dark-theme .ant-notification-notice .ant-message-custom-content > span:last-child,
html.dark-theme .ant-notification-notice .ant-message-custom-content > span:last-child,
body.dark-theme .ant-message-notice-content .ant-notification-notice-message,
html.dark-theme .ant-message-notice-content .ant-notification-notice-message,
body.dark-theme .ant-notification-notice .ant-notification-notice-message,
html.dark-theme .ant-notification-notice .ant-notification-notice-message,
body.dark-theme .ant-message-notice-content .ant-notification-notice-description,
html.dark-theme .ant-message-notice-content .ant-notification-notice-description,
body.dark-theme .ant-notification-notice .ant-notification-notice-description,
html.dark-theme .ant-notification-notice .ant-notification-notice-description,
body.dark-theme .ant-message-notice-content .ant-notification-notice-close,
html.dark-theme .ant-message-notice-content .ant-notification-notice-close,
body.dark-theme .ant-notification-notice .ant-notification-notice-close,
html.dark-theme .ant-notification-notice .ant-notification-notice-close {
  color: var(--text-primary) !important;
}
body.dark-theme .ant-message-notice-content .ant-notification-notice-description,
html.dark-theme .ant-message-notice-content .ant-notification-notice-description,
body.dark-theme .ant-notification-notice .ant-notification-notice-description,
html.dark-theme .ant-notification-notice .ant-notification-notice-description {
  color: var(--text-secondary) !important;
}
body.dark-theme .ant-select-dropdown,
html.dark-theme .ant-select-dropdown {
  background-color: var(--dropdown-bg) !important;
  border: 1px solid var(--border-color-split) !important;
}
body.dark-theme .ant-select-dropdown .ant-select-item,
html.dark-theme .ant-select-dropdown .ant-select-item {
  color: var(--text-primary) !important;
}
body.dark-theme .ant-select-dropdown .ant-select-item-option-active,
html.dark-theme .ant-select-dropdown .ant-select-item-option-active {
  background-color: var(--hover-bg) !important;
}
body.dark-theme .ant-select-dropdown .ant-select-item-option-selected,
html.dark-theme .ant-select-dropdown .ant-select-item-option-selected {
  background-color: var(--primary-alpha-20) !important;
  color: var(--primary-color) !important;
}
.dark-theme .ant-card {
  background: var(--component-background) !important;
  border: 1px solid rgba(255, 255, 255, 0.05) !important;
  border-radius: 12px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}
.dark-theme .ant-card .ant-card-head {
  border-bottom: 1px solid rgba(255, 255, 255, 0.03);
  background: transparent !important;
}
.dark-theme .ant-card .ant-card-body {
  background: transparent !important;
}
.dark-theme .ant-tag {
  background-color: rgba(255, 255, 255, 0.05) !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
  color: var(--text-secondary) !important;
}
.dark-theme .ant-tag.ant-tag-blue,
.dark-theme .ant-tag.ant-tag-processing {
  color: #60A5FA !important;
  background-color: rgba(96, 165, 250, 0.1) !important;
  border-color: rgba(96, 165, 250, 0.2) !important;
}
.dark-theme .ant-tag.ant-tag-green,
.dark-theme .ant-tag.ant-tag-success {
  color: #4ADE80 !important;
  background-color: rgba(74, 222, 128, 0.1) !important;
  border-color: rgba(74, 222, 128, 0.2) !important;
}
.dark-theme .ant-tag.ant-tag-orange,
.dark-theme .ant-tag.ant-tag-warning {
  color: #FB923C !important;
  background-color: rgba(251, 146, 60, 0.1) !important;
  border-color: rgba(251, 146, 60, 0.2) !important;
}
.dark-theme .ant-tag.ant-tag-red,
.dark-theme .ant-tag.ant-tag-error {
  color: #F87171 !important;
  background-color: rgba(248, 113, 113, 0.1) !important;
  border-color: rgba(248, 113, 113, 0.2) !important;
}
.dark-theme .ant-tree {
  background: transparent !important;
  color: var(--text-primary) !important;
}
.dark-theme .ant-tree .ant-tree-node-content-wrapper {
  color: var(--text-primary) !important;
}
.dark-theme .ant-tree .ant-tree-node-content-wrapper:hover {
  background-color: rgba(255, 255, 255, 0.05) !important;
}
.dark-theme .ant-tree .ant-tree-node-content-wrapper.ant-tree-node-selected {
  background-color: rgba(96, 165, 250, 0.2) !important;
  color: #60A5FA !important;
}
.dark-theme .ant-tree .ant-tree-switcher {
  color: var(--text-secondary) !important;
  background: transparent !important;
}
.dark-theme .ant-tree .ant-checkbox-inner {
  background-color: var(--input-bg) !important;
  border-color: var(--border-color-base) !important;
}
.dark-theme .ant-tree .ant-checkbox-checked .ant-checkbox-inner,
.dark-theme .ant-tree .ant-tree-checkbox-checked .ant-checkbox-inner {
  background-color: var(--primary-color) !important;
  border-color: var(--primary-color) !important;
}
.dark-theme .ant-input,
.dark-theme .ant-input-number,
.dark-theme .ant-select-selector,
.dark-theme .ant-picker {
  background-color: var(--input-bg) !important;
  border-color: var(--border-color-base) !important;
  color: var(--text-primary) !important;
}
.dark-theme .ant-input:hover,
.dark-theme .ant-input-number:hover,
.dark-theme .ant-select-selector:hover,
.dark-theme .ant-picker:hover,
.dark-theme .ant-input:focus,
.dark-theme .ant-input-number:focus,
.dark-theme .ant-select-selector:focus,
.dark-theme .ant-picker:focus {
  border-color: var(--primary-color) !important;
}
.dark-theme .ant-table-wrapper,
.dark-theme .ant-table,
.dark-theme .ant-table-container,
.dark-theme .ant-table-content,
.dark-theme .ant-table-header,
.dark-theme .ant-table-body,
.dark-theme .ant-table-summary,
.dark-theme .ant-spin-nested-loading,
.dark-theme .ant-spin-container,
.dark-theme .ant-pagination,
.dark-theme .ant-pagination-item,
.dark-theme .ant-pagination-prev,
.dark-theme .ant-pagination-next,
.dark-theme .ant-pagination-jump-prev,
.dark-theme .ant-pagination-jump-next {
  background-color: transparent !important;
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}
.dark-theme .ant-statistic,
.dark-theme .ant-list-item,
.dark-theme .ant-collapse-header,
.dark-theme .ant-collapse-content,
.dark-theme .ant-descriptions-item-label,
.dark-theme .ant-descriptions-item-content {
  background: transparent !important;
}
.dark-theme *:not(.ant-btn-primary):not(.ant-btn-link):not(a):not(.anticon) {
  color: var(--text-color);
}
.dark-theme .ant-menu-item-selected {
  background: rgba(24, 144, 255, 0.1) !important;
  box-shadow: 0 0 20px rgba(24, 144, 255, 0.1);
}
.dark-theme .ant-menu-item-selected::before {
  content: '';
  position: absolute;
  left: 0;
  top: 20%;
  bottom: 20%;
  width: 3px;
  background: var(--primary-color);
  box-shadow: 0 0 8px var(--primary-color);
}
.dark-theme .svg-icon {
  color: var(--text-primary) !important;
  fill: currentColor !important;
}
.dark-theme .svg-icon[src*=".svg"] {
  filter: none !important;
  opacity: 0.85 !important;
}
.dark-theme .svg-icon[src*=".svg"]:hover {
  opacity: 1 !important;
}
.dark-theme .ant-menu-item .svg-icon,
.dark-theme .ant-menu-submenu-title .svg-icon {
  color: var(--text-secondary) !important;
  opacity: 0.8 !important;
}
.dark-theme .ant-menu-item .svg-icon:hover,
.dark-theme .ant-menu-submenu-title .svg-icon:hover {
  opacity: 1 !important;
}
.dark-theme .ant-menu-item-selected .svg-icon {
  color: var(--primary-color) !important;
  opacity: 1 !important;
}
.dark-theme .ant-table .svg-icon {
  color: var(--text-secondary) !important;
  opacity: 0.7 !important;
}
.dark-theme .ant-table .svg-icon:hover {
  opacity: 1 !important;
}
.dark-theme .ant-btn .svg-icon {
  color: inherit !important;
  opacity: 0.85 !important;
}
.dark-theme .svg-external-icon {
  background-color: var(--text-primary) !important;
  opacity: 0.85 !important;
}
.dark-theme .svg-external-icon:hover {
  opacity: 1 !important;
}
.dark-theme svg.svg-icon {
  color: var(--text-primary) !important;
  fill: currentColor !important;
}
.dark-theme svg.svg-icon use {
  fill: currentColor !important;
  color: inherit !important;
}
.dark-theme ::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.15);
  border-radius: 4px;
}
.dark-theme ::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.25);
}
.dark-theme ::-webkit-scrollbar-track {
  background: transparent;
}
.dark-theme .account-settings-page {
  background-color: var(--bg-color) !important;
}
.dark-theme .account-settings-page .stylish-card {
  background-color: var(--component-background) !important;
  border: 1px solid rgba(255, 255, 255, 0.05) !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3) !important;
}
.dark-theme .account-settings-page .stylish-card .info-row {
  border-bottom-color: rgba(255, 255, 255, 0.05) !important;
}
.dark-theme .account-settings-page .stylish-card .info-label {
  color: var(--text-secondary) !important;
}
.dark-theme .account-settings-page .stylish-card .info-label .info-icon {
  color: var(--text-tertiary) !important;
}
.dark-theme .account-settings-page .stylish-card .info-value {
  color: var(--text-primary) !important;
}
.dark-theme .account-settings-page .stylish-card .username {
  color: var(--text-primary) !important;
}
.dark-theme .account-settings-page .ant-tabs-tab {
  color: var(--text-secondary) !important;
}
.dark-theme .account-settings-page .ant-tabs-tab.ant-tabs-tab-active {
  color: var(--primary-color) !important;
}
.dark-theme .file-upload-container .ant-upload-drag {
  background-color: rgba(255, 255, 255, 0.02) !important;
  border-color: rgba(255, 255, 255, 0.1) !important;
}
.dark-theme .file-upload-container .ant-upload-drag:hover {
  background-color: rgba(96, 165, 250, 0.05) !important;
  border-color: var(--primary-color) !important;
}
.dark-theme .file-upload-container .ant-upload-drag .ant-upload-text {
  color: var(--text-primary) !important;
}
.dark-theme .file-upload-container .ant-upload-drag .ant-upload-hint {
  color: var(--text-tertiary) !important;
}
.dark-theme .file-upload-container .file-item {
  background-color: rgba(255, 255, 255, 0.03) !important;
  border-color: rgba(255, 255, 255, 0.08) !important;
}
.dark-theme .file-upload-container .file-item:hover {
  background-color: rgba(255, 255, 255, 0.06) !important;
}
.dark-theme .file-upload-container .file-item .file-name {
  color: var(--text-primary) !important;
}
.dark-theme .welcome-card {
  position: relative;
  overflow: hidden;
}
.dark-theme .welcome-card::after {
  content: '';
  position: absolute;
  right: -50px;
  top: -50px;
  width: 250px;
  height: 250px;
  background: radial-gradient(circle, rgba(24, 144, 255, 0.1) 0%, transparent 70%);
  pointer-events: none;
}
.dark-theme .welcome-card .welcome-text {
  color: var(--text-tertiary) !important;
}
.dark-theme .notice-list .ant-list-item {
  border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
  padding: 12px 0 !important;
}
.dark-theme .notice-list .ant-list-item:last-child {
  border-bottom: none !important;
}
.dark-theme .notice-list .notice-dot {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  margin-right: 8px;
}
.dark-theme .notice-list .notice-dot.blue {
  background: #60A5FA;
  box-shadow: 0 0 6px #60A5FA;
}
.dark-theme .notice-list .notice-dot.orange {
  background: #F59E0B;
  box-shadow: 0 0 6px #F59E0B;
}
.dark-theme .changelog-section .section-title {
  border-left: 3px solid var(--primary-color);
  padding-left: 12px;
  font-weight: 600;
  background: transparent !important;
}
.ant-btn {
  border-radius: 6px;
  transition: all 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.ant-table {
  border-radius: 8px;
}
