/* ===== 考芽刷题后台 - 全局视觉增强 ===== */
:root {
  --kya-blue: #2563eb;
  --kya-sky: #168cff;
  --kya-green: #10b981;
  --kya-red: #ef4444;
  --kya-orange: #f97316;
  --kya-purple: #8b5cf6;
  --kya-dark: #071b3a;
  --kya-sub: #64748b;
  --kya-bg: #f3f7fb;
  --kya-card: #ffffff;
  --kya-line: #e5edf6;
  --kya-side: #061b3c;
}

* {
  box-sizing: border-box;
}

html,
body {
  background: var(--kya-bg) !important;
  color: var(--kya-dark) !important;
  font-family: "Microsoft YaHei", "PingFang SC", "Helvetica Neue", Arial, sans-serif !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* 侧边栏统一 */
.sidebar,
.admin-sidebar,
aside,
.side,
.left-menu {
  background: linear-gradient(180deg, #061b3c 0%, #082f6f 100%) !important;
  box-shadow: 8px 0 30px rgba(7, 27, 58, .18) !important;
}

.sidebar::before,
.admin-sidebar::before,
aside::before,
.sidebar::after,
.admin-sidebar::after,
aside::after {
  content: none !important;
  display: none !important;
}

.sidebar h1,
.sidebar h2,
.sidebar h3,
.admin-sidebar h1,
.admin-sidebar h2,
.admin-sidebar h3,
aside h1,
aside h2,
aside h3,
.logo,
.brand,
.brand-title {
  color: #fff !important;
  font-weight: 900 !important;
  letter-spacing: .02em !important;
}

/* 菜单 */
.sidebar a,
.admin-sidebar a,
aside a,
.nav-item,
.menu-item {
  border-radius: 12px !important;
  transition: all .18s ease !important;
  font-weight: 700 !important;
}

.sidebar a:hover,
.admin-sidebar a:hover,
aside a:hover,
.nav-item:hover,
.menu-item:hover {
  background: rgba(255,255,255,.08) !important;
}

.sidebar a.active,
.admin-sidebar a.active,
aside a.active,
.sidebar .active,
.admin-sidebar .active,
aside .active,
.nav-item.active,
.menu-item.active {
  background: linear-gradient(90deg, #2563eb, #168cff) !important;
  color: #fff !important;
  box-shadow: 0 8px 18px rgba(37, 99, 235, .28) !important;
}

/* 主体布局 */
main,
.content,
.main,
.page,
.admin-main,
.container {
  background: var(--kya-bg) !important;
}

/* 标题 */
h1,
.page-title {
  color: var(--kya-dark) !important;
  font-weight: 900 !important;
  letter-spacing: -.04em !important;
}

h2,
h3,
.card-title,
.panel-title {
  color: var(--kya-dark) !important;
  font-weight: 900 !important;
}

/* 卡片 */
.card,
.stat-card,
.panel,
.table-card,
.box,
.section,
.module,
.form-card {
  background: #fff !important;
  border: 1px solid rgba(226,232,240,.9) !important;
  border-radius: 18px !important;
  box-shadow: 0 10px 28px rgba(15,31,61,.06) !important;
}

/* 统计卡 */
.stat-card,
.dashboard-card {
  min-height: 110px;
}

.stat-card .num,
.stat-card .number,
.dashboard-card .num,
.dashboard-card .number {
  font-size: 34px !important;
  font-weight: 900 !important;
  color: var(--kya-dark) !important;
}

/* 表格 */
table {
  width: 100%;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  font-size: 14px !important;
  overflow: hidden;
}

thead th,
th {
  background: #f8fafc !important;
  color: var(--kya-dark) !important;
  font-weight: 900 !important;
  height: 52px !important;
  white-space: nowrap;
}

td,
th {
  border-bottom: 1px solid #edf2f7 !important;
  padding: 13px 15px !important;
}

tbody tr:hover td {
  background: #fbfdff !important;
}

/* 表单 */
input,
select,
textarea {
  border-radius: 10px !important;
  border: 1px solid #dbe4ef !important;
  font-family: inherit !important;
  outline: none !important;
}

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

/* 按钮 */
button,
.btn,
.button,
a.btn {
  border-radius: 10px !important;
  font-weight: 800 !important;
  cursor: pointer;
}

.btn-primary,
.primary,
button.primary,
button[type="submit"],
.confirm-btn,
.save-btn {
  background: linear-gradient(90deg, #168cff, #2563eb) !important;
  color: #fff !important;
  border: none !important;
  box-shadow: 0 8px 20px rgba(37,99,235,.2) !important;
}

.btn-success,
.success,
.green-btn {
  background: #10b981 !important;
  color: #fff !important;
}

.btn-danger,
.danger,
.red-btn {
  background: #ef4444 !important;
  color: #fff !important;
}

.btn-warning,
.warning,
.orange-btn {
  background: #f97316 !important;
  color: #fff !important;
}

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

/* 顶栏 */
.topbar,
.header,
.admin-header {
  background: rgba(255,255,255,.9) !important;
  backdrop-filter: blur(12px);
  border-bottom: 1px solid #e8eef6 !important;
}

/* 登录页 */
.login-box,
.login-card {
  background: #fff !important;
  border-radius: 22px !important;
  box-shadow: 0 18px 44px rgba(15,31,61,.14) !important;
  border: 1px solid rgba(226,232,240,.9) !important;
}

/* 页面说明文字 */
.sub,
.subtitle,
.desc,
.description,
.page-sub {
  color: var(--kya-sub) !important;
}

/* 让旧页面按钮颜色更统一 */
a[href*="banks"],
a[href*="chapters"],
a[href*="questions"],
a[href*="activation"],
a[href*="users"],
a[href*="materials"],
a[href*="articles"] {
  text-decoration: none;
}

/* 老页面里的大块白底统一 */
.white-card,
.content-card,
.data-card {
  background: #fff !important;
  border-radius: 18px !important;
  box-shadow: 0 10px 28px rgba(15,31,61,.06) !important;
  border: 1px solid rgba(226,232,240,.9) !important;
}
