/* 基础：CSS变量与重置 */
:root {
	--bg: #0b0d12;
	--bg-alt: #0f1218;
	--text: #e8ecf1;
	--muted: #a9b3c1;
	--brand: #3ea6ff;
	--brand-2: #68f5c3;
	--card: #121621;
	--card-alt: #0e1320;
	--border: #1e2635;
	--shadow: 0 10px 25px rgba(0,0,0,.25);
	--radius: 14px;
	--radius-sm: 10px;
	--radius-lg: 18px;
	--container: 1200px;
	--space-1: 6px;
	--space-2: 10px;
	--space-3: 14px;
	--space-4: 18px;
	--space-5: 24px;
	--space-6: 32px;
	--space-7: 40px;
	--space-8: 56px;
	--space-9: 72px;
	--h1: 42px;
	--h2: 28px;
	--h3: 20px;
	--body: 16px;
	--mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
}

/* 主题：暗色 */
.theme-dark {
	--bg: #0a0b0f;
	--bg-alt: #0d0f15;
	--text: #ecf3ff;
	--muted: #9fb0c6;
	--brand: #66b3ff;
	--brand-2: #5ef1d0;
	--card: #0f1421;
	--card-alt: #0c1020;
	--border: #20283a;
}

/* 主题：未来感（高对比霓虹） */
.theme-future {
	--bg: #070a12;
	--bg-alt: #0b0f1a;
	--text: #f2fbff;
	--muted: #9bb7d6;
	--brand: #38e8ff;
	--brand-2: #9bff6d;
	--card: #0b1326;
	--card-alt: #0a1021;
	--border: #1a2a44;
}

/* 页面重置与通用 */
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
	background: var(--bg);
	color: var(--text);
	font-family: var(--sans);
	font-size: var(--body);
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }

.container {
	max-width: var(--container);
	margin: 0 auto;
	padding: 0 var(--space-5);
}

.section {
	padding: var(--space-9) 0;
	background: var(--bg);
}
.section.alt {
	background: var(--bg-alt);
}
.section-title {
	font-size: var(--h2);
	margin: 0 0 var(--space-6);
	letter-spacing: 0.2px;
}
/* 仅居中“为何选择欧易交易所”板块标题 */
#features .section-title {
	text-align: center;
}
/* 居中“市场亮点与人气品类”板块标题 */
#markets .section-title {
	text-align: center;
}

/* Header */
.site-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: linear-gradient(180deg, rgba(10,12,18,.9), rgba(10,12,18,.75));
	backdrop-filter: saturate(140%) blur(6px);
	border-bottom: 1px solid var(--border);
}
.header-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 64px;
}
.brand {
	display: flex;
	align-items: center;
	gap: var(--space-3);
}
.brand-mark {
	width: 26px;
	height: 26px;
	border-radius: 7px;
	background:
		conic-gradient(from 180deg at 50% 50%, var(--brand), var(--brand-2), var(--brand));
	box-shadow: 0 0 0 2px rgba(255,255,255,.06), 0 8px 18px rgba(62,166,255,.24);
}
.brand-name {
	font-weight: 700;
}
.site-nav .nav-list {
	display: flex;
	gap: var(--space-5);
	list-style: none;
	margin: 0;
	padding: 0;
}
.site-nav a {
	padding: 10px 12px;
	border-radius: 10px;
	color: var(--muted);
}
.site-nav a:hover,
.site-nav a[aria-current="page"] {
	color: var(--text);
	background: rgba(255,255,255,.06);
}

/* 按钮 */
.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 12px 18px;
	border-radius: 12px;
	border: 1px solid var(--border);
	transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
	will-change: transform;
}
.btn-primary {
	background: linear-gradient(135deg, var(--brand), var(--brand-2));
	color: #0a0c12;
	box-shadow: 0 10px 22px rgba(62,166,255,.28), inset 0 0 0 1px rgba(255,255,255,.32);
}
.btn-primary:hover { transform: translateY(-1px); }
.btn-outline { color: var(--text); background: transparent; }
.btn-outline:hover { background: rgba(255,255,255,.06); }

/* Hero */
.hero {
	background:
		radial-gradient(1200px 600px at 80% -10%, rgba(62,166,255,.18), transparent 70%),
		radial-gradient(900px 480px at 10% -10%, rgba(104,245,195,.12), transparent 60%),
		var(--bg);
	border-bottom: 1px solid var(--border);
}
.hero-inner {
	display: grid;
	grid-template-columns: 1.3fr 1fr;
	gap: var(--space-8);
	padding: var(--space-9) 0 var(--space-9);
	align-items: center;
}
.hero-title {
	font-size: var(--h1);
	margin: 0 0 var(--space-4);
}
.hero-subtitle {
	color: var(--muted);
	margin: 0 0 var(--space-6);
}
.hero-actions { display: flex; gap: var(--space-4); flex-wrap: wrap; }
.hero-illustration {
	position: relative;
	height: 320px;
	background: linear-gradient(180deg, rgba(62,166,255,.08), rgba(104,245,195,.08));
	border-radius: var(--radius-lg);
	border: 1px solid var(--border);
	overflow: hidden;
	box-shadow: var(--shadow);
}
.hero-image {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: scale(1.02);
	filter: saturate(108%) contrast(104%);
}
.grid-mesh {
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(to right, rgba(255,255,255,.06) 1px, transparent 1px),
		linear-gradient(to bottom, rgba(255,255,255,.06) 1px, transparent 1px);
	background-size: 28px 28px, 28px 28px;
	opacity: .45;
}
.dot {
	position: absolute;
	width: 12px; height: 12px; border-radius: 50%;
	background: var(--brand);
	box-shadow: 0 0 0 6px rgba(62,166,255,.12);
}
.dot-1 { left: 16%; top: 22%; }
.dot-2 { right: 18%; top: 40%; background: var(--brand-2); box-shadow: 0 0 0 6px rgba(104,245,195,.14); }
.dot-3 { left: 40%; bottom: 16%; }

/* Feature Grid */
.feature-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--space-5);
	list-style: none; margin: 0; padding: 0;
}
.feature-card {
	background: linear-gradient(180deg, var(--card), var(--card-alt));
	border: 1px solid var(--border);
	border-radius: var(--radius);
	padding: var(--space-5);
	min-height: 200px;
	box-shadow: var(--shadow);
	display: flex;
	flex-direction: column;
	gap: var(--space-4);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.feature-card:hover { transform: translateY(-2px); border-color: rgba(255,255,255,.18); box-shadow: 0 14px 32px rgba(0,0,0,.35); }
.feature-head { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); }
.feature-badges { display: inline-flex; gap: 6px; flex-wrap: wrap; }
.badge {
	display: inline-flex; align-items: center; justify-content: center;
	padding: 4px 8px;
	border-radius: 999px;
	background: rgba(255,255,255,.06);
	color: var(--text);
	border: 1px solid var(--border);
	font-size: 12px;
	letter-spacing: .2px;
}
.feature-title { font-size: var(--h3); margin: 0 0 var(--space-3); }
.feature-desc { color: var(--muted); margin: 0; }
.feature-points {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 8px;
}
.feature-points li {
	position: relative;
	padding-left: 18px;
	color: var(--text);
}
.feature-points li::before {
	content: "";
	position: absolute;
	left: 0; top: 8px;
	width: 10px; height: 10px;
	border-radius: 3px;
	background: linear-gradient(135deg, var(--brand), var(--brand-2));
	box-shadow: 0 2px 8px rgba(62,166,255,.35);
}
.feature-cta { margin-top: auto; display: flex; }
.link-more {
	color: var(--brand);
	border-bottom: 1px dashed rgba(62,166,255,.5);
	padding-bottom: 2px;
}
.link-more:hover { color: var(--text); border-color: rgba(255,255,255,.6); }

/* Market */
.market-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-4);
	margin-bottom: var(--space-5);
}
.chip-list {
	display: flex;
	gap: 10px;
	list-style: none;
	margin: 0;
	padding: 0;
	flex-wrap: wrap;
}
.chip {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 12px;
	border-radius: 999px;
	border: 1px solid var(--border);
	background: rgba(255,255,255,.04);
	color: var(--muted);
	font-size: 14px;
}
.chip:hover { background: rgba(255,255,255,.07); color: var(--text); }
.chip-active { background: linear-gradient(135deg, var(--brand), var(--brand-2)); color: #081018; border-color: transparent; }
.market-note { color: var(--muted); font-size: 14px; }

.market-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: var(--space-5);
}
.market-card {
	background: linear-gradient(180deg, var(--card), var(--card-alt));
	border: 1px solid var(--border);
	border-radius: var(--radius);
	padding: var(--space-5);
	box-shadow: var(--shadow);
	display: flex;
	flex-direction: column;
	gap: var(--space-4);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.market-card:hover { transform: translateY(-2px); border-color: rgba(255,255,255,.18); box-shadow: 0 14px 32px rgba(0,0,0,.35); }
.market-head { display: flex; align-items: center; justify-content: space-between; gap: var(--space-3); }
.pair { margin: 0; font-size: 18px; }
.tag {
	padding: 4px 8px;
	border-radius: 999px;
	background: rgba(255,255,255,.06);
	border: 1px solid var(--border);
	font-size: 12px;
	color: var(--text);
}
.price-row { display: flex; align-items: baseline; justify-content: space-between; gap: var(--space-4); }
.price { font-family: var(--mono); font-size: 20px; }
.change { font-size: 14px; padding: 4px 8px; border-radius: 8px; border: 1px solid var(--border); }
.change.up { color: #1ce5a0; background: rgba(28,229,160,.08); border-color: rgba(28,229,160,.25); }
.change.down { color: #ff6b6b; background: rgba(255,107,107,.08); border-color: rgba(255,107,107,.25); }
.sparkline {
	height: 46px;
	border-radius: 10px;
	background:
		linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,0)) padding-box,
		radial-gradient(120px 60px at 30% 60%, rgba(62,166,255,.35), rgba(62,166,255,0)) border-box;
	border: 1px solid var(--border);
	overflow: hidden;
}
.sparkline.alt {
	background:
		linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,0)) padding-box,
		radial-gradient(120px 60px at 70% 40%, rgba(104,245,195,.35), rgba(104,245,195,0)) border-box;
}
.stat-row {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: var(--space-3);
}
.stat-row li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 8px 10px;
	border: 1px dashed var(--border);
	border-radius: 10px;
	background: rgba(255,255,255,.03);
}
.stat-row .label { color: var(--muted); font-size: 13px; }
.stat-row .val { font-family: var(--mono); font-size: 13px; }
.market-cta { margin-top: auto; }

/* Articles */
.article-list {
	list-style: none; margin: 0; padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
}
.article-item { border-bottom: 1px dashed var(--border); padding: 10px 0; }
.article-link { display: flex; align-items: center; justify-content: space-between; }
.article-title { font-weight: 600; }
.article-date { color: var(--muted); font-feature-settings: "tnum" 1; font-variant-numeric: tabular-nums; }
.article-link:hover .article-title { text-decoration: underline; }

/* Download */
.download-inner {
	display: grid;
	grid-template-columns: 1.2fr .8fr;
	gap: var(--space-7);
	align-items: center;
}
.download-desc { color: var(--muted); margin: 0 0 var(--space-5); }
.download-actions { display: flex; gap: var(--space-4); flex-wrap: wrap; }
.download-art {
	position: relative;
	height: 240px;
	background: radial-gradient(480px 240px at 70% 30%, rgba(104,245,195,.16), transparent 70%), var(--card);
	border: 1px solid var(--border);
	border-radius: var(--radius-lg);
	overflow: hidden;
	box-shadow: var(--shadow);
}
.download-art .badge {
	position: absolute;
	top: 18px; left: 18px;
	padding: 8px 12px;
	border-radius: 999px;
	background: linear-gradient(135deg, var(--brand), var(--brand-2));
	color: #081018;
	font-weight: 700;
	box-shadow: 0 8px 18px rgba(62,166,255,.25);
}
.rings { position: absolute; inset: 0; display: grid; place-items: center; }
.rings span {
	position: absolute;
	width: 70%; height: 70%;
	border-radius: 50%;
	border: 1px solid rgba(255,255,255,.12);
}
.rings span:nth-child(2) { width: 50%; height: 50%; }
.rings span:nth-child(3) { width: 30%; height: 30%; }

/* FAQ */
.faq-grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--space-6);
}

/* FAQ 新增：分类工具条 */
.faq-toolbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-4);
	margin-bottom: var(--space-5);
}
.faq-note { color: var(--muted); font-size: 14px; }

/* FAQ 手风琴布局（纯CSS，无脚本） */
.faq-accordion {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: var(--space-5);
}
.faq-item {
	background: linear-gradient(180deg, var(--card), var(--card-alt));
	border: 1px solid var(--border);
	border-radius: var(--radius);
	padding: var(--space-5);
	box-shadow: var(--shadow);
	overflow: hidden;
}
.faq-toggle { position: absolute; opacity: 0; pointer-events: none; }
.faq-q {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-3);
	margin: 0;
	cursor: pointer;
}
.q-title { font-size: 18px; }
.q-badges { display: inline-flex; gap: 6px; }
.faq-a {
	color: var(--muted);
	margin: 0;
	max-height: 0;
	overflow: hidden;
	transition: max-height .25s ease;
}
.faq-item .faq-toggle:checked ~ .faq-a {
	max-height: 400px;
	margin-top: var(--space-4);
}
.a-points {
	list-style: none;
	margin: var(--space-3) 0 0;
	padding: 0;
	display: grid;
	gap: 8px;
}
.a-points li {
	position: relative;
	padding-left: 16px;
	color: var(--text);
}
.a-points li::before {
	content: "";
	position: absolute;
	left: 0; top: 8px;
	width: 8px; height: 8px;
	border-radius: 3px;
	background: linear-gradient(135deg, var(--brand), var(--brand-2));
	opacity: .9;
}

/* Footer */
.site-footer {
	background: var(--bg-alt);
	border-top: 1px solid var(--border);
}
.footer-inner {
	padding: var(--space-7) 0;
	display: grid;
	gap: var(--space-4);
}
.footer-nav .nav-list { display: flex; gap: var(--space-4); list-style: none; margin: 0; padding: 0; flex-wrap: wrap; }
.footer-nav a { color: var(--muted); }
.footer-nav a:hover { color: var(--text); text-decoration: underline; }
.copyright { color: var(--muted); margin: 0; }

/* 布局切换：layout-b 改变各分区呈现顺序与网格表现 */
.layout-b .hero-inner {
	grid-template-columns: 1fr 1fr;
}
.layout-b .feature-grid {
	grid-template-columns: repeat(2, 1fr);
}
.layout-b #markets .market-grid {
	grid-template-columns: repeat(2, 1fr);
}
.layout-b .download-inner {
	grid-template-columns: 1fr;
}
.layout-b .download-art { order: -1; height: 200px; margin-bottom: var(--space-5); }
.layout-b .faq-grid {
	grid-template-columns: 1fr;
}

/* 响应式断点 */
@media (max-width: 1200px) {
	:root { --container: 1040px; --h1: 38px; }
}
@media (max-width: 992px) {
	:root { --container: 920px; --h1: 34px; --h2: 24px; }
	.section { padding: calc(var(--space-9) - 12px) 0; }
	.hero-inner { grid-template-columns: 1fr; }
	.download-inner { grid-template-columns: 1fr; }
	.feature-grid { grid-template-columns: repeat(2, 1fr); }
	.feature-card { min-height: 0; }
	.market-grid { grid-template-columns: repeat(2, 1fr); }
	.faq-grid { grid-template-columns: 1fr; }
	.faq-accordion { grid-template-columns: 1fr; }
	.site-nav .nav-list { flex-wrap: wrap; }
	.market-toolbar { flex-wrap: wrap; gap: var(--space-3); }
	.market-note { width: 100%; }
}
@media (max-width: 768px) {
	:root { --container: 92vw; --h1: 28px; --h2: 22px; --h3: 18px; }
	.header-inner { height: auto; flex-direction: column; align-items: stretch; gap: var(--space-2); padding: var(--space-2) 0; }
	/* 移动端导航：横向可滚动的芯片式菜单 */
	.site-nav .nav-list {
		gap: var(--space-2);
		flex-wrap: nowrap;
		overflow-x: auto;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none; /* Firefox */
		padding-bottom: 4px;
	}
	.site-nav .nav-list::-webkit-scrollbar { display: none; } /* WebKit */
	.site-nav .nav-list li { display: inline-flex; }
	.site-nav a { padding: 10px 14px; border-radius: 999px; background: rgba(255,255,255,.04); }
	.btn { padding: 11px 14px; }
	/* 移动端：头部不固定，logo区域随页面滚动 */
	.site-header { position: static; }
	.section { padding: calc(var(--space-8) - 6px) 0; }
	.feature-card, .market-card, .faq-item { padding: calc(var(--space-5) - 6px); }
	.chip { padding: 7px 10px; font-size: 13px; }
	.price { font-size: 18px; }
	.change { font-size: 13px; }
	.stat-row { gap: 10px; }
	.download-actions { gap: var(--space-3); }
}
@media (max-width: 480px) {
	:root { --h1: 24px; --body: 15px; }
	.feature-grid, .market-grid { grid-template-columns: 1fr; }
	.hero-illustration { height: 220px; }
	.download-art { height: 180px; }
	.section { padding: calc(var(--space-8) - 8px) 0; }
	.chip-list { gap: 8px; }
	.chip { padding: 6px 10px; font-size: 12px; }
	.market-toolbar { gap: var(--space-2); }
	.market-note { display: none; }
	.price { font-size: 17px; }
	.stat-row .label, .stat-row .val { font-size: 12px; }
}

