/* ============ 字词典网 · 全局公共样式 ============ */
/* 仅包含各页面真正共用的基础样式；页面专属样式见 index.css / cidian.css */
:root {
  --bg: #faf7f0;        /* 宣纸米白 */
  --panel: #fffdf8;     /* 卡片底 */
  --ink: #3b3428;       /* 墨色 */
  --ink-light: #8a7f6a; /* 淡墨 */
  --red: #9e2f2f;       /* 印章朱砂 */
  --line: #e8e0cf;      /* 边框线 */
  --hover: #f4ede0;
}
* { margin: 0; padding: 0; box-sizing: border-box; }
body {
  background: var(--bg);
  color: var(--ink);
  font: 15px/1.8 "Noto Serif SC", "Source Han Serif SC", "STSong", "SimSun", serif;
}
a { color: var(--ink); text-decoration: none; }
a:hover { color: var(--red); }
.wrap { width: 1000px; max-width: 94%; margin: 0 auto; }

/* ---------- 头部 ---------- */
.site-header { border-bottom: 2px solid var(--ink); background: var(--panel); }
.head-inner { display: flex; align-items: center; gap: 28px; height: 66px; }
.logo { display: flex; align-items: center; gap: 10px; font-size: 22px; font-weight: 700; letter-spacing: 2px; }
.seal {
  display: inline-flex; align-items: center; justify-content: center;
  width: 34px; height: 34px; background: var(--red); color: #fff;
  font-size: 19px; border-radius: 4px; letter-spacing: 0;
}
.nav { display: flex; gap: 4px; }
.nav a { padding: 6px 16px; font-size: 16px; letter-spacing: 1px; border-radius: 3px; }
.nav a:hover { background: var(--hover); }
.nav a.on { color: var(--red); font-weight: 700; }
.nav-search { margin-left: auto; display: flex; }
.nav-search select {
  width: 72px; height: 34px; border: 1px solid var(--line); border-right: none;
  background: #fff; font: inherit; font-size: 14px; outline: none; cursor: pointer;
  border-radius: 3px 0 0 3px; padding: 0 6px;
}
.nav-search select:focus { border-color: var(--red); }
.nav-search input {
  width: 170px; height: 34px; border: 1px solid var(--line); border-right: none;
  background: #fff; padding: 0 12px; font: inherit; font-size: 14px; outline: none;
}
.nav-search input:focus { border-color: var(--red); }
.nav-search button {
  height: 34px; padding: 0 16px; border: 1px solid var(--red); background: var(--red);
  color: #fff; font: inherit; font-size: 14px; cursor: pointer; border-radius: 0 3px 3px 0;
}

/* ---------- 面板通用 ---------- */
.panel {
  background: var(--panel); border: 1px solid var(--line); border-radius: 4px;
  padding: 22px 26px; margin-top: 22px;
}
.panel-title {
  font-size: 18px; font-weight: 700; letter-spacing: 1px; margin-bottom: 14px;
  padding-left: 12px; border-left: 4px solid var(--red);
}
.panel-title .more { float: right; font-size: 13px; font-weight: 400; color: var(--ink-light); }

/* ---------- 面板说明文字 ---------- */
.panel-desc { font-size: 14px; padding: 6px 2px; }

/* ---------- 面包屑 ---------- */
.crumbs { margin: 18px 0 0; font-size: 13px; color: var(--ink-light); }
.crumbs a { color: var(--ink-light); }
.crumbs a:hover { color: var(--red); }

/* ---------- 详情页通用（词典/字典/成语详情共用） ---------- */
.sec-title {
  font-size: 19px; font-weight: 700; letter-spacing: 1px; margin: 26px 0 12px;
  padding-left: 12px; border-left: 4px solid var(--red);
}
.sec-title.qa { color: var(--ink); }
.detail-body ol, .detail-body ul { padding-left: 26px; }
.detail-body li { margin: 6px 0; }
.detail-body p { margin: 6px 0; }
.zd-meta { margin-top: 8px; font-size: 13px; color: var(--ink-light); }
.zd-meta span { margin-right: 14px; }
/* 朗读按钮（当前页 JS 播放，不跳转） */
.audio-btn {
  display: inline-flex; align-items: center; gap: 4px; padding: 1px 10px;
  border: 1px solid var(--red); border-radius: 14px; font-size: 13px;
  color: var(--red) !important; cursor: pointer; user-select: none;
}
.audio-btn:hover { background: var(--red); color: #fff !important; }
.audio-btn.playing { opacity: 0.55; }

/* ---------- 详情页动态示意图 ---------- */.dimg { text-align: center; margin-top: 18px; }
.dimg img {
  width: 300px; height: 200px; border: 1px solid var(--line); border-radius: 4px;
  background: var(--panel);
}

/* ---------- 简洁词列表（详情相关词 / 热门词横排） ---------- */
.simple-list { display: flex; flex-wrap: wrap; gap: 10px 26px; }
.simple-list a { font-size: 15px; }
.simple-list a:hover { color: var(--red); }

/* ---------- 分页 ---------- */
.pager { text-align: center; margin: 24px 0 10px; }
.pager a, .pager .cur, .pager .dots {
  display: inline-block; min-width: 34px; height: 34px; line-height: 34px;
  margin: 0 4px; padding: 0 8px; border: 1px solid var(--line); border-radius: 3px;
  background: #fff; font-size: 14px;
}
.pager .cur { background: var(--red); border-color: var(--red); color: #fff; }
.pager a:hover { border-color: var(--red); color: var(--red); }

/* ---------- 空提示 ---------- */
.empty-tip { text-align: center; padding: 40px 0; color: var(--ink-light); }
.search-hint { margin: 18px 0 0; font-size: 14px; color: var(--ink-light); }
.search-hint b { color: var(--red); }

/* ---------- 底部 ---------- */
.site-footer { margin-top: 46px; border-top: 2px solid var(--ink); background: var(--panel); }
.site-footer .wrap { padding: 22px 0; text-align: center; font-size: 13px; color: var(--ink-light); }
.foot-links { margin-bottom: 8px; }
.foot-links a { margin: 0 12px; color: var(--ink); }
.foot-links a:hover { color: var(--red); }
.copy { margin-top: 6px; }

/* ---------- 响应式（头部） ---------- */
@media (max-width: 760px) {
  .head-inner { flex-wrap: wrap; height: auto; padding: 10px 0; gap: 10px; }
  .nav-search { margin-left: 0; width: 100%; }
  .nav-search input { flex: 1; width: auto; }
}
