/* ==========================================================================
   国学典藏 · 设计系统样式层
   接入站点：elian360.com (LECMS / view/guoxue)
   本文件在旧 common/detail 样式之后加载，负责：
   1) 设计稿首页组件（顶栏/hero/名句/类目栅格/页脚）
   2) 全站内页旧模板类的视觉适配（纸面质感 + 朱砂/墨色体系）
   响应式断点：1024 / 860 / 700 / 460
   ========================================================================== */

/* ---------- 设计令牌 ---------- */
:root{
  --paper:#F7F1E6;
  --paper2:#EFE6D4;
  --paper3:#E5D7BE;
  --ink:#262019;
  --ink2:#5A5145;
  --ink3:#8B7F6B;
  --vermilion:#B23A2A;
  --vermilion-d:#8E2B1E;
  --gold:#B8903F;
  --jade:#3E5C50;
  --line:rgba(38,32,25,.16);
  --line-soft:rgba(38,32,25,.10);
  --serif:"Noto Serif SC","Songti SC","STSong","SimSun",serif;
  --kai:"Ma Shan Zheng","Kaiti SC","STKaiti","KaiTi",serif;
  --shadow:0 6px 22px -12px rgba(38,32,25,.28);
  --card-bg:linear-gradient(180deg,#FBF6EC,#F5EDDD);
}
html{scroll-behavior:smooth}
body{
  font-family:var(--serif);
  color:var(--ink);
  background:var(--paper);
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--ink);text-decoration:none}
a:hover{color:var(--vermilion)}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
::selection{background:var(--vermilion);color:var(--paper)}

/* 纸面纹理 */
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background:
    radial-gradient(1200px 600px at 15% -5%, rgba(255,255,255,.55), transparent 60%),
    radial-gradient(900px 500px at 110% 20%, rgba(184,144,63,.07), transparent 60%);
}

/* ---------- 顶栏 ---------- */
.topbar{
  position:sticky;top:0;z-index:50;
  background:rgba(247,241,230,.93);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line-soft);
}
.topbar-inner{
  max-width:1240px;margin:0 auto;padding:0 24px;height:64px;
  display:flex;align-items:center;gap:20px;
}
.brand{display:flex;align-items:center;gap:12px;flex:none}
.seal{
  width:38px;height:38px;border-radius:7px;flex:none;
  background:var(--vermilion);color:var(--paper);
  display:grid;place-items:center;font-weight:900;font-size:21px;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.12);
  transform:rotate(-2deg);
}
.brand-name{display:flex;flex-direction:column;line-height:1.15}
.brand-name b{font-size:20px;letter-spacing:.12em;font-weight:900;color:var(--ink)}
.brand-name span{font-size:11px;color:var(--ink3);letter-spacing:.22em;margin-top:2px}
.topnav{display:flex;gap:4px;margin-left:auto}
.nav-chip{
  padding:7px 12px;font-size:14px;color:var(--ink2);border-radius:6px;transition:.18s;
}
.nav-chip:hover{color:var(--vermilion);background:rgba(178,58,42,.07)}
.nav-chip.on{color:var(--vermilion);font-weight:700}
.top-search{display:flex;align-items:center;border:1px solid var(--line);border-radius:6px;background:rgba(247,241,230,.9);overflow:hidden;height:36px;flex:none}
.top-search input{width:150px;border:none;outline:none;background:transparent;padding:0 12px;font-size:13px;font-family:inherit;color:var(--ink)}
.top-search button{background:var(--vermilion);color:var(--paper);padding:0 14px;font-size:13px;letter-spacing:.1em;height:100%;transition:.18s}
.top-search button:hover{background:var(--vermilion-d)}
.burger{
  display:none;margin-left:auto;color:var(--ink2);
  min-width:44px;min-height:44px;align-items:center;justify-content:center;
}
.mobilemenu{
  display:none;flex-direction:column;background:var(--paper);
  border-bottom:1px solid var(--line-soft);padding:6px 20px 14px;
}
.mobilemenu a{padding:10px 6px;border-bottom:1px dashed var(--line-soft);font-size:15px;color:var(--ink2)}
.mobilemenu a:last-child{border-bottom:none}

/* ---------- Hero ---------- */
.hero{
  position:relative;z-index:1;overflow:hidden;
  min-height:72vh;display:flex;align-items:center;justify-content:center;text-align:center;
}
.hero-bg{
  position:absolute;inset:0;z-index:-1;
  background:linear-gradient(rgba(247,241,230,.10),rgba(247,241,230,.30)),
    url('../image/hero.jpg') center/cover no-repeat;
}
.hero-bg::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(247,241,230,.25) 0%,rgba(247,241,230,.05) 40%,var(--paper) 100%);
}
.hero-inner{max-width:980px;padding:96px 24px 110px;position:relative;z-index:1}
.hero-svg{position:absolute;left:0;right:0;bottom:0;z-index:0;pointer-events:none;line-height:0}
.hero-svg svg{width:100%;height:130px;display:block}
.hero-svg .m1{fill:#262019;opacity:.06}
.hero-svg .m2{fill:#262019;opacity:.11}
.hero-svg .sun{fill:#B23A2A;opacity:.12}
.kicker{
  display:inline-flex;align-items:center;gap:10px;
  font-size:14px;letter-spacing:.4em;color:var(--vermilion);font-weight:600;
}
.kicker::before,.kicker::after{content:"";width:34px;height:1px;background:var(--vermilion);opacity:.6}
.hero h1{
  font-size:clamp(38px,6.4vw,72px);font-weight:900;line-height:1.18;letter-spacing:.05em;
  margin:22px 0 6px;color:var(--ink);
}
.hero h1 em{font-style:normal;color:var(--vermilion);position:relative;white-space:nowrap}
.hero-sub{
  margin-top:18px;font-size:clamp(15px,2vw,19px);color:var(--ink2);
  letter-spacing:.12em;max-width:640px;margin-left:auto;margin-right:auto;
}
.hero-search{
  margin:34px auto 0;max-width:560px;display:flex;gap:0;align-items:center;
  background:rgba(247,241,230,.92);border:1px solid var(--line);
  border-radius:6px;overflow:hidden;box-shadow:var(--shadow);
}
.hero-search input{
  flex:1;border:none;outline:none;background:transparent;
  padding:15px 18px;font-size:16px;font-family:inherit;color:var(--ink);
}
.hero-search button{
  background:var(--vermilion);color:var(--paper);padding:0 24px;font-size:15px;
  letter-spacing:.12em;align-self:stretch;transition:.18s;
}
.hero-search button:hover{background:var(--vermilion-d)}
.hero-search button:focus-visible,.hero-search input:focus-visible{outline:2px solid var(--vermilion);outline-offset:-2px}
.quick{
  margin-top:46px;display:flex;gap:12px;justify-content:center;flex-wrap:wrap;
}
.quick a{
  padding:9px 22px;border:1px solid var(--line);border-radius:6px;
  background:rgba(247,241,230,.8);font-size:15px;letter-spacing:.14em;
  display:flex;align-items:center;gap:8px;transition:.18s;
}
.quick a .q-seal{
  width:22px;height:22px;border-radius:3px;background:var(--vermilion);color:var(--paper);
  display:grid;place-items:center;font-size:13px;font-weight:900;
}
.quick a:hover{border-color:var(--vermilion);color:var(--vermilion);transform:translateY(-2px)}

/* ---------- 名句 ---------- */
.quote-band{
  position:relative;z-index:1;background:var(--paper2);
  border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);
}
.quote-band .section{padding:48px 24px;display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.quote-mark{font-family:var(--kai);font-size:64px;color:var(--vermilion);line-height:1}
.quote-text{flex:1;min-width:280px}
.quote-text blockquote{
  font-family:var(--kai);font-size:clamp(20px,2.6vw,28px);letter-spacing:.06em;
  color:var(--ink);
}
.quote-text cite{display:block;margin-top:10px;font-style:normal;color:var(--ink3);font-size:14px;letter-spacing:.1em}

/* ---------- 板块 ---------- */
.section{max-width:1240px;margin:0 auto;padding:64px 24px;position:relative;z-index:1}
.sect-head{display:flex;align-items:flex-end;gap:16px;margin-bottom:34px}
.sect-head .seal-big{
  width:52px;height:52px;border-radius:9px;flex:none;transform:rotate(-3deg);
  background:var(--vermilion);color:var(--paper);display:grid;place-items:center;
  font-size:27px;font-weight:900;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12);
}
.sect-head h2{font-size:clamp(24px,3vw,32px);font-weight:900;letter-spacing:.08em;color:var(--ink)}
.sect-head p{color:var(--ink2);font-size:15px;margin-top:4px}
.sect-head .muted{color:var(--ink3);font-size:13px;margin-left:auto;letter-spacing:.1em}

/* ---------- 类目栅格 ---------- */
.group{margin-bottom:14px}
.group-title{display:flex;align-items:center;gap:12px;margin:40px 0 20px}
.group-title .g-ic{
  width:30px;height:30px;flex:none;border:1px solid var(--line);border-radius:6px;
  display:grid;place-items:center;color:var(--vermilion);background:rgba(247,241,230,.55);
  font-weight:900;
}
.group-title h3{font-size:19px;letter-spacing:.1em;font-weight:900;color:var(--ink)}
.group-title span{color:var(--ink3);font-size:14px;letter-spacing:.14em}
.catgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.catgrid.cols3{grid-template-columns:repeat(3,1fr)}
.catcard{
  position:relative;border:1px solid var(--line);border-radius:8px;
  background:var(--card-bg);
  padding:20px 18px 16px;display:flex;gap:14px;align-items:flex-start;
  transition:.2s;
}
.catcard:hover{border-color:var(--vermilion);transform:translateY(-4px);box-shadow:var(--shadow)}
.catcard:hover .c-seal{background:var(--vermilion-d)}
.catcard-link{display:flex;gap:14px;align-items:flex-start;width:100%}
.c-seal{
  width:46px;height:46px;border-radius:7px;flex:none;transform:rotate(-2deg);
  background:var(--ink);color:var(--paper);display:grid;place-items:center;
  font-size:22px;font-weight:900;transition:.2s;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);
}
.c-cname{font-size:18px;font-weight:900;letter-spacing:.06em;color:var(--ink)}
.c-desc{margin-top:6px;font-size:14px;color:var(--ink2);line-height:1.6}

/* 无结果 */
.noresult{grid-column:1/-1;text-align:center;padding:44px 0;color:var(--ink3);font-size:16px}
.noresult b{display:block;font-size:30px;font-family:var(--kai);color:var(--ink2);margin-bottom:8px}

/* ---------- 页脚 ---------- */
.footer{
  position:relative;z-index:1;margin-top:40px;background:var(--ink);color:#D8CFC0;
  padding:44px 24px 28px;
}
.footer-inner{max-width:1240px;margin:0 auto;display:flex;gap:40px;flex-wrap:wrap;align-items:flex-start}
.foot-brand .seal{background:var(--vermilion)}
.foot-brand b{font-size:20px;letter-spacing:.12em;display:block;color:#F2EBDE;margin-top:12px}
.foot-brand p{font-size:13px;color:#A99E8C;margin-top:6px;letter-spacing:.06em}
.foot-links{display:flex;gap:40px;flex-wrap:wrap;margin-left:auto}
.foot-links .fl h4{font-size:13px;color:#C9BFAE;letter-spacing:.18em;font-weight:700;margin-bottom:12px}
.foot-links .fl a{display:block;font-size:14px;color:#B8AD99;padding:3px 0;transition:.15s}
.foot-links .fl a:hover{color:var(--vermilion)}
.foot-bottom{
  max-width:1240px;margin:30px auto 0;border-top:1px solid rgba(255,255,255,.12);
  padding-top:18px;font-size:12.5px;color:#8F8574;display:flex;gap:10px;flex-wrap:wrap;
}
.foot-bottom a{color:#A99E8C}
.foot-bottom a:hover{color:var(--vermilion)}

/* ---------- 类目详情视图（内页 hero） ---------- */
.cat-hero{position:relative;z-index:1;background:var(--paper2);border-bottom:1px solid var(--line-soft)}
.cat-hero .section{padding:54px 24px 44px}
.crumbs{font-size:13px;color:var(--ink3);letter-spacing:.06em;margin-bottom:18px}
.crumbs a:hover{color:var(--vermilion)}
.entry-list{max-width:1240px;margin:0 auto;padding:44px 24px 20px;position:relative;z-index:1}
.entry-list-head{display:flex;align-items:center;gap:10px;margin-bottom:22px}
.entry-list-head h2{font-size:22px;font-weight:900;letter-spacing:.08em}
.entry{
  border:1px solid var(--line-soft);border-left:3px solid var(--vermilion);
  background:var(--card-bg);
  border-radius:0 6px 6px 0;padding:18px 22px;margin-bottom:14px;
  transition:.18s;
}
.entry:hover{box-shadow:var(--shadow);transform:translateX(3px)}
.entry h3{font-size:18px;font-weight:900;letter-spacing:.05em}
.entry .entry-body{margin-top:8px;font-size:14.5px;color:var(--ink2);line-height:1.85}
.entry .entry-body .label{color:var(--vermilion);font-weight:700;letter-spacing:.06em}
.related{margin-top:36px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.related .rl{
  border:1px solid var(--line);padding:6px 16px;border-radius:6px;font-size:14px;
  color:var(--ink2);transition:.18s;cursor:pointer;
}
.related .rl:hover{border-color:var(--vermilion);color:var(--vermilion)}
.related .rl.on{background:var(--vermilion);color:var(--paper);border-color:var(--vermilion)}

/* ==========================================================================
   内页旧模板类适配
   ========================================================================== */

/* 旧 header 已由 topbar 取代 */
.header{display:none!important}

/* 主内容区 */
.main{
  max-width:1240px;margin:24px auto 0;padding:0 24px;position:relative;z-index:1;
  display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start;
}
.main-left{
  flex:1;min-width:0;float:none;width:auto;
  background:var(--card-bg);border:1px solid var(--line);border-radius:10px;
  padding:28px 30px;margin:0;box-shadow:var(--shadow);
}
.main-right{
  flex:0 0 300px;float:none;width:300px;margin:0;display:flex;flex-direction:column;gap:16px;
}
.main-right .right_box{
  float:none;width:100%;margin:0;background:var(--card-bg);
  border:1px solid var(--line);border-radius:8px;padding:16px 18px;
  box-shadow:0 2px 10px rgba(38,32,25,.05);
}
/* 侧栏区块标题：朱砂强调 + 下划线，取代旧的黑字细线 */
.main-right .right_box > span{
  display:block;color:var(--vermilion);font-weight:900;letter-spacing:.14em;
  border-bottom:2px solid var(--vermilion);padding-bottom:8px;margin-bottom:12px;
  font-size:15px;
}
.main-right .right_box li a{color:var(--ink2);font-size:14px}
.main-right .right_box li a::before{background:var(--vermilion)}
/* 侧栏检索框：纸面化，替换旧主题深蓝按钮 */
.main-right .in_search{
  display:flex;align-items:stretch;border:1px solid var(--line);border-radius:6px;
  overflow:hidden;background:#fffdf6;
}
.main-right .in_search .search_text{
  float:none;flex:1;min-width:0;border:none;background:transparent;
  padding:9px 12px;font-size:14px;color:var(--ink);outline:none;
}
.main-right .search_btn{
  float:none;width:auto;padding:0 16px;line-height:38px;
  background:var(--vermilion);color:#fff;border:none;border-radius:0;
  letter-spacing:.25em;font-weight:600;cursor:pointer;transition:.18s;
}
.main-right .search_btn:hover{background:#9a2f22}

/* 栏目页标题区（类目 hero） */
.list_title{position:relative;border-bottom:1px dashed var(--line);padding-bottom:14px}
.list_title h3{font-size:26px;font-weight:900;letter-spacing:.06em;color:var(--ink)}
.list_intro{margin-top:18px;padding:16px 18px;background:rgba(247,241,230,.6);border-radius:8px;border:1px solid var(--line-soft)}
.list_intro p{color:var(--ink2);line-height:1.9}

/* 词条/条目网格（box_wrap / list_wrap） */
.box_wrap ul,.list_wrap ul{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.box_wrap ul li,.list_wrap ul li{float:none;width:auto;position:relative;line-height:1.5;min-height:0;margin:0;padding:0;white-space:normal}
.box_wrap ul li::before,.list_wrap ul li::before,.list_wrap ul li::after,.list_wrap ul li time{display:none}
.box_wrap ul li a,.list_wrap ul li a{
  display:block;margin:0;padding:10px 12px;position:static;width:auto;
  background:rgba(247,241,230,.85);border:1px solid var(--line-soft);border-radius:6px;
  font-size:16px;letter-spacing:.03em;color:var(--ink);text-align:center;
  transition:.15s;white-space:normal;text-overflow:clip;overflow:visible;
}
.box_wrap ul li a:hover,.list_wrap ul li a:hover{
  border-color:var(--vermilion);color:var(--vermilion);background:#FBF6EC;
  box-shadow:var(--shadow);
}
.box_wrap ul li a span{color:var(--ink3);font-size:12px;height:auto;line-height:1.4}
.box_wrap ul li a em,.list_wrap ul li a em{color:var(--vermilion)}

/* 列表行（list_rows：搜索/文章） */
.list_rows{list-style:none;margin:20px 0 0;padding:0}
.list_rows li{margin-bottom:16px;padding-bottom:16px;border-bottom:1px dashed var(--line)}
.list_rows li h2{font-size:18px;margin-bottom:6px;font-weight:700}
.list_rows li h2 a{color:var(--ink)}
.list_rows li h2 a:hover{color:var(--vermilion)}
.list_rows li h2 em{color:var(--vermilion)}
.list_rows li p{line-height:1.8;color:var(--ink2);margin-bottom:6px}
.list_rows li div i{font-style:normal}
.list_rows li div i::before{content:'#';color:var(--vermilion)}

/* 面包屑（position） */
.position{
  flex:0 0 100%;width:100%;font-size:13px;color:var(--ink3);letter-spacing:.05em;
  background:var(--paper2);border:1px solid var(--line-soft);border-radius:6px;
  padding:9px 16px;margin-bottom:0;line-height:1.6;
}
.position a{color:var(--ink2)}
.position a:hover{color:var(--vermilion)}
.position code{color:var(--ink3);padding:0 4px;font-style:normal}

/* 详情页内容区 */
.ar_con{
  background:var(--card-bg);border:1px solid var(--line-soft);border-left:3px solid var(--vermilion);
  border-radius:0 8px 8px 0;padding:26px 30px;box-shadow:var(--shadow);
}
.ar_title{padding-bottom:14px;border-bottom:1px dashed var(--line);margin-bottom:16px}
.ar_title h1{font-size:clamp(24px,3.4vw,34px);font-weight:900;letter-spacing:.05em;color:var(--ink)}
.ar_title .pinyin{color:var(--vermilion);font-size:15px;letter-spacing:.1em;margin-bottom:6px}
.ar_intro{margin:0 0 16px;color:var(--ink2);font-size:15px;line-height:1.9}
.con_article{color:var(--ink2);font-size:15.5px;line-height:2}
.con_article p{margin:10px 0}
.con_article h2{
  font-size:20px;font-weight:900;letter-spacing:.08em;color:var(--ink);
  margin:26px 0 12px;padding-left:12px;border-left:3px solid var(--vermilion);
}
.con_article .tip{background:var(--vermilion);color:var(--paper);padding:1px 8px;border-radius:3px;font-size:12px;letter-spacing:.06em}
.con_article .jieshi{color:var(--ink2)}
.ar_box{
  background:var(--card-bg);border:1px solid var(--line);border-radius:8px;
  padding:18px 20px;margin-top:16px;
}
.ar_box h4{font-size:17px;font-weight:900;letter-spacing:.08em;color:var(--ink);border-bottom:1px dashed var(--line);padding-bottom:10px;margin-bottom:6px}
.ar_box .box_wrap ul{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}
.ar_box .box_wrap ul li a{font-size:15px}

/* 标签区 */
.tag_item a,.right_tag a,.channe_fenlei a{
  margin:4px;border:1px solid var(--line);padding:4px 14px;
  display:inline-block;font-size:14px;line-height:1.8;height:auto;
  background:rgba(247,241,230,.8);color:var(--ink2);border-radius:6px;transition:.15s;
}
.tag_item a:hover,.right_tag a:hover,.right_tag a.on,.channe_fenlei a:hover,.channe_fenlei a.on{
  background:var(--vermilion);border-color:var(--vermilion);color:var(--paper)!important;
}
.channe_fenlei{
  background:var(--card-bg);border:1px solid var(--line);border-radius:10px;
  padding:26px;margin:0 auto 20px;box-shadow:var(--shadow);
}
.channe_fenlei span{color:var(--ink);font-weight:900;letter-spacing:.1em}
.channe_fenlei span::after{background:var(--line-soft)}
.tag_list a{color:var(--ink2)}
.tag_list a em{color:var(--vermilion)}

/* 表格 / 工具 / unicode / 按钮等组件轻适配 */
.table{color:var(--ink2)}
.table th{color:var(--ink);background:var(--paper2)}
.table td,.table th{border-top:1px solid var(--line-soft)}
.tools dd{background:rgba(247,241,230,.85);border:1px solid var(--line-soft);border-radius:8px}
.tools dd i{background:var(--paper2);color:var(--vermilion)}
.tools dd b{color:var(--ink)}
.tools dd p{color:var(--ink3)}
.unicode .code_font{background:var(--card-bg);border:1px solid var(--line-soft)}
.zi-btn{background:rgba(247,241,230,.85);border:1px solid var(--line-soft);color:var(--ink)}
.zi-btn:hover{background:var(--vermilion);color:var(--paper);border-color:var(--vermilion)}
.list-unicode dd{border-color:var(--line-soft)}
.list-unicode dd a{color:var(--ink)}

/* 分页 */
.pagebar{margin-top:26px;text-align:center}
.pagebar a,.pagebar b{
  display:inline-block;margin:0 4px;padding:4px 12px;border:1px solid var(--line);
  border-radius:6px;font-size:14px;color:var(--ink2);background:rgba(247,241,230,.85);transition:.15s;
}
.pagebar a:hover{background:var(--vermilion);color:var(--paper);border-color:var(--vermilion)}
.pagebar b{background:var(--vermilion);border-color:var(--vermilion);color:var(--paper);font-weight:700}

/* 回到顶部 */
.GoTop{position:fixed;bottom:24px;right:24px;display:flex;flex-direction:column;gap:8px;margin:0;z-index:60}
.GoTopBox{width:auto;height:auto}
.GoTop button{
  width:44px;height:44px;border-radius:8px;background:rgba(38,32,25,.85);color:var(--paper);
  border:1px solid rgba(255,255,255,.12);font-size:12px;
}
.GoTop button:first-child{background:var(--vermilion);color:var(--paper);border-radius:8px}
.GoTop button svg{fill:#D8CFC0;width:20px;height:20px}
.GoTop button svg:hover{fill:#fff}

/* 旧 footer 兜底（若某模板仍用旧结构） */
.footer p{float:none;width:auto;text-align:center;color:#D8CFC0;font-size:12.5px;line-height:1.8}
.footer p a{color:#B8AD99}

/* ==========================================================================
   响应式
   ========================================================================== */
@media(max-width:1024px){
  .catgrid{grid-template-columns:repeat(3,1fr)}
  .main-right{flex-basis:260px;width:260px}
}
@media(max-width:860px){
  .topnav{display:none}
  .burger{display:block}
  .top-search input{width:110px}
  .main{flex-direction:column}
  .main-right{width:100%;flex-basis:auto;flex-direction:row;flex-wrap:wrap}
  .main-right .right_box{flex:1 1 46%;min-width:0}
}
@media(max-width:700px){
  .catgrid{grid-template-columns:repeat(2,1fr)}
  .catgrid.cols3{grid-template-columns:repeat(2,1fr)}
  .section{padding:46px 18px}
  .catcard{padding:16px 14px;gap:11px}
  .c-seal{width:40px;height:40px;font-size:19px}
  .main{padding:0 14px;margin-top:14px}
  .main-left{padding:20px 16px}
  .main-right .right_box{flex:1 1 100%}
  .ar_con{padding:20px 16px}
  .top-search{display:none}
}
@media(max-width:460px){
  .catgrid{grid-template-columns:1fr}
  .catgrid.cols3{grid-template-columns:1fr}
  .hero-inner{padding:70px 18px 80px}
  .foot-links{gap:24px}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* ==========================================================================
   详情页跨栏目相关内链（字义分解 / 关联内容）
   ========================================================================== */
.related-links{margin-top:18px;display:flex;flex-direction:column;gap:16px}
.rl-sec{
  background:var(--card-bg);border:1px solid var(--line);border-left:3px solid var(--vermilion);
  border-radius:0 8px 8px 0;padding:20px 22px;box-shadow:var(--shadow);
}
.rl-title{
  display:flex;align-items:baseline;gap:10px;
  border-bottom:2px solid var(--vermilion);padding-bottom:10px;margin-bottom:14px;
}
.rl-title span{font-size:18px;font-weight:900;letter-spacing:.14em;color:var(--vermilion)}
.rl-title em{font-style:normal;font-size:12px;color:var(--ink3);letter-spacing:.04em}
/* 字义分解：大字卡 */
.rl-charlist{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:12px}
.rl-char{
  display:flex;flex-direction:column;align-items:center;gap:2px;
  background:rgba(247,241,230,.6);border:1px solid var(--line-soft);border-radius:8px;
  padding:14px 10px 12px;text-align:center;transition:.18s;color:var(--ink);
}
.rl-char:hover{border-color:var(--vermilion);background:rgba(178,58,42,.06);transform:translateY(-2px)}
.rl-char b{font-size:42px;font-weight:900;line-height:1.25;color:var(--ink);font-family:var(--kai,serif)}
.rl-char i{font-style:normal;font-size:13px;color:var(--vermilion);letter-spacing:.03em}
.rl-char span{font-size:12px;color:var(--ink3);letter-spacing:.03em}
/* 关联内容分组 */
.rl-group{margin:0 0 12px}
.rl-group:last-child{margin-bottom:0}
.rl-group h4{
  font-size:14.5px;font-weight:700;color:var(--ink);letter-spacing:.06em;
  border-left:3px solid var(--gold,#B8903F);padding-left:9px;margin:0 0 9px;
}
.rl-chips{display:flex;flex-wrap:wrap;gap:8px}
.rl-chips a{
  display:inline-block;padding:4px 13px;font-size:14px;color:var(--ink2);
  background:rgba(247,241,230,.85);border:1px solid var(--line-soft);border-radius:999px;transition:.15s;
}
.rl-chips a:hover{background:var(--vermilion);color:var(--paper);border-color:var(--vermilion)}
@media(max-width:700px){
  .rl-charlist{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}
  .rl-char b{font-size:32px}
  .rl-sec{padding:16px 14px}
}

/* ==========================================================================
   搜索结果分组（精准匹配 / 模糊匹配）
   ========================================================================== */
.search-group{
  display:flex;align-items:baseline;gap:12px;
  background:rgba(247,241,230,.6);border:1px dashed var(--line);border-left:3px solid var(--vermilion);
  border-radius:0 6px 6px 0;padding:10px 16px;margin-bottom:16px;
}
.search-group b{font-size:16px;font-weight:900;letter-spacing:.12em;color:var(--vermilion)}
.search-group span{font-size:12.5px;color:var(--ink3);letter-spacing:.04em}
