/* ========== 基础 ========== */
body{ font-family:"PingFang SC","Microsoft YaHei","微软雅黑",sans-serif; font-size:100%; opacity: 0; color:#1a1a1a; background: #f4f5f7; -webkit-font-smoothing: antialiased; background-image: url("data:image/svg+xml,%3Csvg width='60' height='52' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M30 0l30 17.3v34.6L30 69.3 0 52V17.3z' fill='none' stroke='rgba(0,0,0,.04)' stroke-width='0.5'/%3E%3C/svg%3E"); background-size: 60px 52px; transition: opacity 0.35s ease; }

/* ========== 自定义滚动条 ========== */
::-webkit-scrollbar{ width: 6px; height: 6px; }
::-webkit-scrollbar-track{ background: #eef0f3; border-radius: 3px; }
::-webkit-scrollbar-thumb{ background: linear-gradient(180deg, #1a56db, #c9a84c); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover{ background: linear-gradient(180deg, #1e40af, #b8943a); }
/* Firefox */
*{ scrollbar-width: thin; scrollbar-color: #1a56db #eef0f3; }
.body.active{ opacity: 1; }
li{ list-style:none; }
ul{ padding:0; margin:0; }
a{ color:#333; text-decoration:none; transition: all 0.25s ease; }
a:hover{ text-decoration:none !important; color: #1a56db; }
a:focus{ text-decoration:none !important; outline: none !important; }
button:focus,button:hover{ outline: none !important; }
ul,ol{ margin:0; padding:0; }
img{ max-width:100%; display: block; }
input,button{ outline:none; }

/* ========== 统一 Sticky 顶部 ========== */
.site-header{ position: sticky; top: 0; z-index: 1000; background: #1a3a5c; transition: box-shadow 0.5s ease; }
.site-header.is-sticky{ box-shadow: 0 4px 30px rgba(0,0,0,0.25); }

/* ========== Header — Logo 区 ========== */
.header{ position: relative; background: #1a3a5c; overflow: hidden; }
.header:before{ content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: linear-gradient(to bottom, #1a56db, #c9a84c); }
.header-inner{ width: 92%; max-width: 18rem; margin: 0 auto; display: flex; align-items: center; height: 100%; padding: 0.12rem 0; }

/* Logo 图片 */
.logo-img{ display: block; flex-shrink: 0; position: relative; align-self: center; }
.logo-img img{ display: block; width: 0.82rem; height: auto; transition: width 0.55s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
.logo-img:after{ content: ''; position: absolute; right: -0.2rem; top: 10%; height: 80%; width: 1px; background: linear-gradient(to bottom, transparent, rgba(255,255,255,0.2), transparent); }

/* Logo 文本区 — h3/p 上下堆叠，整体靠左 */
.logo-text{ margin-left: 0.4rem; text-align: left; }
.logo-text h3{ font-size: 0.28rem; color: #fff; margin:0; font-weight: 800; line-height: 1.2; letter-spacing: 0.03rem; text-align: left; }
.logo-text .header-subtitle{ font-size: 0.28rem; color: #c9a84c; margin: 0.04rem 0 0 0; font-weight: 600; letter-spacing: 0.02rem; line-height: 1.3; }

/* ========== Compact 收缩态 — 非零高度，保留品牌 ========== */
.site-header.is-compact .header{  }
.site-header.is-compact .header-inner{ padding: 0.08rem 0; }
.site-header.is-compact .logo-img img{ width: 0.44rem; }
.site-header.is-compact .logo-text h3{ font-size: 0.2rem; }
.site-header.is-compact .logo-text .header-subtitle{ font-size: 0.18rem; }


/* ========== Header 下方横排导航 ========== */
.header-nav{ display: flex; align-items: center; justify-content: center; gap: 0.08rem; padding: 0.12rem 0.24rem; margin: 0 auto; list-style: none; max-width: 18rem; width: 92%; border-top: 1px solid rgba(255,255,255,0.08); flex-wrap: wrap; }
.header-nav li{ position: relative; }
.header-nav li a{ display: block; font-size: 0.22rem; color: rgba(255,255,255,0.75); font-weight: 500; padding: 0.1rem 0.28rem; border-radius: 0.04rem; text-decoration: none !important; transition: all 0.3s ease; white-space: nowrap; }
.header-nav li a:hover{ color: #fff; background: rgba(255,255,255,0.1); }
.header-nav li.active a{ color: #fff; font-weight: 600; background: rgba(26,86,219,0.35); }
.site-header.is-compact .header-nav li a{ font-size: 0.18rem; padding: 0.06rem 0.2rem; }

/* ========== Section 通用 ========== */
.section{ padding: 0.7rem 0; }
.section-inner{ width: 15rem; margin: 0 auto; }
.section-title-bar{ margin-bottom: 0.4rem; display: flex; align-items: center; justify-content: space-between; }
.section-title-bar h2{ font-size: 0.44rem; color: #111827; font-weight: 700; position: relative; padding-bottom: 0.14rem; margin:0; letter-spacing: 0.02rem; }
.section-title-bar h2:after{ content: ''; position: absolute; bottom: 0; left: 0; width: 0.5rem; height: 3px; background: #1a56db; border-radius: 2px; }
.section-title-bar.text-center{ justify-content: center; }
.section-title-bar.text-center h2:after{ left: 50%; margin-left: -0.25rem; }
.btn-readmore{ font-size: 0.22rem; color: #1a56db; font-weight: 500; padding: 0.1rem 0.28rem; border: 1px solid #c7d2fe; border-radius: 0.06rem; transition: all 0.25s ease; white-space: nowrap; }
.btn-readmore:hover{ background: #1a56db; color: #fff; border-color: #1a56db; }
.btn-readmore span{ transition: transform 0.25s ease; display: inline-block; }
.btn-readmore:hover span{ transform: translateX(3px); }

/* ========== Hero ========== */
.hero-banner{ background: #1a3a5c; padding: 0.8rem 0 1.0rem 0; position: relative; overflow: hidden; min-height: 65vh; display: flex; align-items: center; }
.hero-grid-bg{ position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,0.02) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.02) 1px, transparent 1px); background-size: 0.6rem 0.6rem; mask-image: radial-gradient(ellipse at 40% 50%, black 30%, transparent 70%); pointer-events: none; }
.hero-inner{ width: 15rem; margin: 0 auto; position: relative; z-index: 1; }
.hero-left{ text-align: left; max-width: 11rem; }
.hero-badge{ display: inline-block; background: rgba(26,86,219,0.2); color: #93c5fd; font-size: 0.22rem; padding: 0.08rem 0.28rem; border-radius: 0.04rem; margin-bottom: 0.3rem; letter-spacing: 0.08rem; font-weight: 500; border-left: 3px solid #3b82f6; }
.hero-title{ font-size: 0.64rem; color: #fff; font-weight: 700; line-height: 1.3; margin-bottom: 0.25rem; letter-spacing: 0.03rem; }
.hero-meta{ display: flex; align-items: center; gap: 0.25rem; margin-bottom: 0.3rem; }
.hero-meta span{ font-size: 0.24rem; color: rgba(255,255,255,0.65); }
.hero-meta-sep{ width: 1px; height: 0.18rem; background: rgba(255,255,255,0.2); display: inline-block; }
.hero-summary{ font-size: 0.22rem; color: rgba(255,255,255,0.5); max-width: 9rem; margin-bottom: 0.45rem; line-height: 1.7; }
.hero-btns{ display: flex; gap: 0.2rem; }
.hero-btns a{ font-size: 0.23rem; padding: 0.16rem 0.45rem; border-radius: 0.06rem; font-weight: 500; transition: all 0.25s ease; }
.hero-btn-primary{ background: #1a56db; color: #fff; }
.hero-btn-primary:hover{ background: #1e40af; color: #fff; transform: translateY(-1px); box-shadow: 0 4px 16px rgba(26,86,219,0.35); }
.hero-btn-outline{ border: 1px solid rgba(255,255,255,0.25); color: #fff; }
.hero-btn-outline:hover{ background: rgba(255,255,255,0.06); color: #fff; border-color: rgba(255,255,255,0.5); }
/* 滚动提示 */
.hero-scroll-hint{ position: absolute; bottom: 0.5rem; left: 50%; transform: translateX(-50%); display: flex; flex-direction: column; align-items: center; gap: 0.1rem; z-index: 2; }
.hint-text{ font-size: 0.16rem; color: rgba(255,255,255,0.3); letter-spacing: 0.1rem; }
.hint-line{ width: 1px; height: 0.4rem; background: linear-gradient(to bottom, rgba(201,168,76,0.6), transparent); }

/* ========== 成果简介 ========== */
.intro-section{ background: #fff; }
.intro-content{  }
.intro-text-full{ background: #f9fafb; border-left: 3px solid #1a56db; padding: 0.35rem 0.45rem; border-radius: 0 0.06rem 0.06rem 0; }
.intro-text-full p{ font-size: 0.24rem; text-indent: 2em; text-align: justify; color: #4b5563; margin:0; line-height: 0.5rem; }

/* ========== 粘性卡片堆叠抽出效果 ========== */
.sticky-stack-section{ background: #f0f2f5; padding-bottom: 0.3rem; }
.sticky-stack{ position: relative; padding-bottom: 4rem; }
.stack-card{ position: sticky; background: #fff; border-radius: 0.1rem; overflow: hidden; box-shadow: 0 2px 16px rgba(0,0,0,0.06); margin-bottom: 0; transition: box-shadow 0.4s ease; }
.stack-card:nth-child(1){ top: 1.0rem; z-index: 1; }
.stack-card:nth-child(2){ top: 1.85rem; z-index: 2; }
.stack-card:nth-child(3){ top: 2.7rem; z-index: 3; }
.stack-card:nth-child(4){ top: 3.55rem; z-index: 4; }
.stack-card-header{ display: flex; align-items: center; padding: 0.28rem 0.4rem; background: #fff; position: relative; z-index: 5; }
.stack-card-header h4{ font-size: 0.28rem; color: #1a1f36; margin:0 0 0 0.2rem; font-weight: 700; flex: 1; }
.stack-card-num{ font-size: 0.48rem; font-weight: 800; color: #1a56db; line-height: 1; min-width: 0.7rem; opacity: 0.85; }
.stack-card-body{ padding: 0.1rem 0.4rem 0.35rem 1.3rem; position: relative; z-index: 1; }
.stack-card-body p{ font-size: 0.22rem; color: #4b5563; margin:0 0 0.15rem 0; line-height: 1.75; text-align: justify; }
.stack-card-link{ font-size: 0.2rem; color: #1a56db; font-weight: 600; display: inline-block; margin-top: 0.08rem; }
.stack-card-link:hover{ text-decoration: underline !important; color: #1e40af; }

/* 卡片抽出动画指示 */
.stack-card.is-active{ box-shadow: 0 4px 24px rgba(26,86,219,0.12); }
.stack-card.is-active .stack-card-num{ opacity: 1; }

/* ========== 申报材料 — 侧栏式布局 ========== */
.tab-section-v2{ background: #f8f9fb; padding: 1.0rem 0; }
.tab-layout{ display: flex; gap: 0.5rem; margin-top: 0.5rem; align-items: flex-start; }

/* 左侧垂直导航 */
.tab-sidebar{ width: 3.2rem; flex-shrink: 0; position: sticky; top: 1.6rem; display: flex; flex-direction: column; gap: 0.04rem; background: #fff; border-radius: 0.1rem; padding: 0.08rem; box-shadow: 0 1px 8px rgba(0,0,0,0.04); border: 1px solid #eef1f5; }
.tab-slider{ position: absolute; left: 0.08rem; width: calc(100% - 0.16rem); height: calc(20% - 0.06rem); background: linear-gradient(135deg, #1a56db, #4f46e5); border-radius: 0.07rem; z-index: 0; transition: top 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
.tab-v-btn{ position: relative; z-index: 1; display: flex; align-items: center; gap: 0.18rem; width: 100%; padding: 0.2rem 0.22rem; border: none; background: transparent; cursor: pointer; border-radius: 0.06rem; transition: all 0.35s ease; text-align: left; }
.tab-v-btn.active .tab-v-num,
.tab-v-btn.active .tab-v-label,
.tab-v-btn.active .tab-v-sub,
.tab-v-btn.active .tab-v-arrow{ color: #fff; }
.tab-v-num{ font-size: 0.22rem; font-weight: 800; color: #9ca3af; min-width: 0.36rem; transition: color 0.35s ease; }
.tab-v-text{ flex: 1; min-width: 0; }
.tab-v-label{ display: block; font-size: 0.22rem; font-weight: 600; color: #1a1f36; transition: color 0.35s ease; }
.tab-v-sub{ display: block; font-size: 0.15rem; color: #9ca3af; margin-top: 0.04rem; transition: color 0.35s ease; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.tab-v-arrow{ font-size: 0.18rem; color: #d1d5db; transition: all 0.35s ease; }
.tab-v-btn:not(.active):hover{ background: #f9fafb; }
.tab-v-btn:not(.active):hover .tab-v-label{ color: #1a56db; }
.tab-v-btn:not(.active):hover .tab-v-arrow{ color: #1a56db; transform: translateX(3px); }

/* 右侧内容区 */
.tab-content-stage{ flex: 1; min-width: 0; min-height: 5rem; position: relative; }
.tab-v-panel{ display: none; animation: panelFadeIn 0.45s ease; }
.tab-v-panel.active{ display: block; }
@keyframes panelFadeIn {
	from{ opacity: 0; transform: translateX(20px); }
	to{ opacity: 1; transform: translateX(0); }
}
.panel-header-bar{ display: flex; align-items: center; gap: 0.16rem; margin-bottom: 0.35rem; }
.panel-h-num{ font-size: 0.36rem; font-weight: 800; color: #1a56db; line-height: 1; }
.panel-header-bar h3{ font-size: 0.3rem; color: #111827; font-weight: 700; margin: 0; }
.panel-h-line{ flex: 1; height: 1px; background: linear-gradient(90deg, #e5e7eb, transparent); }

/* 卡片分组 */
.card-group{ margin-bottom: 0.32rem; }
.card-group-label{ display: flex; align-items: center; gap: 0.1rem; font-size: 0.18rem; color: #6b7280; font-weight: 600; margin-bottom: 0.16rem; letter-spacing: 0.04rem; text-transform: uppercase; }
.cgl-dot{ display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: #1a56db; }
.cgl-dot-purple{ background: #7c3aed; }
.cgl-dot-green{ background: #10b981; }

/* Bento 网格 */
.card-bento{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.14rem; }
.bento-card{ position: relative; background: #fff; border: 1px solid #eef1f5; border-radius: 0.08rem; padding: 0.28rem 0.28rem 0.24rem 0.28rem; display: flex; flex-direction: column; gap: 0.12rem; transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); text-decoration: none !important; overflow: hidden; }
.bento-card:before{ content: ''; position: absolute; inset: 0; background: linear-gradient(135deg, transparent 0%, rgba(26,86,219,0.02) 100%); opacity: 0; transition: opacity 0.3s ease; }
.bento-card:hover{ transform: translateY(-3px); box-shadow: 0 8px 24px rgba(26,86,219,0.1); border-color: #c7d2fe; }
.bento-card:hover:before{ opacity: 1; }
.bento-card:hover .bento-arrow{ opacity: 1; transform: translate(2px, -2px); }
.bento-card:hover .bento-num{ background: #1a56db; color: #fff; }
.bento-num{ display: inline-flex; align-items: center; justify-content: center; width: 0.4rem; height: 0.4rem; border-radius: 0.05rem; background: #f3f4f6; color: #6b7280; font-size: 0.18rem; font-weight: 700; flex-shrink: 0; transition: all 0.3s ease; }
.bento-num-icon{ background: #eef2ff; color: #1a56db; font-size: 0.14rem; }
.bento-num-icon:before{ content: '\25CF'; }
.bento-body{ flex: 1; position: relative; z-index: 1; }
.bento-body h5{ font-size: 0.2rem; color: #1a1f36; font-weight: 600; margin: 0 0 0.06rem 0; }
.bento-body p{ font-size: 0.16rem; color: #9ca3af; margin: 0; line-height: 1.5; }
.bento-arrow{ position: absolute; top: 0.2rem; right: 0.2rem; font-size: 0.18rem; color: #1a56db; opacity: 0; transition: all 0.3s ease; }
/* 特色卡片 - 跨列 */
.bento-featured{ grid-column: span 2; background: linear-gradient(135deg, #fafbff 0%, #f0f4ff 100%); border-color: #dde4f9; }
.bento-featured .bento-body h5{ font-size: 0.22rem; }
.bento-wide{ grid-column: span 2; }

/* ========== Back to Top ========== */
.back-to-top{ position: fixed; right: 0.5rem; bottom: 0.8rem; width: 0.56rem; height: 0.56rem; line-height: 0.52rem; text-align: center; background: #1a56db; color: #fff; border-radius: 0.06rem; font-size: 0.32rem; cursor: pointer; z-index: 200; opacity: 0; transform: translateY(15px); transition: all 0.3s ease; box-shadow: 0 4px 12px rgba(26,86,219,0.25); }
.back-to-top.show{ opacity: 1; transform: translateY(0); }
.back-to-top:hover{ background: #1e40af; }

/* ========== Footer ========== */
.footer{ background: #122d4a; padding: 0.18rem 0 0 0; margin-top: 0; color: rgba(255,255,255,0.5); }
.footer-inner{ width: 15rem; margin: 0 auto; }
.footer-main{ display: flex; justify-content: center; padding-bottom: 0.15rem; border-bottom: 1px solid rgba(255,255,255,0.06); }
.footer-info{ display: flex; align-items: center; gap: 0.16rem; white-space: nowrap; }
.footer-info-item{ font-size: 0.18rem; color: rgba(255,255,255,0.45); }
.footer-info-sep{ color: rgba(255,255,255,0.12); font-size: 0.16rem; }
.footer-bottom{ text-align: center; padding: 0.11rem 0; }
.footer-bottom p{ font-size: 0.16rem; color: rgba(255,255,255,0.25); margin:0; }

/* =====================================================================
   内页布局 — 情报档案终端 · 毛玻璃 + 金色点缀
   ===================================================================== */

/* ---- 外层容器 ---- */
.xq-box{
	width: 15rem;
	margin: 0.4rem auto 0.6rem;
	display: flex;
	gap: 0.5rem;
	align-items: flex-start;
	background: transparent;
	padding: 0;
	min-height: 60vh;
}

/* ---- 左侧边栏 · 毛玻璃 ---- */
.xq-left{
	width: 2.48rem;
	flex-shrink: 0;
	position: sticky;
	top: 1.2rem;
	background: rgba(255,255,255,0.72);
	backdrop-filter: blur(14px) saturate(110%);
	-webkit-backdrop-filter: blur(14px) saturate(110%);
	border: 1px solid #e4e7ed;
	padding: 0.32rem 0;
	display: flex;
	flex-direction: column;
	box-shadow: 0 1px 4px rgba(0,0,0,0.04), 0 8px 24px rgba(0,0,0,0.04);
	position: relative;
}
.xq-left:before{
	content: '';
	position: absolute;
	top: 0; left: 0;
	width: 0.22rem; height: 0.22rem;
	border-top: 2px solid #a8813c;
	border-left: 2px solid #a8813c;
	opacity: 0.5;
}
.xq-left-top{
	font-size: 0.22rem;
	font-weight: 700;
	letter-spacing: 0.03rem;
	color: #1a1a1a;
	padding: 0 0.24rem 0.16rem;
	margin: 0 0.2rem 0 0.24rem;
	border-bottom: 1px solid #e4e7ed;
	position: relative;
}
.xq-left-top:after{
	content: '';
	position: absolute;
	bottom: -1px;
	left: 0;
	width: 0.2rem;
	height: 2px;
	background: #a8813c;
}

/* 导航标签 */
.xq-left-nav-label{
	font-size: 0.13rem;
	letter-spacing: 0.03rem;
	color: #909eae;
	padding: 0.22rem 0.24rem 0.08rem;
	font-weight: 700;
	text-transform: uppercase;
}

/* 导航列表 */
.xq-left-nav{
	padding: 0;
}
.xq-left-nav li{
	display: block;
	margin: 0;
	width: 100%;
	border: none;
}
.xq-left-nav li a{
	display: flex;
	align-items: center;
	gap: 0.1rem;
	padding: 0.15rem 0.24rem;
	font-size: 0.18rem;
	font-weight: 600;
	color: #556070;
	letter-spacing: 0.015rem;
	height: auto;
	border-right: 2px solid transparent;
	transition: all 0.25s ease;
	text-decoration: none !important;
	position: relative;
}
.xq-left-nav li a:before{
	content: '';
	width: 0.04rem;
	height: 0.04rem;
	border: 1.5px solid #c8cdd6;
	transform: rotate(45deg);
	flex-shrink: 0;
	transition: all 0.25s ease;
}
.xq-left-nav li a:hover{
	color: #1a1a1a;
	background: rgba(0,0,0,0.02);
	border-right-color: #e4e7ed;
}
.xq-left-nav li a:hover:before{
	border-color: #a0a8b4;
}
.xq-left-nav li.active a{
	color: #1a1a1a;
	background: rgba(168,129,60,0.06);
	border-right-color: #a8813c;
}
.xq-left-nav li.active a:before{
	background: #a8813c;
	border-color: #a8813c;
}

/* 侧边栏底部装饰线 */
.xq-left-accent{
	margin: auto 0.24rem 0;
	height: 1px;
	background: linear-gradient(90deg, #a8813c, transparent 70%);
	opacity: 0.35;
}

/* ---- 右侧内容区 · 毛玻璃 ---- */
.xq-right{
	flex: 1;
	min-width: 0;
	background: rgba(255,255,255,0.72);
	backdrop-filter: blur(14px) saturate(110%);
	-webkit-backdrop-filter: blur(14px) saturate(110%);
	border: 1px solid #e4e7ed;
	padding: 0.44rem 0.56rem;
	box-shadow: 0 1px 4px rgba(0,0,0,0.04), 0 8px 24px rgba(0,0,0,0.04);
	margin-left: 0;
	width: auto;
	position: relative;
	max-width: 11.2rem;
}
.xq-right:before{
	content: '';
	position: absolute;
	top: -1px; left: -1px;
	width: 0.16rem; height: 0.16rem;
	border-top: 2px solid #a8813c;
	border-left: 2px solid #a8813c;
	opacity: 0.45;
	pointer-events: none;
}

/* 面包屑导航 — 档案路径风格 */
.xq-right-tt{
	display: flex;
	align-items: center;
	gap: 0.06rem;
	font-size: 0.12rem;
	color: #909eae;
	letter-spacing: 0.01rem;
	padding-bottom: 0;
	margin-top: 0;
	margin-bottom: 0.24rem;
}
.xq-right-tt a{
	color: #909eae;
	transition: color 0.25s;
}
.xq-right-tt a:hover,.xq-right-tt a.active{
	color: #556070;
}
.xq-right-tt .sep{
	opacity: 0.35;
}

/* 页面标题 — 金色下划线 */
.title-xq{
	font-size: 0.27rem;
	text-align: center;
	margin: 0 0 0.4rem 0;
	letter-spacing: 0.05rem;
	font-weight: 700;
	color: #1a1a1a;
	opacity: 1;
}
.title-xq:after{
	content: '';
	display: block;
	width: 0.36rem;
	height: 2px;
	margin: 0.14rem auto 0;
	background: linear-gradient(90deg, transparent, #a8813c, transparent);
}

/* ---- 轮播图 · 宽幅电影画幅 ---- */
.archive-carousel-section{
	margin-bottom: 0.6rem;
	display: flex;
	gap: 0.16rem;
	align-items: flex-start;
}
.archive-carousel{
	flex: 1;
	order: 2;
	position: relative;
	overflow: hidden;
	background: #1a3a5c;
	cursor: pointer;
	box-shadow: 0 4px 40px rgba(0,0,0,0.12);
}
.archive-carousel-frame-tl{
	position: absolute;
	top: 0.14rem; left: 0.14rem;
	width: 0.24rem; height: 0.24rem;
	border-top: 2px solid rgba(168,129,60,0.55);
	border-left: 2px solid rgba(168,129,60,0.55);
	z-index: 10; pointer-events: none;
}
.archive-carousel-frame-br{
	position: absolute;
	bottom: 0.14rem; right: 0.14rem;
	width: 0.24rem; height: 0.24rem;
	border-bottom: 2px solid rgba(168,129,60,0.55);
	border-right: 2px solid rgba(168,129,60,0.55);
	z-index: 10; pointer-events: none;
}
.archive-carousel-viewport{
	position: relative;
	width: 100%;
	height: 5.2rem;
	overflow: hidden;
}
.archive-carousel-viewport .slide{
	position: absolute;
	inset: 0;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.5s ease;
}
.archive-carousel-viewport .slide.active{ opacity: 1; visibility: visible; }
.archive-carousel-viewport .slide img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
/* 标题栏 — 终端风格 */
.archive-carousel-caption{
	position: absolute;
	bottom: 0; left: 0; right: 0;
	padding: 0.6rem 0.3rem 0.18rem;
	background: linear-gradient(transparent, rgba(0,0,0,0.7));
	font-size: 0.14rem;
	letter-spacing: 0.03rem;
	color: #fff;
	font-weight: 500;
	border-left: 3px solid #a8813c;
	margin: 0 0.2rem 0.2rem 0.2rem;
	border-radius: 0 0 0 0.04rem;
	width: auto;
	right: 0.2rem;
}
/* 箭头 */
.archive-carousel-arrow{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 0.48rem; height: 0.48rem;
	background: rgba(15,23,42,0.7);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border: 1px solid rgba(255,255,255,0.15);
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 10;
	color: rgba(255,255,255,0.8);
	font-size: 0.2rem;
	border-radius: 50%;
	transition: all 0.3s ease;
}
.archive-carousel-arrow:hover{
	background: rgba(168,129,60,0.85);
	border-color: #a8813c;
	color: #fff;
	transform: translateY(-50%) scale(1.08);
}
.archive-carousel-prev{ left: 0.2rem; }
.archive-carousel-next{ right: 0.2rem; }
/* 进度指示条 */
.archive-carousel-dots{
	display: flex;
	gap: 0.06rem;
	justify-content: center;
	padding: 0;
	background: transparent;
	border: none;
	position: absolute;
	bottom: 0; left: 0; right: 0;
	z-index: 10;
}
.archive-carousel-dot{
	width: 0.32rem; height: 0.03rem;
	background: rgba(255,255,255,0.25);
	border: none;
	border-radius: 0.02rem;
	cursor: pointer;
	transition: all 0.35s ease;
	padding: 0;
	transform: none;
}
.archive-carousel-dot.active{ background: #a8813c; width: 0.48rem; }
.archive-carousel-dot:hover:not(.active){ background: rgba(255,255,255,0.5); }
/* 左侧竖向缩略图 */
.archive-carousel-thumbs{
	display: flex;
	flex-direction: column;
	gap: 0.1rem;
	margin: 0;
	justify-content: flex-start;
	width: 1rem;
	flex-shrink: 0;
	order: 1;
	max-height: 5.2rem;
	overflow-y: auto;
}
.archive-carousel-thumb{
	width: 1rem; height: 0.68rem;
	overflow: hidden;
	cursor: pointer;
	border: 2px solid transparent;
	transition: all 0.3s ease;
	opacity: 0.45;
	background: #fff;
	border-radius: 0.04rem;
	flex-shrink: 0;
}
.archive-carousel-thumb.active{ border-color: #a8813c; opacity: 1; box-shadow: 0 0 12px rgba(168,129,60,0.25); }
.archive-carousel-thumb:hover:not(.active){ opacity: 0.8; border-color: #d4d8e0; }
.archive-carousel-thumb img{ width: 100%; height: 100%; object-fit: cover; }

/* 响应式 — 小屏隐藏缩略图 */
@media(max-width:800px){
	.archive-carousel-thumbs{ display: none; }
	.archive-carousel-viewport{ height: 2.8rem; }
}

/* 竖屏轮播 */
.carousel-portrait{
	justify-content: center;
}
.carousel-portrait .archive-carousel{
	flex: 0 0 auto;
	width: 4.2rem;
	max-width: 90vw;
}
.carousel-portrait .archive-carousel-viewport{
	height: 5rem;
}
.carousel-portrait .archive-carousel-viewport .slide img{
	object-fit: contain;
	background: #0d2240;
}
.carousel-portrait .archive-carousel-thumbs{
	order: 2;
}
@media(max-width:800px){
	.carousel-portrait .archive-carousel{
		width: 100%;
	}
	.carousel-portrait .archive-carousel-viewport{
		height: 4rem;
	}
}

	/* ---- 滚动图片画廊 ---- */
	.gallery-section{
		margin: 0.5rem 0 0.3rem;
	}
	.gallery-title{
		font-size: 0.18rem;
		color: #c9a857;
		text-align: center;
		margin-bottom: 0.2rem;
		letter-spacing: 0.04rem;
		position: relative;
	}
	.gallery-title:after{
		content: '';
		display: block;
		width: 0.6rem;
		height: 1px;
		background: rgba(201,168,87,0.4);
		margin: 0.1rem auto 0;
	}
	.gallery-slick .slick-slide{
		padding: 0 0.06rem;
	}
	.gallery-slick .slick-slide img{
		width: 100%;
		height: 2rem;
		object-fit: cover;
		border: 1px solid rgba(168,129,60,0.15);
		background: rgba(0,0,0,0.3);
		cursor: pointer;
	}
	@media(max-width:800px){
		.gallery-slick .slick-slide img{
			height: 1.4rem;
		}
	}
	/* ---- 流动图 ---- */
	.flow-gallery{
		overflow: hidden;
		margin-bottom: 0.3rem;
		position: relative;
		height: 3.16rem;
	}
	.flow-track{
		position: absolute;
		top: 0;
		left: 0;
		white-space: nowrap;
		font-size: 0;
		animation: flowScroll 60s linear infinite;
		will-change: transform;
		backface-visibility: hidden;
		transform: translateZ(0);
	}
	.flow-track .flow-item{
		display: inline-block;
		vertical-align: top;
		height: 3rem;
		aspect-ratio: 9 / 16;
		padding: 0 0.04rem;
	}
	.flow-track .flow-item img{
		width: 100%;
		height: 100%;
		object-fit: cover;
		border: 1px solid rgba(168,129,60,0.15);
		background: rgba(0,0,0,0.3);
		will-change: transform;
		backface-visibility: hidden;
	}
	@keyframes flowScroll{
		0%   { transform: translate3d(0,0,0); }
		100% { transform: translate3d(-50%,0,0); }
	}
	@media(max-width:800px){
		.flow-gallery{ height: 2.16rem; }
		.flow-track .flow-item{
			height: 2rem;
		}
	}

/* ---- 视频列表 ---- */
.video-list{
	list-style: none;
	padding: 0;
	margin: 0;
}
.video-item{
	display: flex;
	align-items: center;
	padding: 0.18rem 0.24rem;
	margin-bottom: 0.12rem;
	background: rgba(255,255,255,0.04);
	border: 1px solid rgba(168,129,60,0.15);
	border-radius: 0.06rem;
	cursor: pointer;
	transition: all 0.3s ease;
}
.video-item:hover{
	background: rgba(168,129,60,0.08);
	border-color: rgba(168,129,60,0.35);
}
.video-num{
	width: 0.4rem;
	height: 0.4rem;
	line-height: 0.4rem;
	text-align: center;
	background: rgba(168,129,60,0.15);
	color: #c9a857;
	border-radius: 50%;
	font-size: 0.14rem;
	font-weight: 600;
	margin-right: 0.2rem;
	flex-shrink: 0;
}
.video-name{
	flex: 1;
	font-size: 0.16rem;
	color: #c9d0d9;
}
.video-arrow{
	color: rgba(168,129,60,0.5);
	font-size: 0.18rem;
	margin-left: 0.15rem;
	transition: color 0.3s;
}
.video-item:hover .video-arrow{
	color: #c9a857;
}

/* 视频弹窗 */
.video-modal-overlay{
	position: fixed;
	top: 0; left: 0; right: 0; bottom: 0;
	background: rgba(0,0,0,0.85);
	z-index: 9999;
	display: none;
	justify-content: center;
	align-items: center;
}
.video-modal-overlay.show{
	display: flex;
}
.video-modal-content{
	position: relative;
	width: 80%;
	max-width: 900px;
	background: #0a1628;
	border: 1px solid rgba(168,129,60,0.25);
	border-radius: 0.08rem;
	padding: 0.3rem;
}
.video-modal-close{
	position: absolute;
	top: 0.08rem; right: 0.15rem;
	background: none;
	border: none;
	color: #fff;
	font-size: 0.32rem;
	cursor: pointer;
	z-index: 2;
}
.video-modal-close:hover{ color: #c9a857; }
.video-modal-title{
	font-size: 0.18rem;
	color: #c9a857;
	margin-bottom: 0.2rem;
	text-align: center;
}
.video-modal-content video{
	border-radius: 0.04rem;
	background: #000;
}
@media(max-width:800px){
	.video-modal-content{
		width: 95%;
		padding: 0.15rem;
	}
}

/* ---- 图片分批加载 ---- */
.img-hidden{ display: none; }
.load-more-bar{
	text-align: center;
	margin: 0.3rem 0;
}
.load-more-btn{
	display: inline-block;
	padding: 0.12rem 0.4rem;
	font-size: 0.16rem;
	color: #c9a857;
	background: transparent;
	border: 1px solid rgba(168,129,60,0.4);
	border-radius: 0.04rem;
	cursor: pointer;
	transition: all 0.3s ease;
}
.load-more-btn:hover{
	background: rgba(168,129,60,0.12);
	color: #e0c87a;
	border-color: rgba(168,129,60,0.7);
}
.load-more-info{
	display: block;
	margin-top: 0.1rem;
	font-size: 0.13rem;
	color: rgba(168,129,60,0.5);
}

/* ---- 文档下载栏 ---- */
.doc-download-bar{
	text-align: center;
	margin: 0.2rem 0 0.35rem;
}
.doc-download-label{
	font-size: 0.16rem;
	color: #8b9dc3;
	vertical-align: middle;
}
.doc-download-btn{
	display: inline-block;
	padding: 0.1rem 0.3rem;
	font-size: 0.16rem;
	color: #c9a857;
	border: 1px solid rgba(168,129,60,0.4);
	border-radius: 0.04rem;
	text-decoration: none;
	vertical-align: middle;
	transition: all 0.3s ease;
}
.doc-download-btn:hover{
	background: rgba(168,129,60,0.12);
	color: #e0c87a;
	border-color: rgba(168,129,60,0.7);
}

/* ---- 文档列表 ---- */
.doc-list{
	list-style: none;
	padding: 0;
	margin: 0;
}
.doc-item{
	display: flex;
	align-items: center;
	padding: 0.18rem 0.24rem;
	margin-bottom: 0.12rem;
	background: rgba(255,255,255,0.04);
	border: 1px solid rgba(168,129,60,0.15);
	border-radius: 0.06rem;
	transition: all 0.3s ease;
}
.doc-item:hover{
	background: rgba(168,129,60,0.08);
	border-color: rgba(168,129,60,0.35);
}
.doc-icon{
	width: 0.4rem;
	height: 0.5rem;
	margin-right: 0.2rem;
	flex-shrink: 0;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.doc-icon-pdf{ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='%23e74c3c' d='M12 2h18l14 14v28a2 2 0 0 1-2 2H12a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2z'/%3E%3Cpath fill='%23c0392b' d='M30 2v14h14'/%3E%3Ctext x='10' y='32' fill='white' font-size='8' font-weight='bold'%3EPDF%3C/text%3E%3C/svg%3E"); }
.doc-icon-word{ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='%232b579a' d='M12 2h18l14 14v28a2 2 0 0 1-2 2H12a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2z'/%3E%3Cpath fill='%231e3f6f' d='M30 2v14h14'/%3E%3Ctext x='7' y='32' fill='white' font-size='7' font-weight='bold'%3EDOC%3C/text%3E%3C/svg%3E"); }
.doc-icon-ppt{ background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='%23d24726' d='M12 2h18l14 14v28a2 2 0 0 1-2 2H12a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2z'/%3E%3Cpath fill='%23b03a1e' d='M30 2v14h14'/%3E%3Ctext x='7' y='32' fill='white' font-size='7' font-weight='bold'%3EPPT%3C/text%3E%3C/svg%3E"); }
.doc-info{
	flex: 1;
	min-width: 0;
}
.doc-name{
	font-size: 0.16rem;
	color: #c9d0d9;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.doc-type{
	font-size: 0.12rem;
	color: rgba(168,129,60,0.6);
	margin-top: 0.04rem;
}
.doc-btn{
	display: inline-block;
	padding: 0.08rem 0.2rem;
	font-size: 0.13rem;
	color: #c9a857;
	border: 1px solid rgba(168,129,60,0.35);
	border-radius: 0.04rem;
	text-decoration: none;
	margin-left: 0.1rem;
	white-space: nowrap;
	transition: all 0.3s ease;
}
.doc-btn:hover{
	background: rgba(168,129,60,0.15);
	color: #e0c87a;
}
.doc-btn.download{
	color: #8ab4f8;
	border-color: rgba(138,180,248,0.35);
}
.doc-btn.download:hover{
	background: rgba(138,180,248,0.12);
	color: #aecafa;
}
@media(max-width:800px){
	.doc-item{
		padding: 0.14rem 0.16rem;
	}
	.doc-name{ font-size: 0.14rem; }
	.doc-btn{ padding: 0.06rem 0.14rem; font-size: 0.12rem; }
}

/* ---- 四层图文 · 档案卡片体系 ---- */
.archive-content-stage{ position: relative; }
/* 层间装饰连线 */
.archive-content-stage:before{
	content: '';
	position: absolute;
	left: 0.24rem; top: 0; bottom: 0;
	width: 1px;
	background: linear-gradient(to bottom,
		transparent 0%,
		rgba(168,129,60,0.18) 5%,
		rgba(168,129,60,0.18) 95%,
		transparent 100%);
	pointer-events: none;
	z-index: 0;
}
/* ---- 通用图文行 ---- */
.archive-info-row{
	display: flex;
	gap: 0;
	margin-bottom: 0.5rem;
	align-items: stretch;
	min-height: 3rem;
	position: relative;
	z-index: 1;
}
.archive-info-row.reverse{ flex-direction: row-reverse; }

/* ---- 图片区 ---- */
.archive-info-img{
	flex: 0 0 50%;
	position: relative;
	overflow: hidden;
	background: #fff;
	cursor: pointer;
}
.archive-info-img:before{
	content: '';
	position: absolute;
	top: 0.12rem; left: 0.12rem;
	width: 0.2rem; height: 0.2rem;
	border-top: 2px solid rgba(168,129,60,0.45);
	border-left: 2px solid rgba(168,129,60,0.45);
	z-index: 2; pointer-events: none;
	transition: all 0.35s ease;
}
.archive-info-img:after{
	content: '';
	position: absolute;
	bottom: 0.12rem; right: 0.12rem;
	width: 0.2rem; height: 0.2rem;
	border-bottom: 2px solid rgba(168,129,60,0.45);
	border-right: 2px solid rgba(168,129,60,0.45);
	z-index: 2; pointer-events: none;
	transition: all 0.35s ease;
}
.archive-info-img:hover:before,
.archive-info-img:hover:after{ border-color: #a8813c; }
.archive-info-img img{
	width: 100%; height: 100%;
	object-fit: cover; display: block;
	transition: transform 0.6s cubic-bezier(0.25,0.46,0.45,0.94);
}
.archive-info-img:hover img{ transform: scale(1.05); }
.archive-info-img .img-label{
	position: absolute;
	bottom: 0; left: 0; right: 0;
	padding: 0.5rem 0.2rem 0.12rem;
	background: linear-gradient(transparent, rgba(0,0,0,0.5));
	font-size: 0.12rem;
	letter-spacing: 0.03rem;
	color: #fff;
	z-index: 1; pointer-events: none;
}

/* ---- 文本面板 · 毛玻璃档案卡 ---- */
.archive-info-text{
	flex: 1;
	background: rgba(255,255,255,0.78);
	backdrop-filter: blur(16px) saturate(120%);
	-webkit-backdrop-filter: blur(16px) saturate(120%);
	border: 1px solid #e4e7ed;
	border-left: none;
	padding: 0.36rem 0.4rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	line-height: 2;
	font-size: 0.14rem;
	color: #3a4450;
	position: relative;
	box-shadow: 0 2px 20px rgba(0,0,0,0.05);
}
.archive-info-row.reverse .archive-info-text{
	border-left: 1px solid #e4e7ed;
	border-right: none;
}
/* 金色角标 */
.archive-info-text:before{
	content: '';
	position: absolute;
	top: 0; left: 0;
	width: 0.2rem; height: 0.2rem;
	border-top: 2px solid #a8813c;
	border-left: 2px solid #a8813c;
	opacity: 0.5;
	pointer-events: none;
}
/* 大号水印序号 */
.archive-info-text:after{
	content: attr(data-num);
	position: absolute;
	right: 0.2rem;
	top: 0.08rem;
	font-size: 0.9rem;
	font-weight: 900;
	color: rgba(168,129,60,0.04);
	line-height: 1;
	pointer-events: none;
	letter-spacing: 0;
}
/* 章节标签 */
.archive-info-text .section-label{
	font-size: 0.11rem;
	letter-spacing: 0.04rem;
	color: #a8813c;
	margin-bottom: 0.14rem;
	font-weight: 700;
	position: relative;
	display: inline-block;
	padding-left: 0.16rem;
}
.archive-info-text .section-label:before{
	content: '';
	position: absolute;
	left: 0; top: 50%;
	transform: translateY(-50%);
	width: 0.06rem; height: 0.06rem;
	background: #a8813c;
	transform: translateY(-50%) rotate(45deg);
}
.archive-info-text p{
	text-indent: 2em;
	margin-bottom: 0.08rem;
}
.archive-info-text p:last-child{ margin-bottom: 0; }

/* Layer 1 特殊：左侧图片无圆角，文本面板有顶部色条 */
#infoRow1 .archive-info-text{
	border-top: 3px solid #1a56db;
}
#infoRow1 .archive-info-img{
	box-shadow: 4px 0 20px rgba(0,0,0,0.06);
}

/* Layer 2 特殊：文本面板有斜切几何背景纹 */
#infoRow2 .archive-info-text{
	background: rgba(255,255,255,0.78);
	background-image:
		linear-gradient(135deg, rgba(168,129,60,0.03) 0%, transparent 50%),
		linear-gradient(225deg, transparent 50%, rgba(168,129,60,0.03) 100%);
	background-repeat: no-repeat;
	border-top: 3px solid #a8813c;
}

/* Layer 3 特殊：宽图上方 + 文本下方 */
#infoRow3{
	flex-direction: column;
	min-height: auto;
}
#infoRow3 .archive-info-img{
	flex: none;
	width: 100%;
	height: 3.4rem;
}
#infoRow3 .archive-info-text{
	border: 1px solid #e4e7ed;
	border-top: 3px solid #7c3aed;
	margin: -0.1rem 0.3rem 0 0.3rem;
	position: relative;
	z-index: 1;
	box-shadow: 0 -4px 20px rgba(0,0,0,0.06), 0 2px 20px rgba(0,0,0,0.05);
}

/* 标签组 */
.archive-tag-group{
	display: flex;
	flex-wrap: wrap;
	gap: 0.08rem;
	margin-top: 0.16rem;
	padding-top: 0.14rem;
	border-top: 1px solid rgba(0,0,0,0.05);
}
.archive-tag-gold{
	background: rgba(168,129,60,0.08);
	color: #8a6428;
	border: 1px solid rgba(168,129,60,0.3);
	padding: 0.06rem 0.14rem;
	font-size: 0.115rem;
	letter-spacing: 0.02rem;
	font-weight: 600;
	transition: all 0.25s ease;
	border-radius: 0.03rem;
}
.archive-tag-gold:hover{
	background: rgba(168,129,60,0.18);
	border-color: rgba(168,129,60,0.55);
	transform: translateY(-1px);
	box-shadow: 0 2px 8px rgba(168,129,60,0.15);
}
.archive-tag-blue{
	background: rgba(26,86,219,0.06);
	color: #1a56db;
	border: 1px solid rgba(26,86,219,0.25);
	padding: 0.06rem 0.14rem;
	font-size: 0.115rem;
	letter-spacing: 0.02rem;
	font-weight: 600;
	transition: all 0.25s ease;
	border-radius: 0.03rem;
}
.archive-tag-blue:hover{
	background: rgba(26,86,219,0.14);
	border-color: rgba(26,86,219,0.45);
	transform: translateY(-1px);
	box-shadow: 0 2px 8px rgba(26,86,219,0.15);
}

/* ---- 第四层 · 毛玻璃档案总结卡 ---- */
.archive-info-full{
	background: rgba(255,255,255,0.78);
	backdrop-filter: blur(16px) saturate(120%);
	-webkit-backdrop-filter: blur(16px) saturate(120%);
	border: 1px solid #e4e7ed;
	border-top: 3px solid #a8813c;
	padding: 0.4rem 0.45rem;
	line-height: 2;
	font-size: 0.14rem;
	color: #3a4450;
	position: relative;
	margin-bottom: 0.16rem;
	box-shadow: 0 2px 20px rgba(0,0,0,0.05);
	z-index: 1;
}
/* 双角金色装饰 */
.archive-info-full:before{
	content: '';
	position: absolute;
	top: 0; left: 0;
	width: 0.2rem; height: 0.2rem;
	border-top: 2px solid #a8813c;
	border-left: 2px solid #a8813c;
	opacity: 0.5;
	pointer-events: none;
	z-index: 1;
}
.archive-info-full .section-label{
	font-size: 0.11rem;
	letter-spacing: 0.04rem;
	color: #a8813c;
	margin-bottom: 0.14rem;
	font-weight: 700;
	position: relative;
	z-index: 1;
	display: inline-block;
	padding-left: 0.16rem;
}
.archive-info-full .section-label:before{
	content: '';
	position: absolute;
	left: 0; top: 50%;
	width: 0.06rem; height: 0.06rem;
	background: #a8813c;
	transform: translateY(-50%) rotate(45deg);
}
.archive-info-full p{
	text-indent: 2em;
	margin-bottom: 0.08rem;
	position: relative;
	z-index: 1;
}
.archive-info-full p:last-child{ margin-bottom: 0; }
.archive-info-full .special-title{
	font-size: 0.16rem;
	font-weight: 700;
	color: #1a1a1a;
	letter-spacing: 0.02rem;
	display: flex;
	align-items: center;
	gap: 0.1rem;
	margin-bottom: 0.12rem;
	position: relative;
	z-index: 1;
}
.archive-info-full .special-title:before{
	content: '';
	width: 0.03rem;
	height: 0.15rem;
	background: #a8813c;
	display: block;
}

/* ---- 灯箱 ---- */
.lightbox-overlay{
	position: fixed;
	inset: 0;
	background: rgba(8,10,16,0.92);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease, visibility 0.3s ease;
}
.lightbox-overlay.show{ opacity: 1; visibility: visible; }
.lightbox-content{
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	max-width: 90vw;
	max-height: 85vh;
	transform: scale(0.93);
	transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.lightbox-overlay.show .lightbox-content{ transform: scale(1); }
.lightbox-content img{
	display: block;
	max-width: 90vw;
	max-height: 85vh;
	width: auto;
	height: auto;
	min-width: 2rem;
	min-height: 2rem;
	object-fit: contain;
	border: 1px solid rgba(255,255,255,0.1);
}
.lightbox-content:before{
	content: '';
	position: absolute;
	top: 0.06rem; left: 0.06rem;
	width: 0.14rem; height: 0.14rem;
	border-top: 1.5px solid rgba(255,255,255,0.25);
	border-left: 1.5px solid rgba(255,255,255,0.25);
	pointer-events: none; z-index: 1;
}
.lightbox-content:after{
	content: '';
	position: absolute;
	bottom: 0.06rem; right: 0.06rem;
	width: 0.14rem; height: 0.14rem;
	border-bottom: 1.5px solid rgba(255,255,255,0.25);
	border-right: 1.5px solid rgba(255,255,255,0.25);
	pointer-events: none; z-index: 1;
}
.lightbox-close{
	position: absolute;
	top: -0.34rem; right: 0;
	background: none;
	border: none;
	color: rgba(255,255,255,0.55);
	cursor: pointer;
	font-size: 0.26rem;
	transition: color 0.2s;
	line-height: 1;
	padding: 0;
}
.lightbox-close:hover{ color: #fff; }
.lightbox-caption{
	text-align: center;
	color: rgba(255,255,255,0.55);
	margin-top: 0.12rem;
	font-size: 0.11rem;
	letter-spacing: 0.02rem;
}

/* ---- 概览标题（从 CMS 内容提取的标题） ---- */
.archive-overview-heading{
	text-align: center;
	margin-bottom: 0.28rem;
}
.archive-overview-heading .overview-label{
	display: inline-block;
	font-size: 0.22rem;
	font-weight: 700;
	color: #1a1a1a;
	letter-spacing: 0.04rem;
	padding: 0.08rem 0.24rem;
	border-bottom: 2px solid #a8813c;
	background: linear-gradient(to bottom, transparent 60%, rgba(168,129,60,0.08));
}

/* ---- 档案页脚 ---- */
.archive-footer{
	text-align: center;
	padding: 0.3rem 0 0.1rem;
	color: #909eae;
	font-size: 0.11rem;
	letter-spacing: 0.03rem;
	position: relative;
}
.archive-footer:before{
	content: '';
	display: block;
	width: 0.6rem;
	height: 1px;
	margin: 0 auto 0.18rem;
	background: linear-gradient(90deg, transparent, #a8813c, transparent);
	opacity: 0.4;
}
.zx-ul-tt a{ font-size: 0.24rem; display: block; color: #1a56db; font-weight: 600; padding-left: 0.4rem; background: url(../images/li.png) left center no-repeat; background-size: 0.3rem auto; transition: color 0.25s; }
.zx-ul-tt a:hover{ color: #1e40af; }
.zx-ul-p{ font-size: 0.18rem; margin-left: 0.45rem; margin-top: 0.2rem; }
.zx-ul li{ padding:0.2rem 0; border-bottom: dashed 1px #979797; }
.zx-ul-b p{ font-size: 0.18rem; color: #1a56db; font-weight: bold; margin:0; }
.zx-ul-b{ margin-top: 0.2rem; margin-left: 0.45rem; }

.tp-ul{ display: flex; flex-wrap: wrap; margin:0 -0.35rem; }
.tp-ul li{ flex: 0 0 33.333333%; padding:0 0.35rem; margin-bottom: 0.35rem; }
.tp-ul-img img{ width: 100%; height: 2.95rem; border-radius: 0.06rem 0.06rem 0 0; object-fit: cover; }
.tp-ul-b{ background: #fff; padding:0.25rem 0.2rem; font-size: 0.2rem; box-shadow: 0 1px 8px rgba(0,0,0,0.06); border-radius: 0.08rem; border: 1px solid #eef1f5; margin-top: 0.15rem; transition: all 0.3s ease; }
.tp-ul li a:hover .tp-ul-b{ box-shadow: 0 4px 16px rgba(26,86,219,0.1); border-color: #c7d2fe; transform: translateY(-2px); }
.tp-ul-b p{ margin:0; color: #1a1f36; font-weight: 600; }
.title-xq{ font-size: 0.38rem; color: #111827; font-weight: 700; margin:0 0 0.38rem 0; letter-spacing: 0.02rem; opacity: 1; }

#content { width: 500px; height: 170px; margin: 100px auto; }
#imgbox-loading { position: absolute; top: 0; left: 0; cursor: pointer; display: none; z-index: 90; }
#imgbox-loading div { background: #FFF; width: 100%; height : 100%; }
#imgbox-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #000; display: none; z-index: 80; }
.imgbox-wrap { position: absolute; height: auto!important; top: 0; left: 0; background: #FFF; display: none; z-index: 90; }
.imgbox-img { padding: 0; margin: 0; border: none; width: 100%; height: 100%; vertical-align: top; }
.imgbox-title { padding-top: 10px; font-size: 11px; text-align: center; font-family: Arial; color: #333; display: none; }
.imgbox-bg-wrap { position: absolute; padding: 0; margin: 0; display: none; }
.imgbox-bg { position: absolute; width: 20px; height: 20px; }
.page-box ul{ display: inline-block;  }
.page-box ul li a{ width: 0.44rem; display: block; border-radius: 0.12rem; height: 0.44rem; line-height: 0.4rem; border:solid 0.02rem #fff; font-size: 0.22rem; color: #1a56db; font-weight: bold; }
.page-box ul li{ display: block; float: left; margin:0.05rem; }
.page-box ul li.active a{ color: #fff; border-color: #1a56db; background: #1a56db; }
.page-box ul li a:hover{ color: #fff; border-color: #1a56db; background: #1a56db; }
.page-box ul li a.next,.page-box ul li a.next:hover{color: #1a56db; border-color: #fff; background: url(../images/raw-b.png) right center no-repeat; padding-right: 0.44rem; background-size: 0.28rem auto; width: auto; }
.ls-ul li{ float: left; width: 50%; padding:0 0.35rem; margin-bottom: 0.35rem; }
.ls-ul{ margin:0 -0.35rem; }
.ls-ul-img img{ width: 1.23rem; height: 1.64rem; border-radius: 0.06rem; object-fit: cover; }
.ls-ul-right{ margin-left: 1.45rem; }
.ls-ul-right-tt a{ font-size: 0.22rem; display: block; color: #1a56db; font-weight: 600; transition: color 0.25s; }
.ls-ul-right-tt a:hover{ color: #1e40af; }
.ls-ul-p{ font-size: 0.24rem; display: block; color: #000; font-weight: bold; margin-top: 0.2rem; }

.neirong{font-size: 0.14rem; margin-bottom: 0.2rem; color: #3a4450; text-align: justify; line-height: 1.9;}
.neirong img{display: inline; border-radius: 0.04rem;}
.neirong p{margin-bottom: 0.1rem; text-indent: 2em;}
.neirong h5{font-size: 0.18rem; margin-bottom: 0.15rem;}

/* PB分页 */
.pagebar .pagination { display: flex; justify-content: center; margin-top: 10px; }
.pagination a { background: #fff; border: 1px solid #1a56db; color: #1a56db; font-size: 14px; padding: 8px 12px; margin: 0 5px; border-radius: 3px; }
.pagination span { color: #1a56db; font-size: 14px; padding: 8px 2px; margin: 0 5px; border-radius: 3px; }
.pagination a:hover { color: #023258; border: 1px solid #023258; }
.pagination a.page-num-current { color: #fff; background: #1a56db; border: 1px solid #1a56db; }

/* ========== 滚动进度条 ========== */
.scroll-progress{ position: fixed; top: 0; left: 0; height: 3px; background: linear-gradient(90deg, #1a56db, #4f46e5, #7c3aed); z-index: 9999; width: 0; border-radius: 0 2px 2px 0; transition: width 0.15s linear; }

/* ========== Hero 浮动几何装饰 ========== */
.hero-float-shapes{ position: absolute; inset: 0; pointer-events: none; z-index: 0; }
.hero-float{ position: absolute; border-radius: 50%; opacity: 0.06; }
.hero-float-1{ width: 3rem; height: 3rem; background: #3b82f6; top: 15%; right: 10%; animation: heroFloat1 7s ease-in-out infinite; }
.hero-float-2{ width: 1.5rem; height: 1.5rem; background: #6366f1; top: 55%; right: 28%; animation: heroFloat2 9s ease-in-out infinite; }
.hero-float-3{ width: 2.2rem; height: 2.2rem; background: #8b5cf6; top: 30%; right: 42%; animation: heroFloat3 8s ease-in-out infinite; }
.hero-float-4{ width: 1rem; height: 1rem; background: #a78bfa; top: 65%; right: 55%; animation: heroFloat1 6s ease-in-out infinite; }
.hero-float-5{ width: 1.8rem; height: 1.8rem; background: #60a5fa; top: 10%; right: 62%; animation: heroFloat2 10s ease-in-out infinite; }
.hero-float-6{ width: 0.7rem; height: 0.7rem; background: #c084fc; top: 75%; right: 18%; animation: heroFloat3 5s ease-in-out infinite; border-radius: 30%; }

@keyframes heroFloat1 {
	0%, 100%{ transform: translateY(0) rotate(0deg) scale(1); }
	33%{ transform: translateY(-0.5rem) rotate(15deg) scale(1.08); }
	66%{ transform: translateY(0.3rem) rotate(-10deg) scale(0.94); }
}
@keyframes heroFloat2 {
	0%, 100%{ transform: translateY(0) translateX(0) rotate(0deg); }
	50%{ transform: translateY(-0.6rem) translateX(0.2rem) rotate(12deg); }
}
@keyframes heroFloat3 {
	0%, 100%{ transform: translateY(0) rotate(0deg) scale(1); }
	25%{ transform: translateY(0.3rem) rotate(-8deg) scale(1.05); }
	75%{ transform: translateY(-0.4rem) rotate(10deg) scale(0.95); }
}

/* ========== Hero 徽章光晕脉冲 ========== */
.hero-badge{ animation: badgeGlow 3s ease-in-out infinite; }
@keyframes badgeGlow {
	0%, 100%{ box-shadow: 0 0 0 0 rgba(59,130,246,0); }
	50%{ box-shadow: 0 0 20px 2px rgba(59,130,246,0.25), 0 0 4px 1px rgba(147,197,253,0.15); }
}

/* ========== Section 标题下划线入场动画 ========== */
.section-title-bar h2:after{
	transition: width 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.section-title-bar h2.is-underline-hidden:after{ width: 0 !important; }

/* ========== 3D 卡片悬浮效果 ========== */
/* ========== 3D 卡片悬浮效果 ========== */
.stack-card{ transition: box-shadow 0.4s ease, transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
.stack-card:hover{ transform: translateY(-0.08rem); box-shadow: 0 12px 36px rgba(0,0,0,0.1); }
.stack-card .stack-card-num{ transition: opacity 0.35s ease, transform 0.35s ease; }
.stack-card:hover .stack-card-num{ transform: scale(1.08); }

.tab-link-item{ transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
.tab-link-item:hover{ transform: translateY(-0.04rem) scale(1.02); box-shadow: 0 8px 24px rgba(26,86,219,0.08); }

/* ========== 回到顶部按钮脉冲 ========== */
.back-to-top.show{ animation: bttPulse 2s ease-in-out infinite; }
@keyframes bttPulse {
	0%, 100%{ box-shadow: 0 4px 12px rgba(26,86,219,0.25); }
	50%{ box-shadow: 0 4px 24px rgba(26,86,219,0.45), 0 0 0 6px rgba(26,86,219,0.08); }
}

/* ========== GSAP 动画配合 ========== */
.hero-badge, .hero-title, .hero-meta, .hero-summary, .hero-btns,
.stat-item, .intro-content, .stack-card, .tab-nav-wrap, .tab-link-item,
.tab-group-label, .tl-item, .section-title-bar{ will-change: transform, opacity; }

/* ========== 数据指标行 ========== */
.stats-section{ background: #1a3a5c; padding: 1.0rem 0; position: relative; overflow: hidden; }
.stats-section:before{ content: ''; position: absolute; inset: 0; background: radial-gradient(ellipse at 50% 0%, rgba(26,86,219,0.08) 0%, transparent 60%); pointer-events: none; }
.stats-row{ display: flex; gap: 0.6rem; justify-content: center; flex-wrap: wrap; width: 15rem; margin: 0 auto; position: relative; z-index: 1; }
.stat-item{ text-align: center; min-width: 2rem; padding: 0.3rem; }
.stat-num{ font-size: 0.72rem; font-weight: 800; color: #fff; letter-spacing: 0.02rem; line-height: 1.1; font-family: "SF Mono","Cascadia Code","Consolas",monospace; }
.stat-num .stat-accent{ color: #c9a84c; }
.stat-label{ font-size: 0.2rem; color: rgba(255,255,255,0.45); letter-spacing: 0.06rem; margin-top: 0.12rem; text-transform: uppercase; }
.stat-divider{ width: 1px; height: 0.8rem; background: rgba(255,255,255,0.08); align-self: center; }

/* ========== 教学改革时间线 ========== */
.timeline-section{ background: #fff; padding: 1.0rem 0; }
.timeline-wrap{ width: 15rem; margin: 0.5rem auto 0; position: relative; }
.timeline-bar{ position: absolute; left: 50%; top: 0; width: 2px; height: 100%; background: #e5e7eb; transform: translateX(-50%); }
.timeline-bar-fill{ position: absolute; left: 50%; top: 0; width: 2px; height: 0; background: linear-gradient(to bottom, #1a56db, #4f46e5); transform: translateX(-50%); z-index: 1; }
.tl-item{ display: flex; align-items: flex-start; margin-bottom: 0.7rem; position: relative; z-index: 2; }
.tl-item:nth-child(odd){ flex-direction: row; padding-right: 52%; }
.tl-item:nth-child(even){ flex-direction: row-reverse; padding-left: 52%; }
.tl-dot{ position: absolute; left: 50%; top: 0.12rem; width: 0.16rem; height: 0.16rem; border-radius: 50%; background: #1a56db; transform: translateX(-50%); z-index: 3; box-shadow: 0 0 0 0.06rem rgba(26,86,219,0.15); }
.tl-year{ font-size: 0.2rem; color: #1a56db; font-weight: 700; letter-spacing: 0.04rem; margin-bottom: 0.08rem; }
.tl-content{ background: #f9fafb; border: 1px solid #eef1f5; border-radius: 0.08rem; padding: 0.28rem 0.32rem; border-left: 3px solid #1a56db; }
.tl-item:nth-child(even) .tl-content{ border-left: none; border-right: 3px solid #1a56db; }
.tl-content h4{ font-size: 0.24rem; color: #111827; font-weight: 700; margin:0 0 0.08rem 0; }
.tl-content p{ font-size: 0.18rem; color: #6b7280; margin:0; line-height: 1.6; }



/* ========== 成果报告卡片增强 ========== */
.sticky-stack-section{ position: relative; }
.sticky-stack-section:before{ content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: radial-gradient(ellipse at 50% 30%, rgba(26,86,219,0.03) 0%, transparent 60%); pointer-events: none; }
.stack-card:after{ content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, #1a56db, #4f46e5, #7c3aed); transform: scaleX(0); transform-origin: left; transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
.stack-card.is-active:after{ transform: scaleX(1); }
.stack-card:nth-child(2):after{ background: linear-gradient(90deg, #3b82f6, #60a5fa, #93c5fd); }
.stack-card:nth-child(3):after{ background: linear-gradient(90deg, #10b981, #34d399, #6ee7b7); }
.stack-card:nth-child(4):after{ background: linear-gradient(90deg, #8b5cf6, #a78bfa, #c4b5fd); }

/* ========== 申报材料区域顶部装饰线 ========== */
.tab-section-v2{ position: relative; }
.tab-section-v2:before{ content: ''; position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 4rem; height: 1px; background: linear-gradient(90deg, transparent, #c7d2fe, transparent); }

/* ========== Section 间距装饰线 ========== */
.section{ position: relative; }
.intro-section:before{ content: ''; position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 3rem; height: 1px; background: linear-gradient(90deg, transparent, #c7d2fe, transparent); }


/* 响应式 */
@media( max-width: 768px){
	body{ width: 19.2rem; }
	.header-inner{ width: auto; padding-left: 0.24rem; padding-right: 0.24rem; }
	.header:before{ display: none; }
	.logo-img:after{ display: none; }
	.logo-img img{ width: 0.6rem; }
	.site-header.is-compact .logo-img img{ width: 0.36rem; }
	.logo-text h3{ font-size: 0.22rem; }
	.logo-text p{ font-size: 0.14rem; max-width: 6rem; }
	.header-nav{ gap: 0; overflow-x: auto; -webkit-overflow-scrolling: touch; }
	.header-nav li a{ font-size: 0.18rem; padding: 0.06rem 0.14rem; }
	.logo-text p{ display: none; }
	.hero-banner{ min-height: auto; padding: 0.8rem 0 1.2rem 0; }
		.module-nav-inner{ overflow-x: auto; -webkit-overflow-scrolling: touch; width: auto; padding: 0 0.2rem; }
		.module-nav-inner a{ font-size: 0.16rem; padding: 0.14rem 0.2rem; }
	.hero-title{ font-size: 0.48rem; }
	.stats-row{ gap: 0.3rem; }
	.stat-divider{ display: none; }
	.stat-num{ font-size: 0.52rem; }
	.timeline-wrap{ width: auto; padding: 0 0.3rem; }
	.timeline-bar, .timeline-bar-fill{ left: 0.3rem; }
	.tl-item:nth-child(odd){ padding-right: 0; padding-left: 0.7rem; flex-direction: row; }
	.tl-item:nth-child(even){ padding-left: 0.7rem; flex-direction: row; }
	.tl-dot{ left: 0.3rem; }
	.stack-card-header{ padding:0.25rem 0.3rem; }
	.stack-card-header h4{ font-size:0.24rem; }
	.stack-card-body{ padding:0 0.3rem 0.25rem 1rem; }
	.tab-layout{ flex-direction: column; }
	.tab-sidebar{ width: 100%; position: static; flex-direction: row; flex-wrap: wrap; gap: 0.08rem; padding: 0.12rem; }
	.tab-slider{ display: none; }
	.tab-v-btn{ width: auto; flex: 1; min-width: 1.5rem; justify-content: center; padding: 0.16rem 0.2rem; }
	.tab-v-sub{ display: none; }
	.tab-v-arrow{ display: none; }
	.card-bento{ grid-template-columns: repeat(2, 1fr); }
	.bento-featured,.bento-wide{ grid-column: span 2; }
	.footer-inner{ width: auto; padding:0 0.3rem; }
	.footer-info{ flex-wrap: wrap; justify-content: center; }
	/* 内页响应式 */
	.xq-box{ flex-direction: column; width: auto; margin: 0.3rem 0.24rem; gap: 0.3rem; }
	.xq-left{ width: 100%; position: static; }
	.xq-left-nav{ display: flex; flex-wrap: wrap; gap: 0.08rem; padding: 0.12rem; }
	.xq-left-nav li{ margin: 0; }
	.xq-left-nav li a{ padding: 0.16rem 0.2rem; font-size: 0.24rem; font-weight: 600; }
	.xq-left-nav li a:before{ display: none; }
	.xq-right{ padding: 0.3rem 0.3rem; }
	.xq-right-tt{ font-size: 0.18rem; flex-wrap: wrap; }
	.title-xq{ font-size: 0.3rem; }
	.neirong{ font-size: 0.2rem; }
	.tp-ul li{ flex: 0 0 50%; padding: 0 0.15rem; margin-bottom: 0.25rem; }
	.tp-ul{ margin: 0 -0.15rem; }
	.tp-ul-img img{ height: 2rem; }
	.ls-ul li{ width: 100%; }
	.ls-ul-img img{ width: 1rem; height: 1.33rem; }
	.ls-ul-right{ margin-left: 1.2rem; }
	/* 档案终端响应式 */
	.xq-left{ backdrop-filter: none; -webkit-backdrop-filter: none; }
	.xq-left:before{ display: none; }
	.xq-left-nav li a{ border-right: none; border-bottom: 2px solid transparent; }
	.xq-left-nav li.active a{ border-right: none; border-bottom-color: #a8813c; }
	.xq-right{ backdrop-filter: none; -webkit-backdrop-filter: none; max-width: none; }
	.xq-right:before{ display: none; }
	.archive-carousel-viewport{ height: 2.5rem; }
	.archive-info-row{ flex-direction: column !important; min-height: auto; }
	.archive-info-img{ flex: 0 0 auto !important; height: 2.2rem; width: 100% !important; }
	.archive-info-text{ font-size: 0.16rem; padding: 0.24rem; border-left: 1px solid #e4e7ed !important; }
	.archive-info-text:after{ display: none; }
	.archive-info-full{ padding: 0.28rem; font-size: 0.16rem; }
	.archive-carousel-thumbs{ display: none; }
	.archive-carousel-viewport{ height: 2.8rem; }
	#infoRow3 .archive-info-text{ margin: 0; }
}
