
/* Prevent layout shift between pages with/without scrollbars */
html {
  overflow-y: scroll !important;
  scrollbar-gutter: stable !important;
  overflow-y: scroll;
  scrollbar-gutter: stable;
}

@charset "UTF-8";
/* CSS Document */

:root {
  /* 导航栏高度控制 */
  --nav-height: 55px; 
  --bg: #F6F5F1; 
  --surface: #FFFEFC;
  --text: #1F2328;
  --muted: #6F716A;
  --primary: #92071c;
  --primary-600: #7a0617;
  --accent: #fdb837;
  --font-body: system-ui, -apple-system, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", "Source Han Sans SC", Arial, sans-serif;
  --font-heading: "Segoe UI", "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", "Source Han Sans SC", "Helvetica Neue", Arial, sans-serif;
  --logo-left-height: 70px;
  --logo-right-height: 30px;
  --border: #E3E0D8;
  --radius: 12px; /* 全局圆角变量，方便统一调整 */
}

* { box-sizing: border-box; }

body {
	margin: 0 auto;
	padding: 0;
	background-color: var(--bg);
	color: var(--text);
	font-family: var(--font-body);
	overflow-x: hidden; /* 彻底防止任何意外的横向滚动条 */
	/* --- 新增：开启字体平滑抗锯齿 --- */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 { font-family: var(--font-heading); color: var(--text); }
a { color: var(--primary); text-decoration: none; }
a:hover { color: var(--primary-600); background-color: transparent; }
.a1 { text-decoration: none; }
.a1:hover { color: var(--surface); }

.top-accent {
	height: 6px;
	background: linear-gradient(90deg, var(--primary-600), var(--accent));
}

/* ========================================================= */
/* 1. 纯CSS自适应导航栏 (无JS方案) */
/* ========================================================= */
.site-header {
	background-color: var(--primary);
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.site-nav {
	margin: 0 auto;
	max-width: 1500px; 
	width: 100%;
	min-height: var(--nav-height); 
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: space-between; 
	padding: 0px 10px 3px 10px; /* 上下预留一点空间给换行时使用 */
}

.site-header .logo--left img { height: calc(var(--nav-height) * 1.15); width: auto; 
	max-width: 100%; margin-right: auto; }
.site-header .logo--right img { height: calc(var(--nav-height) * 0.55); width: auto; max-width: 100%; }

.logo { display: inline-flex; align-items: center; flex-shrink: 0; }
.nav-list {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	list-style: none;
	margin: 0;
	padding: 0;
	gap: 5px; 
}

.nav-item { display: flex; align-items: center; }

.nav-item a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 12px; 
	color: var(--surface);
	font-size: 16px; 
	font-weight: bold;
	border-radius: 8px; /* 高级微圆角 */
	transition: all 0.3s ease;
	white-space: nowrap; /* 保证文字不折断 */
}

.nav-item--active a { background-color: rgba(255, 255, 255, 0.15); }
.nav-item a:hover { background-color: var(--primary-600); transform: translateY(-1px); }

/* --- 导航栏在不同屏幕下的智能排版 --- */
/* --- 导航栏在不同屏幕下的智能排版 --- */
@media (max-width: 1450px) {
	/* 核心魔法：使用 order 属性重新排列视觉顺序 */
	.logo--left { 
		order: 1; /* 排在第 1 位 */
		margin-right: 0; 
	}
	.logo--right { 
		order: 2; /* 排在第 2 位（和左Logo并排在最上面） */
		margin-left: 0; 
	}
	.nav-list { 
		order: 3; /* 排在最后（被挤到下一行） */
		width: 100%; 
		margin-top: 15px; /* 与上方的 Logo 拉开一点优雅的间距 */
		flex-wrap: wrap;
	}
	.site-nav { 
		justify-content: space-between; 
		flex-wrap: wrap;
	}
}

@media (max-width: 600px) {
	/* 极小屏幕（手机），字体缩小，按钮间距变小 */
	.nav-item a { font-size: 15px; padding: 6px 10px; }
	.site-header .logo--left img { height: 45px; }
	.site-header .logo--right img { height: 22px; }
	.nav-list { gap: 6px; } /* 让菜单按钮更紧凑，避免折行太多 */
}

/* ========================================================= */
/* 1b. 中英文切换按钮（位于左侧Logo与Home之间，作为导航列表首项） */
/* ========================================================= */
.nav-item--lang { margin-right: 6px; }

.lang-switch {
	display: inline-flex;
	align-items: center;
	padding: 2px;
	border: 1px solid rgba(255, 255, 255, 0.45);
	border-radius: 999px;
	background-color: rgba(0, 0, 0, 0.12);
}

.lang-switch__btn {
	appearance: none;
	-webkit-appearance: none;
	border: 0;
	margin: 0;
	background: transparent;
	color: rgba(255, 255, 255, 0.85);
	font-family: inherit;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	padding: 6px 11px;
	border-radius: 999px;
	cursor: pointer;
	white-space: nowrap;
	transition: background-color 0.25s ease, color 0.25s ease;
}

.lang-switch__btn:hover { background-color: rgba(255, 255, 255, 0.18); color: #fff; }

.lang-switch__btn.is-active,
.lang-switch__btn.is-active:hover {
	background-color: var(--surface);
	color: var(--primary);
	cursor: default;
}

.lang-switch__btn:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }

@media (max-width: 600px) {
	.lang-switch__btn { font-size: 12px; padding: 5px 9px; }
}

/* ========================================================= */
/* 2. 主体区块流体化 (使用 max-width 和 flex-wrap) */
/* ========================================================= */
.hero {
	margin: 0 auto;
	max-width: 1300px; 
	width: 100%;
	/* 核心魔法 1：使用 Grid 让所有图片堆叠在同一个格子里 */
	display: grid; 
	position: relative; /* 为半透明按钮提供定位基准 */
	background-color: var(--surface);
	box-shadow: 0px 8px 20px rgba(0, 0, 0, 0.08);
	overflow: hidden; 
}

.TopPhoto {
	/* 核心魔法 2：所有图片都占第 1 行第 1 列，完美重叠且高度自适应 */
	grid-area: 1 / 1; 
	width: 100%;
	margin: 0;
	opacity: 0; /* 默认完全透明 */
	visibility: hidden; /* 默认不可见，防止阻挡点击 */
	transition: opacity 0.8s ease-in-out, visibility 0.8s; /* 0.8秒的极致丝滑淡入淡出 */
	z-index: 1;
}

.TopPhoto.is-active {
	opacity: 1; /* 激活时完全显示 */
	visibility: visible;
	z-index: 2; /* 浮在最上面 */
}

.TopPhoto img {
	width: 100%; 
	height: auto; 
	display: block;
	object-fit: cover;
}

/* --- 高级半透明切换按钮 --- */
.slider-btn {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	background-color: rgba(0, 0, 0, 0.25); /* 极具高级感的 25% 半透明黑色背景 */
	color: rgba(255, 255, 255, 0.8);
	border: none;
	width: 44px;
	height: 44px;
	border-radius: 50%; /* 圆形按钮 */
	font-size: 18px;
	cursor: pointer;
	z-index: 10; /* 保证浮在图片最上层 */
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease;
	backdrop-filter: blur(4px); /* 苹果风磨砂玻璃特效，如果浏览器支持的话极为惊艳 */
}

/* --- 高级半透明切换按钮（默认状态：几乎隐形） --- */
.slider-btn {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	/* 改动1：背景色变得极淡，几乎看不见 */
	background-color: rgba(0, 0, 0, 0.1); 
	/* 改动2：箭头颜色也变淡 */
	color: rgba(255, 255, 255, 0.4);
	border: none;
	width: 44px;
	height: 44px;
	border-radius: 50%; 
	font-size: 18px;
	cursor: pointer;
	z-index: 10; 
	display: flex;
	align-items: center;
	justify-content: center;
	backdrop-filter: blur(2px); /* 默认模糊度也降低一点 */
	
	/* 改动3：核心！默认整体透明度为 0，完全隐藏，不抢视觉重点 */
	opacity: 0; 
	/* 改动4：过渡时间稍微调慢到 0.5s，显得更优雅不急躁 */
	transition: all 0.5s ease; 
}

/* --- 新增：当鼠标悬停在整个轮播区域时，唤醒按钮 --- */
.hero:hover .slider-btn {
	/* 整体显形 */
	opacity: 1;
	/* 背景色稍微加深一点点，提高辨识度 */
	background-color: rgba(0, 0, 0, 0.3); 
	/* 箭头变亮 */
	color: rgba(255, 255, 255, 0.9);
	backdrop-filter: blur(4px); /* 恢复磨砂感 */
}

/* (保留原有的) 鼠标真正摸到按钮上时的状态：变红、放大 */
.slider-btn:hover {
	background-color: var(--primary-600) !important; /* 加上 !important 确保覆盖上面的灰色 */
	color: #ffffff !important;
	opacity: 1 !important;
	transform: translateY(-50%) scale(1.1); 
}


.slider-btn--left { left: 20px; }
.slider-btn--right { right: 20px; }

/* 手机端按钮稍微缩小 */
@media (max-width: 600px) {
	.slider-btn { width: 36px; height: 36px; font-size: 14px; }
	.slider-btn--left { left: 10px; }
	.slider-btn--right { right: 10px; }
}


.Show {	
	max-width: 1300px; width: 100%; height: auto;
	margin: 30px auto; padding: 0 0px;
	display: flex; flex-wrap: wrap; gap: 10px; 
}

.photo-card {
	width: 198px; max-width: 100%; margin:  auto; /* 手机上居中 */
	box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.18);
	background-color: var(--surface); border: 1px solid var(--border);
}
.photo-card img { width: 100%; height: auto; display: block; }

/* .intro-card {
	flex: 1; min-width: 280px; height: auto;
	margin: 0; padding: 20px;
	background-color: var(--surface); box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.08); border-top: 3px solid var(--accent);
} */

.intro-card {
	flex: 1;
	min-width: 300px;
	height: auto;
	margin: 0;
	padding: 20px 40px; /* 从 20px 增加到 35px，让内容更从容 */
	padding-top: 1 0px;
	background-color: var(--surface);
	/* 弱化阴影：降低 Alpha 透明度，增加模糊半径 (26px) */
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05); 
	border-radius: var(--radius); /* 应用你在根目录定义的圆角 */
	border-top: 3px solid var(--accent);
}

.intro-content { width: 100%; height: auto; margin: 0; }

.section-title, .section-title--wide {
	width: 100%; height: auto; margin: 0 0 0px 0; 
	margin-left: 0px;
	padding: 5px;
	border-bottom: 1px solid var(--border); font-weight: bold;
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
}
.title-text { font-size: 20px; font-weight: bold; }
.more-link { text-decoration: none; color: var(--accent); font-size: 16px; }
.subheading { color: var(--text); font-size: 20px; font-weight: bold; line-height: 30px; margin: 10px 0 0; }

.body-text { color: var(--text); font-size: 16px; line-height: 1.7; margin: 12px 0 0; }

/* ========================================================= */
/* 3. 新闻与高亮区自适应 */
/* ========================================================= */
.dierbankuai {
	max-width: 1300px; width: 100%; height: auto; 
	margin: 10px auto; padding: 0 0px;
	display: flex; flex-wrap: wrap; gap: 30px;
	border-radius: var(--radius);
	margin-bottom: 60px;
	padding: 0px;
	/* border-top: 10pxvar(--primary-600); */
}

.lastestnew {
	flex: 1; min-width: 300px; height: auto;
	padding-bottom: 20px; 
	background-color: var(--surface);
	/* padding: 12px 24px; */
	padding: 0;

	background-color: var(--surface);
	/* box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05); */
	border-radius: var(--radius);
	overflow: hidden;
	/* display: flex;
      flex-direction: column; */
}

/* --- 优化 News 侧边栏：防止溢出 + 优雅内滚动 --- */
.youbianxinwen {
	width: 360px;
	max-width: 100%;
	background-color: var(--surface);
	/* 同样使用弥散状浅阴影 */
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
	border-radius: var(--radius);
	overflow: hidden;
	padding: 0 !important; /* 移除外层内边距，让头部背景撑满 */
	display: flex;
      flex-direction: column;
}

.NEWS111 {
	flex-shrink: 0; 
	width: 100%; 
	padding: 12px 30px; 
	font-size: 18px; 
	font-weight: bold;
	border-bottom: 1px solid var(--border); 
	display: flex; 
	justify-content: space-between;
	border-top: 3px solid var(--accent);
}

.xinwenlundong {
	width: 100%; 
	padding: 12px 30px; 
	margin-top: 0; 
	line-height: 1.8;
	/* 【核心修复2】告诉浏览器最大高度是多少，超出这个高度就开始内滚动 */
	max-height: 1200px; /* 水平对齐*/
	overflow-y: auto;  /* 垂直方向超出则滚动 */
	overflow-x: hidden; /* 水平方向严禁滚动 */
}
  .xinwenlundong ul {
      padding: 0 !important;
      margin: 0 !important;
      list-style: none !important;
    } 
    .xinwenlundong li {
      margin-bottom: 18px !important;
      line-height: 1.6 !important;
      color: #333 !important;
      font-size: 15px !important;
      border-bottom: 1px dashed rgba(0,0,0,0.06);
      padding-bottom: 14px !important;
    }
    .xinwenlundong li:last-child {
      border-bottom: none;
      margin-bottom: 0 !important;
    }

	.xinwenlundong .date {
      color: var(--primary-600) ;
      font-weight: 900 ;
      margin-right: 6px;
      font-family: var(--font-heading, sans-serif);
    }

/* --- 高级感定制滚动条 --- */
.xinwenlundong::-webkit-scrollbar {
	width: 6px; 
}
.xinwenlundong::-webkit-scrollbar-track {
	background: transparent; 
}
.xinwenlundong::-webkit-scrollbar-thumb {
	background-color: var(--border); 
	border-radius: 10px; 
}
.xinwenlundong::-webkit-scrollbar-thumb:hover {
	background-color: var(--primary-600); 
}

/* .highlight-card {
	width: 100%; height: auto; padding: 20px; border-bottom: 2px solid var(--border);
	display: flex; flex-wrap: wrap; gap: 20px;
} */

/* --- 论文高亮卡片：去除硬边框 + 增加间距 --- */
.highlight-card {
	width: 100%;
	height: auto;
	margin: 0;
	padding: 30px 40px; /* 增加上下左右的留白 */
	/* 去掉原本的 2px 实线边框，改为极淡的 1px 线条 */
	border-bottom: 1px solid rgba(0, 0, 0, 0.05); 
	display: flex;
	flex-wrap: wrap;
	gap: 30px; /* 增加图片与文字之间的间距 */
}

.highlight-card:last-of-type { border-bottom: none; }

.highlight-image {
	width: 240px; max-width: 100%; height: auto; 
	box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.18); object-fit: cover;
}
.highlight-text { flex: 1; min-width: 250px; height: auto; }
.highlight-title { font-size: 18px; line-height: 1.4; font-weight: bold; margin: 0 0 6px; }

.italic {
	font-style: italic;
	color: var(--primary);
	text-decoration: underline;
	font-size: 1em;
}
.date {
	color: var(--primary-600);
	font-weight: bold;
	font-size: 1em;
}

/* ========================================================= */
/* 4. People 人员页面卡片自适应 */
/* ========================================================= */
.Leadertop {
	max-width: 1300px; width: 100%; height: auto;
	margin: 0 auto; padding: 10px 20px;
	padding-top: 40px;
	font-size: 26px; 
	color: var(--primary); 
	font-weight: bold; 
	border-bottom: 3px solid var(--accent);
}

.Leader {
	max-width: 1300px; width: 100%; height: auto;
	margin: 0 auto; padding: 10px 20px;
	/* padding-top: 0px; */
	font-size: 22px; color: var(--primary); font-weight: bold; border-bottom: 3px solid var(--accent);
}

.Leaderphoto-top {
	max-width: 1300px; width: 100%; height: auto; 
	margin: 30px auto;
	padding: 30px;
	display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 30px;
	background-color: var(--surface); box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.18);
	border-radius: var(--radius);
	border: 1px solid rgba(0, 0, 0, 0.03); 
}

.Leaderphoto, .Leaderphoto2 {
	max-width: 1300px; width: 100%; height: auto; 
	margin: 20px auto; padding: 20px;
	display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 30px;
	background-color: var(--surface); box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.18);
	border-radius: var(--radius);
	border: 1px solid rgba(0, 0, 0, 0.03); 
}

.Leaderp1 {
	width: 240px; max-width: 100%; height: auto;
	background: url("../image/groupleader.jpg") no-repeat center / cover;
	border-radius: 8px; 
	padding: 5px 15px 0px 0px;
	/* padding-right: 30px; */
}
.Leaderp1 img { width: 100%; height: auto; border-radius: 8px; object-fit: cover; 
	margin-top: 5%; margin-bottom: 5% ;}

.Leaderp2 { flex: 1; min-width: 280px; height: auto; line-height: 1.6; 
	font-size: 17px;}

.Leaderp3 {
	width: 180px; height: 40px; background-color: var(--primary); color: var(--surface);
	font-weight: bold; text-align: center; line-height: 40px; cursor: pointer; border-radius: 4px;
}
.postdoctor1 { width: 180px; max-width: 100%; height: auto; }
.postdoctor1 img { width: 100%; height: auto; border-radius: 8px; object-fit: cover; }
.postdoctor2 { flex: 1; min-width: 250px; height: auto; line-height: 1.6; }

/* ========================================================= */
/* 5. 底部页脚自适应 */
/* ========================================================= */
.dibu, .bottom, .bottom1 { width: 100%; height: auto; background-color: var(--primary-600); padding: 30px 0; }
.dibu a { color: #ffffff; text-decoration: none; }
.dibu a:hover { color: #ffcc00; text-decoration: underline; }

.bottomsite {
	max-width: 1374px; width: 100%; height: auto; margin: 0 auto; padding: 0 20px 20px;
	border-bottom: 1px solid rgba(255,255,255,0.2);
	display: flex; flex-wrap: wrap; justify-content: space-around; gap: 20px;
}
.bottoms1, .bottoms2, .bottoms3 { width: auto; line-height: 2; color: var(--surface); font-size: 16px; font-weight: bold; text-align: center; }

.shengming {
	max-width: 1440px; width: 100%; height: auto; margin: 0 auto; padding: 20px;
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; text-align: center; gap: 15px;
}
.shengming1 { font-size: 20px; font-weight: bold; color: var(--surface); }
.shengming2, .shengming3 { font-size: 14px; font-weight: 100; line-height: 1.5; color: var(--surface); }

@media (max-width: 768px) {
	.shengming { flex-direction: column; justify-content: center; }
}

/* 兼容保留的其他碎类名 */
.jieshaowenzi, .jieshaowenzi6, .jieshaowenzi7, .jieshaowenzi9, .jieshaowenzi1, .jieshaowenzi2, .jieshaowenzi3 {
	max-width: 1000px; width: 100%; height: auto; margin-top: 10px; font-size: 18px; color: var(--text); line-height: 1.6;
}
.wenzilan { max-width:960px; width:100%; height: auto; color: var(--primary); font-size: 22px; font-weight: bold; margin-top: 40px; border-bottom: 3px solid var(--primary); line-height: 30px; }

/* ========================================================= */
/* 研究方向 (Research Interests) 三列图文排版 */
/* ========================================================= */
.research-grid {
	display: flex;
	flex-wrap: wrap; /* 核心自适应：允许在手机端自动换行堆叠 */
	gap: 5%;
	margin-top: 25px;
	justify-content: space-between;
	margin-left: 5%;
	margin-right: 5%;
}

.research-item {
	flex: 1; /* 电脑端平均平分三等份空间 */
	min-width: 180px; /* 当屏幕缩小，宽度不足240px时，自动掉到下一行 */
	text-align: center; /* 保证图片和文字完美居中 */
	padding: 10px;
	border-radius: var(--radius);
	transition: all 0.3s ease; 
	/* 增加悬停互动感 */
}

/* 鼠标放上去时，轻微上浮并显示淡阴影，增加高级感 */
.research-item:hover {
	transform: translateY(-5px);
	background-color: #faf9f6; /* 极浅的灰色背景 */
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.04);
}

.research-item img {
	width: 100%;
	height: 150px; /* 固定高度，确保三张图对齐 */
	object-fit: contain; /* 保证图片按比例缩放，不被拉伸变形或裁切 */
	margin-bottom: 0px;
}

.research-item h4 {
	margin: 0;
	font-size: 18px;
	color: var(--text);
	line-height: 1.5;
	font-weight: bold;
}

/* 英文副标题样式，弱化存在感 */
.research-en {
	font-size: 13px;
	color: var(--muted);
	font-weight: normal;
}

/* =========================================================
   Publications 多分类侧边栏版：新增样式
   ========================================================= */

html {
  overflow-y: scroll !important;
  scrollbar-gutter: stable !important; scroll-behavior: smooth; }

.pub-layout{
  width: min(1400px, 94vw);
  margin: 0 auto;
  padding: 24px 0 60px;
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

/* 左侧分类导航 */
.pub-sidebar{
  position: sticky;
  top: 80px;
  z-index: 20;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(0,0,0,.05);
  overflow: hidden;
}

.pub-sidebar-title{
  padding: 18px 20px;
  color: #fff;
  background: var(--primary);
  font-size: 18px;
  font-weight: 800;
  letter-spacing: .3px;
}

.pub-sidebar ul{
  list-style: none;
  margin: 0;
  padding: 8px;
}

.pub-sidebar li{ margin: 2px 0; }

.pub-sidebar a{
  display: block;
  padding: 12px 14px;
  border-radius: 10px;
  color: var(--text);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.45;
  transition: .25s ease;
}

.pub-sidebar a:hover,
.pub-sidebar a.is-active{
  color: var(--primary);
  background: rgba(146,7,28,.07);
  transform: translateX(3px);
}

/* 右侧内容 */
.pub-content{
  min-width: 0;
}

.pub-section{
  scroll-margin-top: 90px;
  background: var(--surface);
  border: 1px solid rgba(0,0,0,.05);
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(0,0,0,.05);
  padding: 30px 40px 36px;
  margin-bottom: 24px;
}

.pub-section-header{
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  padding-bottom: 14px;
  border-bottom: 2px solid rgba(0,0,0,.05);
}

.pub-section-header h1,
.pub-section-header h2{
  margin: 0;
  color: var(--primary);
  font-family: var(--font-heading);
}

.pub-section-header h1{ font-size: 30px; }
.pub-section-header h2{ font-size: 26px; }

.pub-section-subtitle{
  color: var(--muted);
  font-size: 14px;
  line-height: 1.6;
}

/* 年份跳转 */
.pub-year-nav{
  display: flex;
  flex-wrap: wrap;
  gap: 6px 10px;
  margin: 18px 0 8px;
  font-size: 15px;
  line-height: 1.8;
}

.pub-year-nav a{
  color: var(--primary);
  font-weight: 700;
  padding: 2px 6px;
  border-radius: 6px;
}

.pub-year-nav a:hover{
  background: rgba(146,7,28,.08);
  text-decoration: underline;
}

.pub-year-block{
  scroll-margin-top: 90px;
}

.pub-year-title{
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin: 34px 0 10px;
  padding-bottom: 6px;
  border-bottom: 2px solid rgba(253,184,55,.8);
  color: var(--primary);
  font-size: 20px;
  font-weight: 800;
}

.pub-list{
  list-style: none;
  margin: 0;
  padding: 0;
}

.pub-item{
  display: grid;
  grid-template-columns: 54px minmax(0,1fr);
  gap: 18px;
  padding: 18px 14px;
  border-radius: 12px;
  transition: .3s ease;
}

.pub-item:hover{
  background: rgba(146,7,28,.035);
  transform: translateX(4px);
}

.pub-no{
  width: 42px;
  min-height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 2px;
  padding: 7px 4px;
  border-radius: 6px;
  background: #eaeaea;
  color: #777;
  font-size: 14px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
}

.pub-title{
  margin: 0 0 7px;
  color: #111;
  font-size: 17px;
  line-height: 1.55;
  font-weight: 800;
}

.pub-authors,
.pub-meta{
  margin: 0 0 5px;
  color: var(--primary);
  font-size: 15px;
  line-height: 1.65;
  font-weight: 650;
}

.pub-meta{
  color: #555;
  font-weight: 500;
}

.pub-venue{
  color: var(--primary);
  font-size: 15px;
  line-height: 1.6;
  font-style: italic;
  font-weight: 700;
}

.person-highlight{
  color: var(--primary);
  background: rgba(253,184,55,.22);
  border-radius: 4px;
  padding: 0 2px;
  font-weight: 900;
}

/* 专利/软件著作内部结构 */
.subsection-title{
  margin: 32px 0 12px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--border);
  color: var(--text);
  font-size: 21px;
  font-weight: 800;
}

.patent-note{
  margin: 0 0 10px;
  color: var(--muted);
  font-size: 14px;
}

.simple-list .pub-item{
  grid-template-columns: 54px minmax(0,1fr);
}

/* 专著 */
.book-item{
  display: grid;
  grid-template-columns: 54px minmax(0,1fr);
  gap: 18px;
  padding: 18px 14px;
  border-radius: 12px;
}

.book-item:hover{
  background: rgba(146,7,28,.035);
}

.book-text{
  color: #333;
  font-size: 16px;
  line-height: 1.75;
  font-weight: 550;
}

/* 移动端：侧边栏变成顶部分类条 */
@media (max-width: 900px){
  .pub-layout{
    width: min(94vw, 760px);
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .pub-sidebar{
    position: sticky;
    top: 0;
  }

  .pub-sidebar-title{
    padding: 12px 16px;
    font-size: 16px;
  }

  .pub-sidebar ul{
    display: flex;
    gap: 6px;
    overflow-x: auto;
    padding: 7px;
  }

  .pub-sidebar li{
    flex: 0 0 auto;
  }

  .pub-sidebar a{
    white-space: nowrap;
    padding: 9px 12px;
    font-size: 14px;
  }

  .pub-sidebar a:hover,
  .pub-sidebar a.is-active{
    transform: none;
  }

  .pub-section{
    padding: 22px 18px 28px;
  }
}

@media (max-width: 600px){
  .pub-section-header{
    display: block;
  }

  .pub-section-header h1{ font-size: 25px; }
  .pub-section-header h2{ font-size: 22px; }

  .pub-item,
  .book-item{
    grid-template-columns: 42px minmax(0,1fr);
    gap: 10px;
    padding: 14px 4px;
  }

  .pub-no{
    width: 36px;
    font-size: 13px;
  }

  .pub-title{ font-size: 16px; }
  .pub-authors,
  .pub-meta,
  .pub-venue,
  .book-text{ font-size: 14px; }
}
/* Added for header layout */
.header-left {
    display: flex;
    align-items: center;
    gap: 15px;
}
@media (max-width: 1450px) {
    .header-left {
        width: 100%;
        justify-content: space-between;
        margin-bottom: 10px;
    }
}
