/* HX 主题: 默认紫 */
:root, [data-theme="light"] {
  --hx-primary: #7c3aed;
  --hx-accent: #a78bfa;
  --hx-bg: #fafafa;
  --hx-surface: #ffffff;
  --hx-text: #1a1a2e;
  --hx-radius: 12px;
}
[data-theme="dark"], html.dark, html:not(.light) {
  --hx-primary: #7c3aed;
  --hx-accent: #a78bfa;
  --hx-bg: #0f0f1a;
  --hx-surface: #1a1a2e;
  --hx-text: #e4e4e7;
}

/* ===== 主站界面跟随当前主题（背景/面板/文字/主色） ===== */
body, #app, .n-layout, .n-layout-scroll-container, .n-layout-content, .n-layout-content-main {
  background-color: var(--hx-bg) !important;
}
.n-layout-sider, .n-layout-sider-scroll-container, .n-menu, .layout-header, .n-layout-header,
.n-card, .n-tabs-nav, .n-descriptions, .n-table, .n-data-table, .n-modal .n-card {
  background-color: var(--hx-surface) !important;
}
.n-layout, .n-layout-sider, .n-menu-item-content, .n-card, .layout-header,
.n-form-item-label__text, .n-checkbox__label, .n-tabs-tab, .n-descriptions-table-content,
.n-data-table-td, .n-table, .n-breadcrumb__link, .n-page-header, .n-radio__label, .n-select-option {
  color: var(--hx-text) !important;
}
.n-input {
  background-color: var(--hx-surface) !important;
}
.n-input__input-el, .n-input__textarea-el {
  color: var(--hx-text) !important;
}
.n-input__placeholder {
  color: var(--hx-text) !important;
  opacity: .55;
}
.n-button--primary-type {
  background-color: var(--hx-primary) !important;
}
.n-menu-item-content--selected, .n-menu-item-content--selected .n-menu-item-content-header {
  background-color: var(--hx-primary) !important;
  color: #fff !important;
}
.n-checkbox-box--checked {
  background-color: var(--hx-primary) !important;
  border-color: var(--hx-primary) !important;
}
.n-switch.n-switch--active {
  background-color: var(--hx-primary) !important;
}
.n-slider .n-slider-rail__fill, .n-slider .n-slider-dot {
  background-color: var(--hx-primary) !important;
}
.n-tag--primary-type {
  background-color: var(--hx-primary) !important;
  color: #fff !important;
}

/* ===== 菜单选中/悬停完全跟随主题色，去掉其它杂色描边 ===== */
:root, [data-theme="light"], [data-theme="dark"], html.dark, html:not(.light) {
  --hx-primary-soft: #7c3aed33;
}
.n-menu {
  --n-item-color-active: var(--hx-primary) !important;
  --n-item-color-active-collapsed: var(--hx-primary) !important;
  --n-item-color-hover: var(--hx-primary-soft) !important;
  --n-item-color-hover-collapsed: var(--hx-primary-soft) !important;
  --n-item-text-color-active: #ffffff !important;
  --n-item-text-color-active-hover: #ffffff !important;
  --n-item-text-color-child-active: #ffffff !important;
  --n-item-text-color-child-active-hover: #ffffff !important;
  --n-item-icon-color-active: #ffffff !important;
  --n-item-icon-color-active-hover: #ffffff !important;
  --n-item-arrow-color-active: #ffffff !important;
  --n-item-arrow-color-active-hover: #ffffff !important;
  --n-item-text-color: var(--hx-text) !important;
  --n-item-icon-color: var(--hx-text) !important;
  --n-item-text-color-hover: var(--hx-text) !important;
  --n-item-icon-color-hover: var(--hx-text) !important;
}
.n-menu-item-content,
.n-menu-item-content:focus,
.n-menu-item-content:focus-visible,
.n-menu-item-content--selected,
.n-menu-item-content--selected:focus,
.n-menu-item-content--selected:focus-visible {
  outline: none !important;
  box-shadow: none !important;
  border: none !important;
}
.n-menu-item-content--selected,
.n-menu-item-content--selected .n-menu-item-content-header {
  background-color: var(--hx-primary) !important;
  color: #ffffff !important;
}
