/* ADMIN_CLEAN_THEME_V1
   后台统一白蓝清爽主题，只作为后台视觉覆盖层，不改前台，不改接口
*/

:root {
  --admin-bg: #f6f8fb;
  --admin-panel: #ffffff;
  --admin-panel-soft: #f9fafb;
  --admin-border: #e5e7eb;
  --admin-text: #111827;
  --admin-muted: #6b7280;
  --admin-blue: #2563eb;
  --admin-blue-dark: #1d4ed8;
  --admin-blue-soft: #eff6ff;
  --admin-green: #16a34a;
  --admin-red: #dc2626;
  --admin-yellow: #f59e0b;
  --admin-shadow: 0 10px 28px rgba(15, 23, 42, .06);
  --admin-radius: 14px;
}

/* 全局后台底色 */
html,
body {
  background: var(--admin-bg) !important;
  color: var(--admin-text) !important;
}

/* 清理老的花哨渐变和暗色背景 */
body,
.admin-page,
.admin-layout,
.admin-main,
.admin-content,
.main,
.content,
.page,
.dashboard,
.container,
.wrapper {
  background: var(--admin-bg) !important;
  color: var(--admin-text) !important;
}

/* 后台主区域 */
.admin-main,
.admin-content,
.main-content,
.content-area,
.dashboard-content {
  background: var(--admin-bg) !important;
}

/* 顶部栏 */
.admin-header,
.topbar,
.header,
.navbar {
  background: rgba(255, 255, 255, .96) !important;
  border-bottom: 1px solid var(--admin-border) !important;
  box-shadow: 0 4px 16px rgba(15, 23, 42, .04) !important;
  color: var(--admin-text) !important;
}

/* 左侧菜单，深蓝灰，干净专业 */
.admin-sidebar,
.sidebar,
.side-menu,
.left-menu,
.admin-menu {
  background: #0f172a !important;
  color: #e5e7eb !important;
  border-right: 0 !important;
  box-shadow: none !important;
}

.admin-sidebar a,
.sidebar a,
.side-menu a,
.left-menu a,
.admin-menu a {
  color: #cbd5e1 !important;
  background: transparent !important;
  border-radius: 10px !important;
  text-decoration: none !important;
}

.admin-sidebar a:hover,
.sidebar a:hover,
.side-menu a:hover,
.left-menu a:hover,
.admin-menu a:hover,
.admin-sidebar a.active,
.sidebar a.active,
.side-menu a.active,
.left-menu a.active,
.admin-menu a.active {
  background: rgba(37, 99, 235, .18) !important;
  color: #ffffff !important;
}

/* 卡片统一白色 */
.card,
.panel,
.box,
.stat-card,
.admin-card,
.dashboard-card,
.table-card,
.form-card,
section,
.module {
  background: var(--admin-panel) !important;
  border: 1px solid var(--admin-border) !important;
  border-radius: var(--admin-radius) !important;
  box-shadow: var(--admin-shadow) !important;
  color: var(--admin-text) !important;
}

/* 标题 */
h1, h2, h3, h4,
.page-title,
.admin-title,
.card-title,
.panel-title {
  color: var(--admin-text) !important;
  font-weight: 700 !important;
}

/* 次要文字 */
.text-muted,
.muted,
.desc,
.description,
small {
  color: var(--admin-muted) !important;
}

/* 表格 */
table {
  background: var(--admin-panel) !important;
  color: var(--admin-text) !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
}

thead,
table thead tr,
.table thead tr {
  background: #f8fafc !important;
}

th {
  color: #374151 !important;
  background: #f8fafc !important;
  border-bottom: 1px solid var(--admin-border) !important;
  font-weight: 700 !important;
}

td {
  color: var(--admin-text) !important;
  border-bottom: 1px solid #eef2f7 !important;
}

tr:hover td {
  background: #f9fbff !important;
}

/* 输入框 */
input,
select,
textarea {
  background: #ffffff !important;
  color: var(--admin-text) !important;
  border: 1px solid #d1d5db !important;
  border-radius: 10px !important;
  box-shadow: none !important;
}

input:focus,
select:focus,
textarea:focus {
  border-color: var(--admin-blue) !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .12) !important;
  outline: none !important;
}

/* 按钮 */
button,
.btn,
.admin-btn,
.action-btn,
input[type="button"],
input[type="submit"] {
  border-radius: 10px !important;
  border: 1px solid transparent !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}

.btn-primary,
.primary,
button.primary,
.admin-btn-primary {
  background: var(--admin-blue) !important;
  color: #ffffff !important;
  border-color: var(--admin-blue) !important;
}

.btn-primary:hover,
.primary:hover,
button.primary:hover,
.admin-btn-primary:hover {
  background: var(--admin-blue-dark) !important;
  border-color: var(--admin-blue-dark) !important;
}

.btn-danger,
.danger,
button.danger {
  background: var(--admin-red) !important;
  color: #ffffff !important;
}

.btn-success,
.success,
button.success {
  background: var(--admin-green) !important;
  color: #ffffff !important;
}

.btn-secondary,
.secondary,
button.secondary {
  background: #ffffff !important;
  color: #374151 !important;
  border-color: var(--admin-border) !important;
}

/* 标签状态 */
.badge,
.tag,
.status,
.label {
  border-radius: 999px !important;
  font-weight: 600 !important;
}

/* 后台登录页 */
.admin-login,
.login-page,
.login-box,
.login-card {
  background: var(--admin-panel) !important;
  color: var(--admin-text) !important;
  border: 1px solid var(--admin-border) !important;
  border-radius: 18px !important;
  box-shadow: 0 18px 48px rgba(15, 23, 42, .10) !important;
}

/* 避免旧背景图、旧渐变压住 */
[style*="linear-gradient"],
[style*="background: linear-gradient"],
[style*="background-image"] {
  background-image: none !important;
}

/* 页面间距更舒服 */
.admin-content,
.main-content,
.content-area {
  padding: 22px !important;
}

/* 滚动条 */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 999px;
}

::-webkit-scrollbar-track {
  background: #f1f5f9;
}


/* ADMIN_SIDEBAR_CONTRAST_FIX_V1
   修复后台左侧框架看不清问题：
   统一侧边栏为白色背景，菜单为浅色卡片，文字深色，当前项蓝底白字
*/

/* 左侧整体框架改成干净白色 */
body .admin-sidebar,
body .sidebar,
body .side-menu,
body .left-menu,
body .admin-menu,
body aside,
body nav.admin-sidebar {
  background: #ffffff !important;
  color: #0f172a !important;
  border-right: 1px solid #e5e7eb !important;
  box-shadow: 8px 0 24px rgba(15, 23, 42, .04) !important;
}

/* 顶部 logo 标题区域 */
body .admin-sidebar h1,
body .admin-sidebar h2,
body .admin-sidebar h3,
body .sidebar h1,
body .sidebar h2,
body .sidebar h3,
body .admin-menu h1,
body .admin-menu h2,
body .admin-menu h3,
body aside h1,
body aside h2,
body aside h3 {
  color: #0f172a !important;
  text-shadow: none !important;
}

body .admin-sidebar small,
body .sidebar small,
body .admin-menu small,
body aside small,
body .admin-sidebar .subtitle,
body .sidebar .subtitle,
body .admin-menu .subtitle {
  color: #64748b !important;
  opacity: 1 !important;
}

/* 所有后台侧边栏菜单，先统一成浅色卡片深色文字 */
body .admin-sidebar a,
body .sidebar a,
body .side-menu a,
body .left-menu a,
body .admin-menu a,
body aside a[href^="/admin"],
body aside a[href="/"],
body [class*="sidebar"] a[href^="/admin"],
body [class*="menu"] a[href^="/admin"],
body .admin-sidebar button,
body .sidebar button,
body .side-menu button,
body .left-menu button,
body .admin-menu button,
body .admin-sidebar .menu-item,
body .sidebar .menu-item,
body .side-menu .menu-item,
body .left-menu .menu-item,
body .admin-menu .menu-item,
body .admin-sidebar .nav-item,
body .sidebar .nav-item,
body .side-menu .nav-item,
body .left-menu .nav-item,
body .admin-menu .nav-item {
  background: #f8fafc !important;
  background-image: none !important;
  color: #1f2937 !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

/* 菜单里面的图标、文字、span 全部跟随当前颜色，避免白字残留 */
body .admin-sidebar a *,
body .sidebar a *,
body .side-menu a *,
body .left-menu a *,
body .admin-menu a *,
body aside a[href^="/admin"] *,
body aside a[href="/"] *,
body [class*="sidebar"] a[href^="/admin"] *,
body [class*="menu"] a[href^="/admin"] *,
body .admin-sidebar button *,
body .sidebar button *,
body .side-menu button *,
body .left-menu button *,
body .admin-menu button *,
body .admin-sidebar .menu-item *,
body .sidebar .menu-item *,
body .side-menu .menu-item *,
body .left-menu .menu-item *,
body .admin-menu .menu-item *,
body .admin-sidebar .nav-item *,
body .sidebar .nav-item *,
body .side-menu .nav-item *,
body .left-menu .nav-item *,
body .admin-menu .nav-item * {
  color: inherit !important;
  opacity: 1 !important;
  text-shadow: none !important;
  filter: none !important;
}

/* 鼠标经过，蓝色文字但仍然清晰 */
body .admin-sidebar a:hover,
body .sidebar a:hover,
body .side-menu a:hover,
body .left-menu a:hover,
body .admin-menu a:hover,
body aside a[href^="/admin"]:hover,
body aside a[href="/"]:hover,
body [class*="sidebar"] a[href^="/admin"]:hover,
body [class*="menu"] a[href^="/admin"]:hover,
body .admin-sidebar button:hover,
body .sidebar button:hover,
body .side-menu button:hover,
body .left-menu button:hover,
body .admin-menu button:hover {
  background: #eff6ff !important;
  background-image: none !important;
  color: #1d4ed8 !important;
  border-color: #bfdbfe !important;
}

/* 当前选中项，统一蓝色底白字 */
body .admin-sidebar a.active,
body .sidebar a.active,
body .side-menu a.active,
body .left-menu a.active,
body .admin-menu a.active,
body aside a.active,
body aside a[aria-current="page"],
body [class*="sidebar"] a.active,
body [class*="menu"] a.active,
body .admin-sidebar .active,
body .sidebar .active,
body .side-menu .active,
body .left-menu .active,
body .admin-menu .active,
body .admin-sidebar .current,
body .sidebar .current,
body .side-menu .current,
body .left-menu .current,
body .admin-menu .current,
body .admin-sidebar .selected,
body .sidebar .selected,
body .side-menu .selected,
body .left-menu .selected,
body .admin-menu .selected {
  background: #2563eb !important;
  background-image: none !important;
  color: #ffffff !important;
  border-color: #2563eb !important;
  box-shadow: 0 10px 22px rgba(37, 99, 235, .18) !important;
}

/* 当前项内部文字也强制白色 */
body .admin-sidebar a.active *,
body .sidebar a.active *,
body .side-menu a.active *,
body .left-menu a.active *,
body .admin-menu a.active *,
body aside a.active *,
body aside a[aria-current="page"] *,
body [class*="sidebar"] a.active *,
body [class*="menu"] a.active *,
body .admin-sidebar .active *,
body .sidebar .active *,
body .side-menu .active *,
body .left-menu .active *,
body .admin-menu .active *,
body .admin-sidebar .current *,
body .sidebar .current *,
body .side-menu .current *,
body .left-menu .current *,
body .admin-menu .current *,
body .admin-sidebar .selected *,
body .sidebar .selected *,
body .side-menu .selected *,
body .left-menu .selected *,
body .admin-menu .selected * {
  color: #ffffff !important;
}

/* 底部返回首页按钮，深色底白字，保证清楚 */
body .admin-sidebar a[href="/"],
body .sidebar a[href="/"],
body .side-menu a[href="/"],
body .left-menu a[href="/"],
body .admin-menu a[href="/"],
body aside a[href="/"] {
  background: #475569 !important;
  color: #ffffff !important;
  border-color: #475569 !important;
}

body .admin-sidebar a[href="/"] *,
body .sidebar a[href="/"] *,
body .side-menu a[href="/"] *,
body .left-menu a[href="/"] *,
body .admin-menu a[href="/"] *,
body aside a[href="/"] * {
  color: #ffffff !important;
}

/* 退出登录按钮，浅红底深红字，避免白底看不清 */
body .admin-sidebar a[href*="logout"],
body .sidebar a[href*="logout"],
body .side-menu a[href*="logout"],
body .left-menu a[href*="logout"],
body .admin-menu a[href*="logout"],
body aside a[href*="logout"],
body .admin-sidebar button.logout,
body .sidebar button.logout,
body .admin-menu button.logout {
  background: #fef2f2 !important;
  color: #b91c1c !important;
  border-color: #fecaca !important;
}

body .admin-sidebar a[href*="logout"] *,
body .sidebar a[href*="logout"] *,
body .side-menu a[href*="logout"] *,
body .left-menu a[href*="logout"] *,
body .admin-menu a[href*="logout"] *,
body aside a[href*="logout"] * {
  color: #b91c1c !important;
}

/* 防止旧的透明度和渐变继续影响可读性 */
body .admin-sidebar .disabled,
body .sidebar .disabled,
body .side-menu .disabled,
body .left-menu .disabled,
body .admin-menu .disabled,
body aside .disabled {
  opacity: 1 !important;
  color: #64748b !important;
  background: #f1f5f9 !important;
  border-color: #e5e7eb !important;
}

/* ADMIN_EXTRA_LINKS_IN_NAV_V1
   统一左侧菜单下方三个独立入口样式。
*/
body .spaNav .spaNavExtraDivider{
  height:16px !important;
}
body .spaNav a.spaNavLink{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  width:calc(100% - 16px) !important;
  margin:8px 8px !important;
  padding:13px 14px !important;
  border-radius:10px !important;
  border:1px solid #e5e7eb !important;
  background:#ffffff !important;
  color:#111827 !important;
  text-decoration:none !important;
  font-weight:900 !important;
  box-sizing:border-box !important;
}
body .spaNav a.spaNavLink:hover{
  background:#eef4ff !important;
  border-color:#bfdbfe !important;
  color:#2563eb !important;
}
body .spaNav a.spaNavLink span{
  color:inherit !important;
  font-weight:900 !important;
}
