/* ==================================================================
   qktgzn v2.1 设计系统（2026-09-21 全面重构版）
   极简 · 白底浅灰分层 · 单一主色 · 内容优先
   在 bootstrap 4.3.1 与 jfinal-com-4.0.css 之后加载
   ================================================================== */

:root {
  --qk-primary: #2563eb;
  --qk-primary-dark: #1d4ed8;
  --qk-primary-soft: #eff4ff;
  --qk-accent: #f59e0b;
  --qk-text: #1e293b;
  --qk-text-2: #64748b;
  --qk-text-3: #94a3b8;
  --qk-border: #e8edf4;
  --qk-bg: #f6f8fb;
  --qk-card: #ffffff;
  --qk-radius: 14px;
  --qk-radius-sm: 9px;
  --qk-shadow: 0 1px 2px rgba(15, 40, 80, .05), 0 1px 6px rgba(15, 40, 80, .04);
  --qk-shadow-lg: 0 8px 28px rgba(15, 40, 80, .10);
}

/* ================= 全局 ================= */
html { scroll-behavior: smooth; }
body {
  background: var(--qk-bg) !important;
  color: var(--qk-text);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC",
    "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  font-size: 15px;
}
a { color: var(--qk-primary); transition: color .15s ease; }
a:hover { color: var(--qk-primary-dark); text-decoration: none; }
h1, h2, h3, h4, h5 { color: var(--qk-text); font-weight: 600; }

/* ================= 页头（修复白字隐身） ================= */
.jf-header {
  background: rgba(255, 255, 255, .92) !important;
  backdrop-filter: saturate(1.4) blur(10px);
  border-bottom: 1px solid var(--qk-border);
  box-shadow: 0 1px 10px rgba(15, 40, 80, .04);
}
.jf-header .container > .row { align-items: center; }

/* logo: 原图按高度等比呈现 */
.jf-logo img { height: 38px; width: auto; display: block; }

/* 导航文字: 深色可读(原为白字, 白底后隐身) */
.jf-header-navs > li > a {
  color: var(--qk-text) !important;
  font-size: 15.5px;
  font-weight: 500;
  padding: 8px 14px !important;
  border-radius: var(--qk-radius-sm);
  line-height: 34px;
}
.jf-header-navs > li > a:hover,
.jf-header-navs > li.active > a,
.jf-header-navs > li.open > a {
  color: var(--qk-primary) !important;
  background: var(--qk-primary-soft) !important;
}
/* 下拉菜单 */
.dropdown-menu {
  border: 1px solid var(--qk-border);
  border-radius: var(--qk-radius-sm);
  box-shadow: var(--qk-shadow-lg);
  padding: 6px;
}
.dropdown-item {
  border-radius: 6px;
  padding: 8px 12px;
  color: var(--qk-text);
}
.dropdown-item:hover { background: var(--qk-primary-soft); color: var(--qk-primary); }

/* 搜索框 */
.jf-header-searchbox .input-group { width: 240px; }
.jf-header-searchbox .form-control {
  border-radius: 22px;
  background: var(--qk-bg);
  border: 1px solid transparent;
  height: 38px;
  font-size: 14px;
}
.jf-header-searchbox .form-control:focus {
  background: #fff;
  border-color: var(--qk-primary);
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .13);
}

/* 登录/注册入口 */
.jf-header-user a { color: var(--qk-text-2) !important; font-weight: 500; }
.jf-header-user a:hover { color: var(--qk-primary) !important; }

/* 公告条: 融入版面, 弱化黄底 */
.alert-warning {
  background: #fffbeb !important;
  border: none !important;
  border-bottom: 1px solid #fdeebc !important;
  color: #92700c !important;
  font-size: 13.5px;
  border-radius: 0 !important;
  margin-bottom: 0 !important;
}

/* ================= 布局容器 ================= */
.jf-body { padding-top: 20px; }
.jf-page-main { margin-bottom: 28px; }

/* ================= 卡片 ================= */
.jf-panel {
  background: var(--qk-card);
  border: 1px solid var(--qk-border);
  border-radius: var(--qk-radius);
  box-shadow: var(--qk-shadow);
  overflow: hidden;
  margin-bottom: 22px;
}
.jf-panel-header {
  padding: 15px 20px 13px;
  border-bottom: 1px solid var(--qk-border);
  background: #fff;
}
.jf-panel-header h1,
.jf-panel-header h2 {
  font-size: 16.5px;
  font-weight: 700;
  margin: 0;
  display: inline-block;
  padding-left: 11px;
  border-left: 3px solid var(--qk-primary);
  line-height: 1.3 !important;
}
.jf-panel-header .jf-more {
  font-size: 13px;
  color: var(--qk-text-3);
  font-weight: 400;
}
.jf-panel-header .jf-more:hover { color: var(--qk-primary); }
.jf-panel-content,
.jf-panel-body { padding: 18px 20px; }

/* ================= 列表条目（分享/反馈/评价） ================= */
.jf-common-list .jf-common-item {
  border-bottom: 1px solid #f1f5f9;
  padding: 14px 6px;
  border-radius: var(--qk-radius-sm);
  transition: background .15s ease;
}
.jf-common-list .jf-common-item:last-child { border-bottom: none; }
.jf-common-list .jf-common-item:hover { background: #f8fafd; }
.jf-common-item .jf-common-logo img {
  border-radius: 10px;
  border: 1px solid var(--qk-border);
  background: #fff;
}
.jf-common-item .jf-common-name a {
  font-weight: 600;
  color: var(--qk-text);
  font-size: 15px;
  line-height: 1.5;
}
.jf-common-item .jf-common-name a:hover { color: var(--qk-primary); }
.jf-common-item .jf-common-name {
  line-height: 1.5 !important;
  height: auto !important;
}
.jf-common-other { color: var(--qk-text-3); font-size: 13px; }
.jf-common-other .pull-left { margin-right: 12px; }

/* 列表条目标题原为 h1——语义修复但不改观感 */
.jf-common-name.h2, li h1.jf-common-name, h1.jf-common-name {
  font-size: 15px;
  font-weight: 600;
  margin: 0;
}

/* ================= 按钮 ================= */
.btn {
  border-radius: var(--qk-radius-sm);
  font-weight: 500;
  padding: .5rem 1.1rem;
  transition: all .15s ease;
}
.btn:focus { box-shadow: 0 0 0 3px rgba(37, 99, 235, .18); }
.btn-primary {
  background: var(--qk-primary);
  border-color: var(--qk-primary);
}
.btn-primary:hover, .btn-primary:focus {
  background: var(--qk-primary-dark);
  border-color: var(--qk-primary-dark);
  box-shadow: 0 4px 14px rgba(37, 99, 235, .28);
}
.btn-default, .btn-secondary {
  background: #fff;
  border: 1px solid var(--qk-border);
  color: var(--qk-text);
}
.btn-default:hover, .btn-secondary:hover {
  border-color: var(--qk-primary);
  color: var(--qk-primary);
  background: var(--qk-primary-soft);
}
.btn-sm { padding: .3rem .8rem; font-size: 13px; }

/* ================= 徽章 ================= */
.badge {
  border-radius: 20px;
  font-weight: 500;
  padding: .32em .75em;
  font-size: 11.5px;
}
.badge-primary, .badge-info { background: var(--qk-primary); }
.badge-success { background: #16a34a; }
.badge-danger { background: #dc2626; }
.label { border-radius: 6px; font-weight: 500; padding: .3em .6em; }

/* ================= 表格 ================= */
.table { color: var(--qk-text); margin-bottom: 0; }
.table thead th {
  background: #f8fafc;
  color: var(--qk-text-2);
  font-weight: 600;
  font-size: 13.5px;
  border-bottom: 1px solid var(--qk-border);
  white-space: nowrap;
  padding: .7rem .8rem;
}
.table td, .table th { padding: .68rem .8rem; vertical-align: middle; border-color: #f1f5f9; }
.table-striped tbody tr:nth-of-type(odd) { background-color: #fbfcfe; }
.table-hover tbody tr:hover { background-color: #f2f7ff; }

/* ================= 表单 ================= */
.form-control {
  border-radius: var(--qk-radius-sm);
  border-color: var(--qk-border);
  color: var(--qk-text);
}
.form-control:focus {
  border-color: var(--qk-primary);
  box-shadow: 0 0 0 3px rgba(37, 99, 235, .13);
}
.input-group-text { background: var(--qk-bg); border-color: var(--qk-border); }

/* ================= 中文期刊详情页 ================= */
.tab-pane ul li { line-height: 1.95 !important; font-size: 14.5px !important; border: none; }
.tab-pane ul li span:first-child { color: var(--qk-text-2); }
.tab-pane p { line-height: 1.9 !important; }
.nav-tabs { border-bottom: 1px solid var(--qk-border); gap: 2px; }
.nav-tabs .nav-link {
  border: none;
  color: var(--qk-text-2);
  font-weight: 500;
  padding: 9px 16px;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  margin-bottom: -1px;
}
.nav-tabs .nav-link:hover { color: var(--qk-primary); border-bottom-color: #cbd5e1; background: transparent; }
.nav-tabs .nav-link.active {
  color: var(--qk-primary);
  background: transparent;
  border: none;
  border-bottom: 2px solid var(--qk-primary);
  font-weight: 600;
}

/* ================= 英文期刊页 ================= */
[data-k] .badge { font-size: 11px; }
.jf-panel-content p { line-height: 1.85; }

/* ================= hexin 核心期刊页 ================= */
.user {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(290px, 1fr));
  gap: 12px;
}
.user li a {
  display: block;
  background: var(--qk-card);
  border: 1px solid var(--qk-border);
  border-radius: var(--qk-radius-sm);
  padding: 13px 15px;
  box-shadow: var(--qk-shadow);
  transition: box-shadow .2s ease, transform .12s ease;
}
.user li a:hover {
  box-shadow: var(--qk-shadow-lg);
  transform: translateY(-2px);
  text-decoration: none;
}
.user .head-img { display: none; }
.user .name { color: var(--qk-text) !important; font-weight: 600; font-size: 15px; }
.user .motto {
  color: var(--qk-text-2);
  font-size: 13px;
  margin: 5px 0 0;
  line-height: 1.65;
  height: auto !important;
}
.btn-list { display: inline-flex; gap: 8px; list-style: none; padding: 0; margin: 0 0 4px; }
.btn-list li {
  border-radius: 20px;
  padding: 5px 18px;
  cursor: pointer;
  color: var(--qk-text-2);
  background: #fff;
  border: 1px solid var(--qk-border);
  transition: all .15s ease;
}
.btn-list li.active { background: var(--qk-primary); border-color: var(--qk-primary); color: #fff; }
.btn-list li:hover:not(.active) { border-color: var(--qk-primary); color: var(--qk-primary); }
.hexin-topbar, .wrapper > div[style*="border-bottom"] { font-size: 14px; }

/* ================= 搜索页 /q ================= */
.jf-panel .form-control[name="keyword"],
.jf-panel .form-control[name="q"] { height: 44px; font-size: 15px; }

/* ================= 分页 ================= */
.pagination .page-link, #@paginate a {
  border-radius: var(--qk-radius-sm) !important;
  margin: 0 3px;
  border-color: var(--qk-border);
  color: var(--qk-primary);
}
.pagination .active .page-link, .pagination .active a {
  background: var(--qk-primary);
  border-color: var(--qk-primary);
  color: #fff;
}

/* ================= 侧栏 ================= */
.jf-sidebar .jf-panel { box-shadow: var(--qk-shadow); }
.jf-sidebar .jf-panel-header h1,
.jf-sidebar .jf-panel-header h2 { font-size: 15px; }
/* 侧栏红字教程链接弱化为常规链接(极简, 去噪) */
.jf-page-side a[style*="red"] { color: var(--qk-primary) !important; font-weight: 400; }

/* ================= 页脚 ================= */
.jf-footer, footer {
  background: #fff;
  border-top: 1px solid var(--qk-border);
  color: var(--qk-text-3);
  font-size: 13.5px;
  padding: 22px 0;
}

/* ================= 细节 ================= */
img { max-width: 100%; }
::selection { background: rgba(37, 99, 235, .16); }
/* 去掉老的边框重装饰 */
.jf-panel-header::before, .jf-panel-header::after { display: none; }

/* 小屏 */
@media (max-width: 768px) {
  .jf-panel-header { padding: 13px 15px; }
  .jf-panel-content, .jf-panel-body { padding: 14px 15px; }
  .jf-header-searchbox .input-group { width: 160px; }
}
