/* ==========================================================
   站点主题样式（全站前台页面统一） —— 对齐参考稿（2026-09-18 版）
   ----------------------------------------------------------
   仅覆盖视觉样式，不改动任何 HTML 结构、文案与脚本逻辑。
   色板沿用参考稿的 Okabe–Ito 色觉障碍安全色：
   深蓝主色 #0072B2 / 天蓝 #56B4E9 / 橙 #E69F00
   ========================================================== */
:root {
	--ink: #1b2a38;
	--ink-soft: #4a5d70;
	--ink-mute: #6b7f92;
	--primary: #0072B2;
	--primary-dark: #00527f;
	--primary-soft: #e8f2fa;
	--sky: #56B4E9;
	--sky-soft: #eaf6fd;
	--orange: #E69F00;
	--orange-ink: #7a5200;
	--orange-soft: #fdf3dd;
	--teal: #009E73;
	--teal-soft: #e4f5ef;
	--line: #dfe8f0;
	--bg: #f4f8fc;
	--radius-card: 18px;
	--shadow-sm: 0 2px 6px rgba(15, 40, 60, .05), 0 10px 24px rgba(15, 40, 60, .05);
	--shadow-md: 0 6px 14px rgba(15, 40, 60, .08), 0 18px 38px rgba(15, 40, 60, .10);
	--transition-smooth: all .25s cubic-bezier(.2, 0, 0, 1);
}

body {
	background:
		radial-gradient(1000px 500px at 85% -10%, rgba(86, 180, 233, .14), transparent 60%),
		radial-gradient(900px 480px at -10% 0%, rgba(0, 114, 178, .10), transparent 55%),
		var(--bg);
	color: var(--ink);
}

/* ---------- 顶部菜单栏 ---------- */
.top-nav {
	background: linear-gradient(135deg, #152535 0%, #0d1a27 100%);
	border-bottom: 3px solid var(--primary);
	box-shadow: 0 6px 18px rgba(10, 25, 40, .25);
}

.logo {
	gap: 12px;
	font-size: 1.2rem;
	letter-spacing: .5px;
	padding: 12px 0;
}

/* 站点标识：主名下方补一行英文副标题 */
.logo > span {
	display: flex;
	flex-direction: column;
	line-height: 1.2;
}

.logo > span::after {
	content: "DATA SHARING LIBRARY";
	font-size: .62rem;
	font-weight: 500;
	color: #9fc3dc;
	letter-spacing: 2px;
	margin-top: 2px;
}

.nav-links {
	gap: 4px;
}

.top-nav .nav-links a {
	color: rgba(255, 255, 255, .88);
	padding: 8px 16px;
	border: 1px solid transparent;
	border-radius: 40px;
}

.top-nav .nav-links a:hover {
	background: rgba(255, 255, 255, .12);
	color: #fff;
}

.top-nav .nav-links a.active {
	background: var(--primary);
	color: #fff;
	box-shadow: 0 3px 10px rgba(0, 114, 178, .45);
}

.top-nav .nav-links a.highlight {
	background: rgba(230, 159, 0, .16);
	color: #ffd98a;
	border-color: rgba(230, 159, 0, .35);
}

.top-nav .nav-links a.highlight:hover {
	background: rgba(230, 159, 0, .3);
	color: #ffe7b3;
}

/* 顶栏登录 / 注册按钮 */
.top-nav .user-btn {
	background: transparent;
	border: 1px solid rgba(255, 255, 255, .35);
	font-weight: 600;
}

.top-nav .user-btn:hover {
	background: rgba(255, 255, 255, .14);
	transform: none;
}

.top-nav .user-btn.primary {
	background: var(--primary);
	border-color: var(--primary);
}

.top-nav .user-btn.primary:hover {
	background: #0084cd;
	border-color: #0084cd;
}

/* ---------- 区域标题：左侧色条 + 底部细线 ---------- */
.module-title {
	border-left: none;
	padding-left: 0;
	padding-bottom: 14px;
	margin-bottom: 14px;
	border-bottom: 2px solid var(--primary-soft);
	font-size: 1.12rem;
	font-weight: 700;
	color: var(--ink);
	gap: 10px;
}

.module-title::before {
	content: "";
	width: 5px;
	height: 20px;
	border-radius: 4px;
	background: var(--primary);
	flex-shrink: 0;
}

.module-title i {
	margin-right: 0;
	font-size: 1.15rem;
	color: var(--primary);
}

/* ---------- 卡片 ---------- */
.module-card {
	border-color: var(--line);
	padding: 22px 24px;
}

.module-card:hover {
	border-color: rgba(0, 114, 178, .35);
}

/* ---------- 公告条 ---------- */
.notice-bar {
	background: linear-gradient(135deg, var(--orange-soft), #fff9ec);
	border: 1px solid #f3dfae;
	border-radius: 14px;
	height: auto;
	padding: 9px 16px;
	margin: 22px 0 6px;
}

.notice-icon {
	background: var(--orange);
	color: #3d2b00;
	font-weight: 700;
	border-radius: 30px;
	padding: 5px 14px;
}

.notice-scroll {
	height: 30px;
}

.notice-list li {
	color: var(--orange-ink);
	font-size: .84rem;
	line-height: 30px;
}

.notice-more {
	color: var(--orange-ink);
	font-weight: 600;
	border-radius: 30px;
	padding: 5px 12px;
}

.notice-more:hover {
	background: rgba(230, 159, 0, .18);
	color: var(--orange-ink);
}

/* ---------- 新闻条目 ---------- */
.news-list li {
	padding: 13px 10px;
	margin: 0 -10px;
	border-bottom: 1px dashed var(--line);
	border-radius: 12px;
}

.news-list li:hover {
	background: var(--sky-soft);
	padding: 13px 10px;
	margin: 0 -10px;
	transform: translateX(3px);
}

.news-title {
	color: var(--ink);
	font-weight: 500;
}

.news-date {
	background: var(--bg);
	border: 1px solid var(--line);
	color: var(--ink-soft);
	padding: 3px 12px;
}

/* 标签改为软底色（HTML 里写死的行内色在此统一覆盖） */
.news-list .tag {
	border: 1px solid transparent;
	letter-spacing: .5px;
	padding: 3px 10px;
}

.news-list .tag-new {
	background: var(--sky-soft) !important;
	color: #0b6a9d !important;
	border-color: #a8d8f0 !important;
}

.news-list .tag-hot {
	background: var(--orange-soft) !important;
	color: var(--orange-ink) !important;
	border-color: #ecc878 !important;
}

.news-list .tag-top {
	background: var(--primary-soft) !important;
	color: var(--primary-dark) !important;
	border-color: #bcd9ee !important;
}

/* ---------- 资料卡片 ---------- */
.doc-preview-area {
	background: linear-gradient(145deg, #eef6fc 0%, #e2eef8 100%);
	border-bottom-color: var(--line);
}

.preview-image {
	box-shadow: 0 8px 20px rgba(10, 40, 70, .12);
}

.doc-card-item:hover .preview-image {
	transform: translateY(-4px) scale(1.02);
}

.doc-badge {
	color: var(--primary-dark);
	font-weight: 700;
}

.doc-title {
	color: var(--ink);
}

.doc-desc {
	color: var(--ink-soft);
}

.doc-meta {
	color: var(--ink-mute);
}

.read-btn {
	border-radius: 40px;
	font-weight: 600;
}

.more-btn-outline {
	color: var(--primary-dark);
	font-weight: 700;
}

.more-btn-outline:hover {
	box-shadow: 0 10px 22px rgba(0, 114, 178, .28);
}

.extra-resource {
	background: var(--sky-soft);
	border-color: #c9e6f7;
	border-radius: 14px;
}

.footer-elegant {
	border-top-color: var(--line);
	color: var(--ink-mute);
}
