/* ========== 周公解梦模块样式 ========== */
/* 抽取自 docs/07-prototype/pages/jiemeng-list.html 与 jiemeng-detail.html 的 <style> 块 */

/* —— 解梦列表页专属 —— */
.jm-search { background:
    radial-gradient(120% 130% at 0 0, rgba(184,134,11,.08), transparent 55%),
    var(--c-paper-card); padding:var(--sp-5); }
.jm-search h1 { font-size:var(--t-h1); margin-bottom:6px; }
.jm-search .sub { color:var(--c-ink-2); font-size:var(--t-sm); margin:0 0 var(--sp-4); }
.jm-form { display:flex; gap:10px; flex-wrap:wrap; }
.jm-form input { flex:1; min-width:200px; font:inherit; padding:12px 16px; border:1px solid var(--c-line);
  border-radius:var(--radius); background:#fff; color:var(--c-ink); }
.jm-form input:focus { outline:none; border-color:var(--c-primary); box-shadow:0 0 0 3px var(--c-primary-soft); }
.jm-hot-row { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin-top:var(--sp-3); font-size:var(--t-sm); }
.jm-hot-row .lbl { color:var(--c-ink-3); }

/* 分类 tab */
.cat-tabs { display:flex; gap:8px; overflow-x:auto; padding:4px 0; -webkit-overflow-scrolling:touch; }
.cat-tabs::-webkit-scrollbar { height:0; }
.cat-tabs a { flex:none; border:1px solid var(--c-line); background:#fff; color:var(--c-ink-2);
  padding:7px 16px; border-radius:var(--radius-pill); font:inherit; font-size:var(--t-sm); white-space:nowrap; transition:.18s; text-decoration:none; }
.cat-tabs a.on { background:var(--c-primary); color:#fff; border-color:var(--c-primary); }

/* 热门词条卡片栅格 */
.entry-grid { display:grid; gap:10px; grid-template-columns:1fr; }
@media (min-width:480px){ .entry-grid { grid-template-columns:1fr 1fr; } }
@media (min-width:980px){ .entry-grid { grid-template-columns:1fr 1fr 1fr; } }
.entry-card { display:block; background:#fff; border:1px solid var(--c-line); border-radius:var(--radius);
  padding:var(--sp-3) var(--sp-4); transition:.18s; }
.entry-card:hover { border-color:var(--c-primary); box-shadow:var(--shadow-sm); transform:translateY(-1px); }
.entry-card .top { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.entry-card .name { font-family:var(--font-serif); font-weight:700; font-size:16px; color:var(--c-ink); }
.entry-card .sum { margin:6px 0 0; font-size:var(--t-sm); color:var(--c-ink-2); line-height:1.6; }
.entry-card .hot { font-size:var(--t-xs); color:var(--c-ink-3); margin-top:8px; }
.entry-card .hot b { color:var(--c-gold); font-family:var(--font-serif); }
.tag-yi, .tag-ji { font-size:11px; padding:2px 9px; border-radius:var(--radius-pill); flex:none; font-weight:500; }
.tag-yi { background:rgba(46,125,50,.10); color:var(--c-yi); border:1px solid rgba(46,125,50,.22); }
.tag-ji { background:#fff; color:var(--c-ji); border:1px solid rgba(192,57,43,.35); }
.tag-mix { font-size:11px; padding:2px 9px; border-radius:var(--radius-pill); flex:none; font-weight:500;
  background:rgba(201,154,46,.12); color:var(--c-gold); border:1px solid rgba(201,154,46,.3); }

/* SEO 内链分组 */
.link-group + .link-group { margin-top:var(--sp-4); }
.link-group h4 { font-family:var(--font-serif); font-size:15px; color:var(--c-primary-deep); margin-bottom:10px;
  display:flex; align-items:center; gap:8px; }
.link-group h4::before { content:""; width:4px; height:14px; border-radius:2px; background:var(--c-gold); }

/* 侧栏热搜榜 */
.rank-list { display:grid; gap:2px; }
.rank-item { display:flex; align-items:center; gap:10px; padding:8px 4px; border-radius:var(--radius); font-size:var(--t-sm); }
.rank-item:hover { background:var(--c-primary-soft); }
.rank-item .no { flex:none; width:22px; height:22px; border-radius:6px; display:grid; place-items:center;
  font-family:var(--font-serif); font-size:13px; background:#f3efe6; color:var(--c-ink-3); }
.rank-item:nth-child(-n+3) .no { background:var(--c-primary); color:#fff; }
.rank-item .word { color:var(--c-ink); flex:1; }
.rank-item .heat { color:var(--c-ink-3); font-size:var(--t-xs); }
.rank-item .heat b { color:var(--c-gold); font-family:var(--font-serif); }

/* —— 解梦详情页专属 —— */
.jm-head h1 { font-size:var(--t-h1); }
.jm-head .lead { color:var(--c-ink-2); font-size:var(--t-sm); margin:6px 0 0; }

/* 正文排版 */
.article { line-height:1.85; }
.article > section + section { margin-top:var(--sp-5); }
.article h2.sub { font-family:var(--font-serif); font-size:var(--t-h2); color:var(--c-primary-deep);
  margin-bottom:10px; display:flex; align-items:center; gap:8px; }
.article h2.sub::before { content:""; width:5px; height:18px; border-radius:2px; background:var(--c-primary); }
.article p { margin:0 0 10px; color:var(--c-ink); }
.article p:last-child { margin-bottom:0; }

/* 人群解读列表 */
.persona { display:grid; gap:8px; }
.persona .row { display:flex; gap:10px; background:#fff; border:1px solid var(--c-line);
  border-radius:var(--radius); padding:10px 14px; font-size:var(--t-sm); }
.persona .who { flex:none; width:56px; font-family:var(--font-serif); font-weight:700; color:var(--c-primary-deep); }
.persona .what { color:var(--c-ink-2); line-height:1.7; }

/* 情境分条 */
.scene { display:grid; gap:10px; grid-template-columns:1fr; }
@media (min-width:560px){ .scene { grid-template-columns:1fr 1fr; } }
.scene .item { background:#fff; border:1px solid var(--c-line); border-radius:var(--radius); padding:12px 14px; }
.scene .item h5 { font-family:var(--font-serif); font-size:15px; color:var(--c-ink); margin-bottom:5px;
  display:flex; align-items:center; justify-content:space-between; gap:8px; }
.scene .item h5 .mk { font-size:11px; padding:1px 8px; border-radius:var(--radius-pill); font-weight:500; }
.mk-yi { background:rgba(46,125,50,.10); color:var(--c-yi); border:1px solid rgba(46,125,50,.22); }
.mk-ji { background:#fff; color:var(--c-ji); border:1px solid rgba(192,57,43,.35); }
.mk-gold { background:rgba(201,154,46,.12); color:var(--c-gold); border:1px solid rgba(201,154,46,.3); }
.scene .item p { margin:0; font-size:var(--t-sm); color:var(--c-ink-2); line-height:1.7; }

/* 原版周公解梦古文 */
.classic { background:
    radial-gradient(120% 120% at 100% 0, rgba(184,134,11,.08), transparent 55%),
    #fbf7ee; border:1px solid var(--c-gold-light); border-radius:var(--radius-lg); padding:var(--sp-5); }
.classic .quote { font-family:var(--font-serif); font-size:18px; color:var(--c-ink); line-height:2.2; letter-spacing:1px; }
.classic .quote span { display:inline-block; margin-right:18px; }
.classic .src { font-size:var(--t-xs); color:var(--c-ink-3); margin-top:12px; }

/* 吉凶提示框 */
.verdict { display:flex; gap:14px; align-items:center; background:
    linear-gradient(180deg, rgba(201,154,46,.1), rgba(201,154,46,.03));
  border:1px solid rgba(201,154,46,.32); border-radius:var(--radius-lg); padding:var(--sp-4) var(--sp-5); }
.verdict .badge { flex:none; width:54px; height:54px; border-radius:14px; display:grid; place-items:center;
  background:var(--c-gold); color:#fff; font-family:var(--font-serif); font-size:24px; box-shadow:var(--shadow-sm); }
.verdict .txt b { font-family:var(--font-serif); font-size:17px; color:var(--c-primary-deep); }
.verdict .txt p { margin:4px 0 0; font-size:var(--t-sm); color:var(--c-ink-2); line-height:1.6; }

/* 侧栏分类导航 */
.cat-nav { display:flex; flex-wrap:wrap; gap:8px; }
.side-hot { display:grid; gap:2px; }
.side-hot a { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:8px 4px;
  border-radius:var(--radius); font-size:var(--t-sm); color:var(--c-ink); }
.side-hot a:hover { background:var(--c-primary-soft); }
.side-hot a .h { color:var(--c-ink-3); font-size:var(--t-xs); }
.side-hot a .h b { color:var(--c-gold); font-family:var(--font-serif); }

/* 搜索结果空态 */
.jm-empty { text-align:center; padding:var(--sp-6) var(--sp-4); color:var(--c-ink-3); }
.jm-empty .big { font-family:var(--font-serif); font-size:var(--t-h2); color:var(--c-ink-2); margin-bottom:8px; }
