/* ==========================================================================
   er.hucs8.top 专属主题 — 蓝紫渐变科技风
   仅此服务器生效（由 index.html 额外引入，位于 index-DDYJhxJP.css 之后）
   如需回退：删除 index.html 中对应 <link> 与本站文件即可
   ========================================================================== */

/* ---- 1. 主题变量（覆盖原绿/红色板，亮/暗模式均替换） ---- */
:root{
  --color-primary:#4F46E5;
  --color-primary-light:#818CF8;
  --color-primary-dark:#3730A3;
  --color-success:#10B981;
  --color-warning:#F59E0B;
  --color-error:#E11D48;
  --color-info:#3730A3;
  --accent-primary:#4F46E5;
  --accent-success:#10B981;
  --accent-warning:#F59E0B;
  --accent-danger:#E11D48;
}
[data-theme=dark]{
  --color-primary:#818CF8;
  --color-primary-light:#A5B4FC;
  --color-primary-dark:#6366F1;
  --color-success:#34D399;
  --color-warning:#FBBF24;
  --color-error:#FB7185;
  --color-info:#818CF8;
  --accent-primary:#818CF8;
  --accent-success:#34D399;
  --accent-warning:#FBBF24;
  --accent-danger:#FB7185;
}

/* ---- 2. 主按钮：蓝紫渐变 ---- */
.ant-btn-primary{
  background:linear-gradient(135deg,#4F46E5 0%,#7C3AED 100%)!important;
  border-color:transparent!important;
  color:#fff!important;
  border-radius:6px!important;
  box-shadow:0 2px 6px rgba(79,70,229,.32),0 4px 14px rgba(124,58,237,.20)!important;
}
.ant-btn-primary:hover{
  background:linear-gradient(135deg,#6366F1 0%,#8B5CF6 100%)!important;
  border-color:transparent!important;
  box-shadow:0 4px 10px rgba(79,70,229,.40),0 6px 20px rgba(124,58,237,.28)!important;
  transform:translateY(-1px);
}
.ant-btn-primary:active{
  background:linear-gradient(135deg,#4338CA 0%,#6D28D9 100%)!important;
  box-shadow:0 2px 4px rgba(79,70,229,.30)!important;
  transform:translateY(0);
}
.ant-btn-primary.ant-btn-disabled,
.ant-btn-primary[disabled],
.ant-btn-primary:disabled{
  background:#A5B4FC!important;
  border-color:transparent!important;
  color:#fff!important;
  box-shadow:none!important;
  opacity:.65!important;
  cursor:not-allowed!important;
}

/* ---- 3. 成功 / 警告 / 危险按钮（保持语义、更换色调） ---- */
.ant-btn-success,.ant-btn[type=button].btn-success{
  background:linear-gradient(135deg,#10B981 0%,#059669 100%)!important;
  border-color:transparent!important;
  color:#fff!important;
  border-radius:6px!important;
  box-shadow:0 2px 6px rgba(16,185,129,.30)!important;
}
.ant-btn-success:hover,.ant-btn[type=button].btn-success:hover{
  background:linear-gradient(135deg,#34D399 0%,#10B981 100%)!important;
  box-shadow:0 4px 12px rgba(16,185,129,.38)!important;
  transform:translateY(-1px);
}
.ant-btn-warning,.ant-btn[type=button].btn-warning{
  background:linear-gradient(135deg,#F59E0B 0%,#D97706 100%)!important;
  border-color:transparent!important;
  color:#fff!important;
  border-radius:6px!important;
  box-shadow:0 2px 6px rgba(245,158,11,.30)!important;
}
.ant-btn-warning:hover,.ant-btn[type=button].btn-warning:hover{
  background:linear-gradient(135deg,#FBBF24 0%,#F59E0B 100%)!important;
  box-shadow:0 4px 12px rgba(245,158,11,.38)!important;
  transform:translateY(-1px);
}
.ant-btn-dangerous,.ant-btn-danger{
  background:linear-gradient(135deg,#E11D48 0%,#BE123C 100%)!important;
  border-color:transparent!important;
  color:#fff!important;
  border-radius:6px!important;
  box-shadow:0 2px 6px rgba(225,29,72,.30)!important;
}
.ant-btn-dangerous:hover,.ant-btn-danger:hover{
  background:linear-gradient(135deg,#F43F5E 0%,#E11D48 100%)!important;
  box-shadow:0 4px 12px rgba(225,29,72,.38)!important;
  transform:translateY(-1px);
}

/* ---- 4. 默认按钮 hover 态（跟随新主色） ---- */
.ant-btn-default:hover{
  border-color:#4F46E5!important;
  color:#4F46E5!important;
  box-shadow:0 2px 8px rgba(79,70,229,.14)!important;
}

/* ---- 5. 业务自定义按钮：紫色统一为科技紫渐变，青色微调 ---- */
.btn-custom-purple{
  background:linear-gradient(135deg,#7C3AED 0%,#6D28D9 100%)!important;
  border-color:transparent!important;
  color:#fff!important;
  border-radius:6px!important;
  box-shadow:0 2px 6px rgba(124,58,237,.32)!important;
}
.btn-custom-purple:hover{
  background:linear-gradient(135deg,#8B5CF6 0%,#7C3AED 100%)!important;
  box-shadow:0 4px 12px rgba(124,58,237,.40)!important;
}
.btn-custom-cyan{
  box-shadow:0 2px 6px rgba(32,178,170,.28)!important;
}
.btn-custom-cyan:hover{
  box-shadow:0 4px 12px rgba(32,178,170,.36)!important;
}

/* ---- 6. 侧边菜单高亮：蓝紫渐变背景 + 高亮指示条 ---- */
.ant-menu-dark .ant-menu-item-selected,
.ant-menu-dark>.ant-menu .ant-menu-item-selected{
  background:linear-gradient(90deg,rgba(79,70,229,.30) 0%,rgba(124,58,237,.10) 100%)!important;
  color:#A5B4FC!important;
}
.ant-menu-dark .ant-menu-item-selected::after,
.ant-menu-dark>.ant-menu .ant-menu-item-selected::after,
.ant-menu.ant-menu-dark .ant-menu-item-selected::after,
.ant-menu-inline.ant-menu-dark .ant-menu-item-selected::after{
  border-right-color:#4F46E5!important;
  border-inline-end-color:#4F46E5!important;
}
.ant-menu-dark .ant-menu-item-selected .ant-menu-item-icon,
.ant-menu-dark .ant-menu-item-selected .anticon,
.ant-menu-dark>.ant-menu .ant-menu-item-selected .ant-menu-item-icon{
  color:#A5B4FC!important;
}
.ant-menu-dark .ant-menu-item-selected .ant-menu-title-content{color:#A5B4FC!important}
.ant-menu-dark .ant-menu-item:hover,
.ant-menu-dark>.ant-menu .ant-menu-item:hover{
  color:#C7D2FE!important;
  background:rgba(255,255,255,.06)!important;
}

/* ---- 7. 自定义选项卡高亮 ---- */
.custom-tabs .ant-tabs-tab:hover,
.custom-tabs .ant-tabs-tab-active{
  color:#4F46E5!important;
  border-color:#4F46E5!important;
  box-shadow:0 2px 8px rgba(79,70,229,.22)!important;
}
.custom-tabs .ant-tabs-tab-active .ant-tabs-tab-btn{color:#4F46E5!important}

/* ---- 8. 亮色模式下 antd 组件的 primary 色（覆盖 JS token 绿） ---- */
.ant-btn-link{color:#4F46E5!important}
.ant-btn-link:hover{color:#6366F1!important}
.ant-tabs-ink-bar{background:linear-gradient(90deg,#4F46E5,#7C3AED)!important}
.ant-tabs-tab:hover .ant-tabs-tab-btn{color:#6366F1!important}
.ant-tabs-tab-active .ant-tabs-tab-btn{color:#4F46E5!important}
.ant-checkbox-checked .ant-checkbox-inner{background:#4F46E5!important;border-color:#4F46E5!important}
.ant-checkbox-wrapper:hover .ant-checkbox-inner,
.ant-checkbox:hover .ant-checkbox-inner{border-color:#6366F1!important}
.ant-radio-checked .ant-radio-inner{border-color:#4F46E5!important}
.ant-radio-checked .ant-radio-inner::after{background:#4F46E5!important}
.ant-radio-wrapper:hover .ant-radio-inner{border-color:#6366F1!important}
.ant-switch-checked{background:#4F46E5!important}
.ant-slider-track{background:#4F46E5!important}
.ant-slider-handle{border-color:#4F46E5!important}
.ant-slider-handle:hover,
.ant-slider-handle:focus{border-color:#6366F1!important}
.ant-pagination-item-active{background:#4F46E5!important;border-color:#4F46E5!important}
.ant-pagination-item-active a{color:#fff!important}
.ant-pagination-item:hover{border-color:#6366F1!important}
.ant-pagination-item:hover a{color:#6366F1!important}
.ant-pagination-prev:hover .ant-pagination-item-link,
.ant-pagination-next:hover .ant-pagination-item-link{border-color:#6366F1!important;color:#6366F1!important}
.ant-select-item-option-selected:not(.ant-select-item-option-disabled){color:#4F46E5!important}
.ant-select:not(.ant-select-disabled):hover .ant-select-selector{border-color:#6366F1!important}
.ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{
  border-color:#4F46E5!important;
  box-shadow:0 0 0 2px rgba(79,70,229,.15)!important;
}
.ant-input:hover{border-color:#6366F1!important}
.ant-input:focus,.ant-input-focused{
  border-color:#4F46E5!important;
  box-shadow:0 0 0 2px rgba(79,70,229,.15)!important;
}
.ant-input-affix-wrapper:hover{border-color:#6366F1!important}
.ant-input-affix-wrapper:focus,
.ant-input-affix-wrapper-focused{
  border-color:#4F46E5!important;
  box-shadow:0 0 0 2px rgba(79,70,229,.15)!important;
}
.ant-input-number:hover{border-color:#6366F1!important}
.ant-input-number:focus,.ant-input-number-focused{
  border-color:#4F46E5!important;
  box-shadow:0 0 0 2px rgba(79,70,229,.15)!important;
}
.ant-picker:hover{border-color:#6366F1!important}
.ant-picker-focused{
  border-color:#4F46E5!important;
  box-shadow:0 0 0 2px rgba(79,70,229,.15)!important;
}
.ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner,
.ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,
.ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner{
  background:#4F46E5!important;
  color:#fff!important;
}
.ant-picker-today-btn{color:#4F46E5!important}
.ant-picker-today .ant-picker-cell-inner::before{border-color:#4F46E5!important}
.ant-progress-bg{background:linear-gradient(90deg,#4F46E5,#7C3AED)!important}
.ant-spin-dot-item{background:#4F46E5!important}
.ant-steps-item-process .ant-steps-item-icon{background:#4F46E5!important;border-color:#4F46E5!important}
.ant-steps-item-finish .ant-steps-item-icon{border-color:#4F46E5!important}
.ant-steps-item-finish .ant-steps-item-icon>.ant-steps-icon{color:#4F46E5!important}
.ant-steps-item-finish>.ant-steps-item-container>.ant-steps-item-tail::after{background:#4F46E5!important}
.ant-tag-processing{background:#EEF2FF!important;border-color:#C7D2FE!important;color:#4F46E5!important}
.ant-badge-status-processing{background:#4F46E5!important}

/* ---- 9. 暗色模式下的 focus / 高亮（替换原绿） ---- */
[data-theme=dark] .ant-input:focus,
[data-theme=dark] .ant-input-focused{
  border-color:#6366F1!important;
  box-shadow:0 0 0 2px rgba(99,102,241,.22)!important;
}
[data-theme=dark] .ant-input-affix-wrapper:focus,
[data-theme=dark] .ant-input-affix-wrapper-focused{
  border-color:#6366F1!important;
  box-shadow:0 0 0 2px rgba(99,102,241,.22)!important;
}
[data-theme=dark] .ant-select-focused:not(.ant-select-disabled).ant-select:not(.ant-select-customize-input) .ant-select-selector{
  border-color:#6366F1!important;
  box-shadow:0 0 0 2px rgba(99,102,241,.22)!important;
}
[data-theme=dark] .ant-checkbox-checked .ant-checkbox-inner{background:#818CF8!important;border-color:#818CF8!important}
[data-theme=dark] .ant-switch-checked{background:#818CF8!important}
[data-theme=dark] .ant-slider-track{background:#818CF8!important}
[data-theme=dark] .ant-slider-handle{border-color:#818CF8!important}

/* ---- 10. 页面氛围：背景遮罩叠加蓝紫渐变（明/暗） ---- */
.ant-layout-content:before{
  background:linear-gradient(135deg,rgba(49,46,129,.50) 0%,rgba(30,27,75,.55) 45%,rgba(76,29,149,.50) 100%)!important;
}
[data-theme=dark] .ant-layout-content:before{
  background:linear-gradient(135deg,rgba(30,27,75,.72) 0%,rgba(13,17,23,.78) 50%,rgba(49,46,129,.70) 100%)!important;
}
