/* ==========================================================================
   管理后台 — 视觉覆盖层（原 admin.css 负责布局，这里只改外观）
   --------------------------------------------------------------------------
   不写 display / width / height / padding / margin / position / font-size，
   版式与尺寸完全沿用原版 admin.css：248px 固定侧栏 + 顶栏 + 视图切换。
   ========================================================================== */

:root {
  --a-ink:        #16181d;
  --a-ink-2:      #39404b;
  --a-ink-3:      #6b7482;
  --a-ink-4:      #9aa3b0;
  --a-bg:         #f4f5f6;
  --a-surface:    #ffffff;
  --a-surface-2:  #f8f9fa;
  --a-line:       #d9dde3;
  --a-line-2:     #e7eaee;
  --a-accent:     #0b6b53;
  --a-accent-2:   #0e8a6a;
  --a-accent-bg:  #e7f2ee;
  --a-accent-line:#b7ddd2;
  --a-danger:     #b42318;
  --a-danger-bg:  #fbeae8;
  --a-warn:       #a15c07;
  --a-warn-bg:    #fbf1e2;
  --a-r:          2px;
}

body {
  background: var(--a-bg) !important;
  color: var(--a-ink) !important;
}

/* ------------------------------------------------------------ 侧栏 */
.sidebar {
  background: var(--a-ink) !important;
  background-image: none !important;
  color: #98a1ae !important;
}
.brand { color: #fff !important; border-bottom-color: #262c35 !important; }
.brand-icon {
  background: var(--a-accent) !important;
  background-image: none !important;
  border-radius: var(--a-r) !important;
  color: #fff !important;
}
.nav-item {
  color: #98a1ae !important;
  border-radius: var(--a-r) !important;
  background: transparent !important;
}
.nav-item:hover { background: #21262e !important; color: #e6e9ee !important; }
.nav-item.active {
  background: rgba(14, 138, 106, .16) !important;
  color: #7fe0c4 !important;
}
.nav-item small { color: #6b7482 !important; }
.nav-item.active small { color: #7fe0c4 !important; }
.nav-group { color: #5f6773 !important; }
.sidebar-foot { color: #6b7482 !important; border-top-color: #262c35 !important; }

/* ------------------------------------------------------------ 顶栏与容器 */
.topbar {
  background: var(--a-surface) !important;
  border-bottom-color: var(--a-line) !important;
}
.panel, .db-card, .metric, .import-box, .mini-log,
.table-wrap, .status-list, .modal, .db-table {
  background: var(--a-surface) !important;
  background-image: none !important;
  border: 1px solid var(--a-line) !important;
  border-radius: var(--a-r) !important;
  box-shadow: none !important;
}
.db-header, .section-head { border-bottom-color: var(--a-line-2) !important; }
.section-head h2, .db-header h3 { color: var(--a-ink) !important; }
.metric { border-left-color: var(--a-ink) !important; }

/* ------------------------------------------------------------ 表格 */
table.db-table thead th,
.db-table thead th {
  background: var(--a-ink) !important;
  background-image: none !important;
  color: #e8ebf0 !important;
  border-color: #2b3038 !important;
}
table.db-table td,
.db-table td {
  border-color: var(--a-line-2) !important;
  color: var(--a-ink) !important;
}
.db-table tbody tr:hover td { background: #f3f7f5 !important; }
.cell-clip { color: var(--a-ink) !important; }
.mono { color: var(--a-ink-2) !important; }

/* ------------------------------------------------------------ 标签与状态 */
.pill {
  background: var(--a-surface-2) !important;
  border-color: var(--a-line) !important;
  color: var(--a-ink-2) !important;
  border-radius: var(--a-r) !important;
}
.pill.ok { background: var(--a-accent-bg) !important; border-color: var(--a-accent-line) !important; color: var(--a-accent) !important; }
.pill.warn { background: var(--a-warn-bg) !important; border-color: #ecd7b6 !important; color: var(--a-warn) !important; }
.pill.bad { background: var(--a-danger-bg) !important; border-color: #e8c4c0 !important; color: var(--a-danger) !important; }
.important { color: var(--a-danger) !important; }
.warn { color: var(--a-warn) !important; }

/* ------------------------------------------------------------ 按钮 */
.btn, .ghost, .page-btn {
  border-radius: var(--a-r) !important;
  border-color: var(--a-line) !important;
}
.ghost, .page-btn {
  background: var(--a-surface) !important;
  color: var(--a-ink-2) !important;
}
.ghost:hover, .page-btn:hover { border-color: var(--a-accent) !important; color: var(--a-accent) !important; }
.toolbar button, .action-strip button, .import-box button,
.filterbar button, .db-tools button, .modal button, .quick-actions button {
  background: var(--a-surface) !important;
  border: 1px solid var(--a-line) !important;
  border-radius: var(--a-r) !important;
  color: var(--a-ink) !important;
}
.toolbar button:hover, .action-strip button:hover, .import-box button:hover,
.filterbar button:hover, .db-tools button:hover, .modal button:hover,
.quick-actions button:hover {
  border-color: var(--a-accent) !important;
  color: var(--a-accent) !important;
}
button[type="submit"], .btn-primary, .btn.primary, .primary {
  background: var(--a-accent) !important;
  border-color: var(--a-accent) !important;
  color: #fff !important;
}
button[type="submit"]:hover, .btn-primary:hover {
  background: var(--a-accent-2) !important;
  border-color: var(--a-accent-2) !important;
}

/* ------------------------------------------------------------ 表单 */
input, select, textarea {
  border-color: var(--a-line) !important;
  border-radius: var(--a-r) !important;
  background: var(--a-surface) !important;
  color: var(--a-ink) !important;
}
input:focus, select:focus, textarea:focus {
  border-color: var(--a-accent) !important;
  box-shadow: 0 0 0 3px rgba(11, 107, 83, .10) !important;
}
.form-grid label, .import-box label { color: var(--a-ink-2) !important; }

/* 开关 */
.switch input:checked + .slider,
.slider.active { background: var(--a-accent) !important; }
.slider { background: #cfd5dd !important; }

/* ------------------------------------------------------------ 弹窗 */
.modal-overlay { background: rgba(22, 24, 29, .55) !important; }
.modal {
  border-top: 3px solid var(--a-accent) !important;
  box-shadow: 0 24px 60px rgba(22, 24, 29, .30) !important;
}
.modal-header { border-bottom-color: var(--a-line-2) !important; }
.modal-title { color: var(--a-ink) !important; }
.modal-close { color: var(--a-ink-3) !important; background: transparent !important; }
.modal-close:hover { color: var(--a-danger) !important; }

/* ------------------------------------------------------------ 日志与结果 */
.result, .mini-log, .log-grid {
  background: #fafbfc !important;
  border-color: var(--a-line) !important;
  border-radius: var(--a-r) !important;
  color: var(--a-ink-2) !important;
}
.status-list li, .link-list li { border-bottom-color: var(--a-line-2) !important; }

/* 去掉遗留渐变 */
.brand-icon, .sidebar, .panel, .db-card, .metric, .modal, .btn {
  background-image: none !important;
}

/* ------------------------------------------------------------ 登录页（同文件复用） */
.login-card {
  background: var(--a-surface) !important;
  border: 1px solid var(--a-line) !important;
  border-top: 3px solid var(--a-accent) !important;
  border-radius: var(--a-r) !important;
  box-shadow: 0 24px 60px rgba(22, 24, 29, .18) !important;
}
.login-card .logo { color: var(--a-ink) !important; }
