/*
Theme Name: Timeline Theme 时间线主题
Description: 记录重大新闻与政策时间节点的时间线主题。需配合插件"Timeline Events 事件核心"使用。
Version: 0.1.0
Requires PHP: 7.4
Text Domain: timeline-theme
*/

:root {
	--tl-primary: #c0392b;
	--tl-bg: #f7f7f5;
	--tl-card: #ffffff;
	--tl-text: #1f2328;
	--tl-muted: #6b7280;
	--tl-line: #d9dbe0;
}
@media (prefers-color-scheme: dark) {
	:root {
		--tl-bg: #14161a;
		--tl-card: #1d2026;
		--tl-text: #e6e8eb;
		--tl-muted: #9aa1ab;
		--tl-line: #343a44;
	}
}
* { box-sizing: border-box; }
body {
	margin: 0; background: var(--tl-bg); color: var(--tl-text);
	font: 16px/1.75 -apple-system, "PingFang SC", "Microsoft YaHei", "Noto Sans SC", "Helvetica Neue", Arial, sans-serif;
}
a { color: var(--tl-primary); text-decoration: none; }
a:hover { text-decoration: underline; }
img { max-width: 100%; height: auto; }
.wrap { max-width: 1040px; margin: 0 auto; padding: 0 20px; }

/* 页头 */
.site-header { background: var(--tl-card); border-bottom: 1px solid var(--tl-line); }
.site-header .wrap { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 28px; padding-top: 14px; padding-bottom: 14px; }
.site-title { font-size: 1.35rem; font-weight: 700; margin: 0; }
.site-title a { color: var(--tl-text); }
.main-nav ul, .lang-switch { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 20px; }
.main-nav { flex: 1; }
.lang-switch li { font-size: .9rem; }
.lang-switch .current-lang a { font-weight: 700; }

/* 通用 */
.site-main { padding: 32px 0 56px; }
.page-title { font-size: 1.8rem; margin: 0 0 8px; }
.page-desc { color: var(--tl-muted); margin: 0 0 24px; }
.btn, .tl-filter button {
	display: inline-block; background: var(--tl-primary); color: #fff; border: 0;
	padding: 8px 18px; border-radius: 6px; cursor: pointer; font-size: .95rem;
}
.btn:hover, .tl-filter button:hover { opacity: .9; text-decoration: none; }

/* 首页 */
.hero { padding: 36px 0 12px; }
.hero h1 { font-size: 2.1rem; margin: 0 0 8px; }
.hero p { color: var(--tl-muted); margin: 0 0 18px; max-width: 640px; }
.home-section { margin: 36px 0; }
.home-section > h2 { font-size: 1.3rem; border-left: 4px solid var(--tl-primary); padding-left: 10px; margin: 0 0 16px; }
.home-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 16px; }
.domain-tiles { display: flex; flex-wrap: wrap; gap: 10px; }
.domain-tiles a { background: var(--tl-card); border: 1px solid var(--tl-line); border-radius: 20px; padding: 4px 16px; color: var(--tl-text); }
.domain-tiles span { color: var(--tl-muted); font-size: .85rem; margin-left: 4px; }

/* 筛选栏 */
.tl-filter { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 28px; padding: 14px; background: var(--tl-card); border: 1px solid var(--tl-line); border-radius: 8px; align-items: center; }
.tl-filter select { padding: 7px 10px; border: 1px solid var(--tl-line); border-radius: 6px; background: var(--tl-bg); color: var(--tl-text); }

/* 时间线 */
.tl { position: relative; padding: 8px 0; }
.tl::before { content: ""; position: absolute; top: 0; bottom: 0; left: 14px; width: 2px; background: var(--tl-line); }
.tl-year { position: relative; margin: 28px 0 12px 40px; font-size: 1.5rem; color: var(--tl-primary); }
.tl-item { position: relative; margin: 0 0 20px 40px; background: var(--tl-card); border: 1px solid var(--tl-line); border-radius: 8px; padding: 14px 18px; }
.tl-item::before {
	content: ""; position: absolute; left: -33px; top: 20px; width: 12px; height: 12px;
	border-radius: 50%; background: var(--tl-primary); box-shadow: 0 0 0 4px var(--tl-bg);
}
.tl-date { font-size: .9rem; color: var(--tl-muted); }
.tl-title { font-size: 1.15rem; margin: 2px 0 6px; line-height: 1.5; }
.tl-title a { color: var(--tl-text); }
.tl-excerpt { color: var(--tl-muted); margin: 0 0 8px; font-size: .95rem; }
.tl-meta { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; font-size: .82rem; color: var(--tl-muted); }
.tl-chip { background: var(--tl-bg); border: 1px solid var(--tl-line); border-radius: 12px; padding: 0 10px; }
.tl-stars { color: #e0a100; letter-spacing: 1px; }
.tl-badge { background: var(--tl-primary); color: #fff; border-radius: 4px; padding: 0 8px; font-size: .78rem; margin-left: 8px; }
.tl-item.status-upcoming { border-style: dashed; border-color: var(--tl-primary); }
.tl-item.status-upcoming::before { background: var(--tl-card); border: 2px solid var(--tl-primary); box-shadow: 0 0 0 4px var(--tl-bg); }
.tl-item.importance-5 { border-left: 4px solid var(--tl-primary); }
.tl-item.importance-5 .tl-title { font-size: 1.3rem; }

/* 居中样式（桌面端） */
@media (min-width: 800px) {
	.tl-center::before { left: 50%; margin-left: -1px; }
	.tl-center .tl-year { margin-left: 0; text-align: center; background: var(--tl-bg); width: 110px; margin-left: auto; margin-right: auto; position: relative; z-index: 1; }
	.tl-center .tl-item { width: calc(50% - 36px); margin-left: 0; }
	.tl-center .tl-item:nth-of-type(even) { margin-left: calc(50% + 36px); }
	.tl-center .tl-item::before { left: auto; right: -43px; }
	.tl-center .tl-item:nth-of-type(even)::before { right: auto; left: -43px; }
}

/* 分页 */
.pagination { margin-top: 28px; text-align: center; }
.pagination .page-numbers { display: inline-block; padding: 4px 12px; margin: 0 2px; border: 1px solid var(--tl-line); border-radius: 6px; background: var(--tl-card); color: var(--tl-text); }
.pagination .current { background: var(--tl-primary); color: #fff; border-color: var(--tl-primary); }

/* 事件详情 / 普通页面 */
.entry { background: var(--tl-card); border: 1px solid var(--tl-line); border-radius: 8px; padding: 26px 30px; }
.entry h1 { font-size: 1.8rem; margin: 6px 0 12px; line-height: 1.4; }
.entry-content { margin-top: 18px; }
.sources { margin-top: 26px; padding-top: 14px; border-top: 1px solid var(--tl-line); font-size: .92rem; }
.sources h3 { margin: 0 0 6px; font-size: 1rem; }
.sources ul { margin: 0; padding-left: 20px; }
.event-nav { display: flex; justify-content: space-between; gap: 16px; margin: 24px 0; }
.event-nav a { background: var(--tl-card); border: 1px solid var(--tl-line); border-radius: 8px; padding: 10px 16px; flex: 1; }
.event-nav .next { text-align: right; }
.event-nav small { display: block; color: var(--tl-muted); }

/* 评论 */
.comments-area { margin-top: 32px; background: var(--tl-card); border: 1px solid var(--tl-line); border-radius: 8px; padding: 20px 26px; }
.comments-title { font-size: 1.2rem; margin-top: 0; }
.comment-list, .comment-list ol { list-style: none; padding-left: 0; }
.comment-list .children { padding-left: 28px; }
.comment-body { border-bottom: 1px solid var(--tl-line); padding: 12px 0; }
.comment-author img { border-radius: 50%; vertical-align: middle; margin-right: 8px; }
.comment-metadata { font-size: .8rem; color: var(--tl-muted); }
.comment-form input[type=text], .comment-form input[type=email], .comment-form input[type=url], .comment-form textarea {
	width: 100%; padding: 8px 10px; border: 1px solid var(--tl-line); border-radius: 6px; background: var(--tl-bg); color: var(--tl-text);
}
.comment-form .submit { background: var(--tl-primary); color: #fff; border: 0; padding: 8px 20px; border-radius: 6px; cursor: pointer; }

/* 页脚 */
.site-footer { border-top: 1px solid var(--tl-line); padding: 24px 0; color: var(--tl-muted); font-size: .9rem; text-align: center; }
