/* =========================================================================
   未来观察 FutureLens — skin layer over HTML5 UP "Future Imperfect"
   只做"改皮"：配色 / 字体 / 杂志化版式 / 中文排版修正。结构沿用原模板。
   ========================================================================= */

:root{
	--ink:        #16181d;          /* 冷调近黑（非纯黑） */
	--ink-soft:   #393d47;          /* 正文 */
	--ink-mute:   #6a7080;          /* 次要信息 */
	--paper:      #f4f6f8;          /* 冷白纸 页面底 */
	--surface:    #ffffff;          /* 需要时的白面 */
	--line:       rgba(22,24,29,.10);
	--line-2:     rgba(22,24,29,.16);
	--accent:     #d6275e;          /* Deep Rose 强调色（填充/大字/边框） */
	--accent-ink: #aa1648;          /* 暗一档，正文链接用，过 AA */
	--accent-wash:#fdeef3;          /* 淡染底 */
}

/* ---------- 基础 ---------- */
html, body{ background:var(--paper); }
body{
	color:var(--ink-soft);
	-webkit-font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}
body, input, select, textarea{
	font-family:"Hanken Grotesk","PingFang SC","Microsoft YaHei","Noto Sans SC",system-ui,sans-serif;
	letter-spacing:0;
}
a{ color:var(--accent-ink); }
a:hover{ color:var(--accent); }

/* ---------- 标题：去掉模板那套 uppercase + 0.25em 宽字距（对中文是灾难） ---------- */
h1,h2,h3,h4,h5,h6{
	font-family:"Spectral","Noto Serif SC",Georgia,"Songti SC",serif;
	color:var(--ink);
	text-transform:none !important;
	letter-spacing:-.005em !important;
	font-weight:700;
	text-wrap:balance;
}
p{ text-wrap:pretty; }

/* 正文阅读区：中文需要更大行距，行宽收敛 */
#main .post > p{
	font-size:1.05rem;
	line-height:1.85;
	color:var(--ink-soft);
	max-width:40em;
}

/* ---------- 顶部 masthead / 报头 ---------- */
#header{
	background:var(--surface);
	border-bottom:1px solid var(--line-2);
	box-shadow:0 1px 0 var(--line);
	padding:0 1.5rem;
	min-height:68px;
}
/* 报头品牌：首页是 <h1>，文章页是 <div class="site-id">（保证每页只有一个 h1=文章标题）。
   文章页用 .site-id 时 main.css 的 #header h1 布局不生效，这里补齐。 */
#header h1, #header .site-id{ margin:0; height:inherit; line-height:inherit; padding:0 0 0 1.5em; white-space:nowrap; }
#header h1 a, #header .site-id a{
	color:var(--ink);
	font-weight:700;
	font-size:1.5rem;
	letter-spacing:0 !important;
	display:inline-flex;
	align-items:baseline;
	gap:.5rem;
}
#header h1 a:hover, #header .site-id a:hover{ color:var(--ink); }
#header h1 .latin, #header .site-id .latin{
	font-family:"Spectral",serif;
	font-style:italic;
	font-weight:500;
	font-size:.85rem;
	color:var(--accent);
	letter-spacing:.02em;
}
/* 分类导航：常规字体、单行、不大写 */
#header nav.links a{
	font-family:"Hanken Grotesk","PingFang SC",sans-serif !important;
	text-transform:none !important;
	letter-spacing:0 !important;
	font-weight:600;
	font-size:.92rem;
	color:var(--ink);
}
#header nav.links a:hover{ color:var(--accent); }
#header nav.main a:hover{ color:var(--accent); }

/* ---------- 报头下的一句话定位条 ---------- */
.promise{
	background:var(--ink);
	color:#eef0f4;
	text-align:center;
	font-size:.92rem;
	letter-spacing:.01em;
	padding:.6rem 1.25rem;
}
.promise b{ color:#fff; font-weight:600; }
.promise .dot{ color:var(--accent); margin:0 .55rem; }

/* ---------- 文章流通用 ---------- */
#main{ padding-top:2.25rem; }
.post{ border-bottom:1px solid var(--line); padding-bottom:2.5rem; margin-bottom:2.5rem; }
.post:last-of-type{ border-bottom:0; }

/* 分类小标（accent，非大写、非 eyebrow 套路） */
.kicker{
	display:inline-block;
	font-family:"Hanken Grotesk","PingFang SC",sans-serif;
	font-weight:700;
	font-size:.8rem;
	color:var(--accent-ink);
	margin-bottom:.5rem;
}
/* 标题字号：用 #main 前缀压过模板的 .post>header .title h2{font-size:1.5em} */
#main .post > header .title h2{ font-size:clamp(1.45rem,2vw,1.78rem); line-height:1.28; font-weight:700; }
.post .title h2 a{ color:var(--ink); }
.post .title h2 a:hover{ color:var(--accent-ink); }
#main .post > header .title > p{ color:var(--ink-mute); font-size:1.02rem; line-height:1.62; }

/* meta：作者/日期 */
.post .meta .published, .mini-post .published, .posts .published{
	color:var(--ink-mute);
	font-family:"Hanken Grotesk","PingFang SC",sans-serif;
	letter-spacing:0;
}
.post .meta .author .name{ color:var(--ink); font-weight:600; }

/* 配图：统一圆角与边线，hover 轻微抬升 */
#main .image.featured img,
.mini-post .image img,
.posts .image img{
	border-radius:8px;
}
#main .image.featured{ border-radius:8px; overflow:hidden; }
#main .image.featured img{ transition:transform .5s cubic-bezier(.16,1,.3,1); }
#main .image.featured:hover img{ transform:scale(1.025); }

/* 文章 footer 的 stats（爱心/评论）改成分类+话题，弱化 */
.post footer .stats a{ color:var(--ink-mute); }
.post footer .stats a:hover{ color:var(--accent); }

/* ---------- 封面头条 lead ---------- */
.post--lead{ border-bottom:1px solid var(--line-2); }
.post--lead .image.featured img{ width:100%; max-height:460px; object-fit:cover; }
#main .post--lead > header .title h2{ font-size:clamp(1.95rem,3.2vw,2.7rem); line-height:1.16; font-weight:700; }
#main .post--lead > header .title > p{ font-size:1.12rem; line-height:1.6; color:var(--ink-soft); }

/* ---------- 按钮 ---------- */
input[type="submit"], input[type="reset"], input[type="button"],
.button{
	font-family:"Hanken Grotesk","PingFang SC",sans-serif !important;
	text-transform:none !important;
	letter-spacing:0 !important;
	font-weight:700;
	border-radius:6px;
	color:var(--ink) !important;
	box-shadow:inset 0 0 0 1px var(--line-2);
	transition:transform .15s ease, box-shadow .2s ease, background-color .2s ease, color .2s ease;
}
.button:hover{ box-shadow:inset 0 0 0 1px var(--accent); color:var(--accent-ink) !important; }
.button.primary, .button.large{
	background:var(--accent);
	color:#fff !important;
	box-shadow:none;
}
.button.primary:hover, .button.large:hover{
	background:var(--accent-ink);
	color:#fff !important;
}
.button:active{ transform:translateY(1px); }

/* ---------- 侧栏 ---------- */
/* 注意：模板 JS 在 >1280px 把 #intro 放侧栏、≤1280px 移到 #main 顶部。
   因此 #intro 相关样式不绑定 #sidebar 祖先，两处都要生效。 */
/* 侧栏在左、正文在右(模板 row-reverse)：分隔线放在两栏之间(正文左缘) */
@media screen and (min-width:1281px){
	#main{ border-left:1px solid var(--line); padding-left:2.5rem; }
}
#intro{ border-bottom:1px solid var(--line); padding-bottom:1.75rem; margin-bottom:.5rem; }
.brandmark{
	display:flex; align-items:center; gap:.7rem; margin-bottom:.4rem;
}
.brandmark .glyph{
	width:42px;height:42px;border-radius:9px;flex:0 0 42px;
	background:var(--accent);color:#fff;
	display:flex;align-items:center;justify-content:center;
	font-family:"Spectral",serif;font-weight:700;font-size:1.25rem;
}
.brandmark header{ margin:0; padding:0; }
#intro h2{ font-size:1.25rem; margin:0; line-height:1.1; }
#intro > p{ color:var(--ink-mute); font-size:.92rem; line-height:1.6; margin-top:.6rem; }

/* 侧栏分区标题：小号粗体 + 底部细线，不用 eyebrow 大写套路 */
#sidebar > section > h2,
#sidebar .blurb h2,
.side-title{
	font-family:"Hanken Grotesk","PingFang SC",sans-serif;
	font-size:.82rem; font-weight:700; color:var(--ink);
	letter-spacing:.02em; text-transform:none;
	padding-bottom:.5rem; margin-bottom:1rem;
	border-bottom:2px solid var(--ink);
	display:inline-block;
}
.mini-post header h3 a, .posts header h3 a{ color:var(--ink); font-weight:600; }
.mini-post header h3 a:hover, .posts header h3 a:hover{ color:var(--accent-ink); }

/* 侧栏：编辑专题 / 软桥卡（克制，编辑口吻，不像广告） */
.feature-note{
	background:var(--surface);
	border:1px solid var(--line-2);
	border-radius:10px;
	padding:1.15rem 1.15rem 1.25rem;
}
.feature-note .kicker{ margin-bottom:.35rem; }
.feature-note h3{ font-size:1.12rem; margin:0 0 .5rem; line-height:1.3; }
.feature-note p{ color:var(--ink-soft); font-size:.92rem; line-height:1.65; margin-bottom:.85rem; }
.feature-note a.more{ font-weight:700; font-family:"Hanken Grotesk","PingFang SC",sans-serif; }
.feature-note a.more::after{ content:" \2192"; }
.feature-note .fn-note{ font-size:.74rem; color:var(--ink-mute); line-height:1.5; margin:.85rem 0 0; }

/* ---------- 开户前核对卡（出站卡，§21.5 合规形态）---------- */
.precheck{ border:1px solid var(--line-2); border-radius:12px; padding:1.1rem 1.2rem 1.25rem; background:var(--surface); }
.precheck .side-title{ border-bottom:0 !important; padding-bottom:0 !important; margin-bottom:.4rem; }
.precheck .side-title::before{ content:"\2713"; font-weight:900; font-size:.85em; color:#fff; background:var(--accent); width:1.15rem; height:1.15rem; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; margin-right:.4rem; vertical-align:middle; }
.precheck .intro{ font-size:.88rem; color:var(--ink-mute); line-height:1.6; margin:0 0 .85rem; }
.precheck .row{ display:flex; justify-content:space-between; align-items:baseline; gap:.8rem; padding:.5rem 0; border-bottom:1px solid var(--line); font-size:.87rem; }
.precheck .row:first-of-type{ border-top:1px solid var(--line); }
.precheck .k{ color:var(--ink-mute); flex:0 0 auto; white-space:nowrap; }
.precheck .v{ color:var(--ink); text-align:right; font-weight:600; }
.precheck .v.code{ color:var(--accent-ink); letter-spacing:.04em; background:var(--accent-wash); padding:.06rem .42rem; border-radius:5px; }
.precheck .disclosure{ font-size:.75rem; color:var(--ink-mute); line-height:1.6; margin:.85rem 0 1rem; }
.precheck .precheck-cta{ display:block; text-align:center; width:100%; background:var(--accent); color:#fff !important; box-shadow:none; }
.precheck .precheck-cta:hover{ background:var(--accent-ink); color:#fff !important; }

/* ---------- 页脚 ---------- */
#sidebar #footer{ border-top:1px solid var(--line); padding-top:1.5rem; }
#footer .icons a{ color:var(--ink-mute); }
#footer .icons a:hover{ color:var(--accent); }
#footer .copyright{ color:var(--ink-mute); font-size:.8rem; line-height:1.7; }
#footer .copyright a{ color:var(--ink-mute); }
#footer .copyright a:hover{ color:var(--accent); }

/* ---------- 菜单（移动端抽屉）配色 ---------- */
#menu{ background:var(--ink); }
#menu .links a{ border-color:rgba(255,255,255,.12); }
#menu h3{ color:#fff; font-family:"Spectral","Noto Serif SC",serif; }
#menu .links a p{ color:rgba(255,255,255,.6); }

/* ---------- 响应式：360 不溢出 ---------- */
@media screen and (max-width:480px){
	#header{ padding:0 1rem; min-height:60px; }
	#header h1 a, #header .site-id a{ font-size:1.25rem; }
	#header h1 .latin, #header .site-id .latin{ display:none; }
	#header h1, #header .site-id{ padding-left:1rem; }
	.promise{ font-size:.82rem; padding:.55rem 1rem; }
	#main .post--lead > header .title h2{ font-size:1.7rem; }
	#main .post > header .title h2{ font-size:1.4rem; }
	#main .post > p{ font-size:1rem; }
	#main{ border-left:0; padding-left:0; }
}

/* =========================================================================
   文章页（body.single）
   ========================================================================= */
body.single #main{ max-width:840px; margin:0 auto; border-left:0 !important; padding-left:0 !important; }
.breadcrumb{ font-size:.85rem; color:var(--ink-mute); padding:1.4rem 0 .2rem; }
.breadcrumb a{ color:var(--ink-mute); }
.breadcrumb a:hover{ color:var(--accent); }
.breadcrumb .sep{ margin:0 .45rem; opacity:.5; }

body.single .post{ border-bottom:0; }
body.single .post > header .title h1{
	font-size:clamp(1.9rem,3.6vw,2.8rem); line-height:1.18; font-weight:700;
	color:var(--ink); margin:.3rem 0 .55rem; text-wrap:balance;
}
body.single .post .title .dek{
	font-size:1.16rem; color:var(--ink-soft); line-height:1.55; max-width:40em; margin:0;
}

/* 正文排版 */
body.single .post p{ font-size:1.08rem; line-height:1.9; color:var(--ink-soft); max-width:42em; }
body.single .post > h2{ font-size:1.5rem; margin-top:2.6rem; line-height:1.32; color:var(--ink); }
body.single .post > h3{ font-size:1.2rem; margin-top:1.9rem; color:var(--ink); }
body.single .post p a,
body.single .post li a{
	color:var(--accent-ink); text-decoration:underline;
	text-underline-offset:2px; text-decoration-thickness:1px;
}
body.single .post ul li, body.single .post ol li{ line-height:1.8; color:var(--ink-soft); }

/* 目录 / 本文要点 */
.toc{ background:var(--surface); border:1px solid var(--line-2); border-radius:10px; padding:1.1rem 1.35rem 1.25rem; margin:1.6rem 0 2.2rem; }
.toc .toc-h{
	font-family:"Hanken Grotesk","PingFang SC",sans-serif;
	font-size:.8rem; font-weight:700; letter-spacing:.04em; color:var(--ink);
	margin:0 0 .7rem; display:block;
}
.toc ol{ margin:0; padding-left:1.3rem; }
.toc li{ margin:.32rem 0; font-size:.98rem; line-height:1.5; }
.toc a{ color:var(--ink-soft); text-decoration:none; }
.toc a:hover{ color:var(--accent); }

/* 引用：去掉模板的左色条，改上下细线大字 */
body.single blockquote{
	border-left:0 !important; margin:2rem 0; padding:1.1rem 0;
	border-top:1px solid var(--line-2); border-bottom:1px solid var(--line-2);
	font-family:"Spectral","Noto Serif SC",Georgia,serif;
	font-size:1.3rem; line-height:1.55; color:var(--ink); font-style:normal;
}

/* 提示框 callout（全边框+淡染，无侧色条） */
.callout{ background:var(--accent-wash); border:1px solid #f4c9d6; border-radius:10px; padding:1.05rem 1.3rem; margin:1.9rem 0; }
.callout p{ margin:0; color:#83133c; font-size:1.02rem; line-height:1.72; max-width:none; }

/* 软桥 CTA */
.cta-bridge{ background:var(--ink); border-radius:14px; padding:1.7rem 1.7rem 1.8rem; margin:2.6rem 0; }
.cta-bridge h3{ color:#fff; font-size:1.3rem; margin:0 0 .6rem; }
.cta-bridge p{ color:#c7ccd6; font-size:1rem; line-height:1.72; max-width:none; margin:0 0 1.15rem; }
.cta-bridge .button.primary{ background:var(--accent); color:#fff !important; box-shadow:none; }
.cta-bridge .button.primary:hover{ background:#e84876; }
.cta-bridge .fine{ font-size:.8rem; color:#888f9d; line-height:1.6; margin:.9rem 0 0; }
.cta-bridge .go-code{ display:flex; align-items:center; gap:.6rem; flex-wrap:wrap; margin:0 0 1.05rem; }
.cta-bridge .go-code .lbl{ font-size:.85rem; color:#c7ccd6; }
.cta-bridge .go-code code{ font-family:"Hanken Grotesk","PingFang SC",sans-serif; font-weight:700; font-size:1.1rem; letter-spacing:.05em; color:#fff; background:rgba(255,255,255,.1); padding:.25rem .7rem; border-radius:6px; }
.cta-bridge .copy-btn{ font-family:"Hanken Grotesk","PingFang SC",sans-serif; font-size:.82rem; font-weight:600; color:#fff; background:transparent; border:1px solid rgba(255,255,255,.3); border-radius:6px; padding:.32rem .75rem; cursor:pointer; transition:background .2s, border-color .2s, color .2s; }
.cta-bridge .copy-btn:hover{ background:rgba(255,255,255,.12); }
.cta-bridge .copy-btn.done{ border-color:var(--accent); color:#fff; background:var(--accent); }

/* 作者简介 */
.author-bio{ display:flex; gap:1rem; align-items:flex-start; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:1.5rem 0; margin:2.6rem 0 1.6rem; }
.author-bio img{ width:54px; height:54px; border-radius:50%; flex:0 0 54px; }
.author-bio .who{ font-family:"Spectral","Noto Serif SC",serif; font-weight:700; color:var(--ink); font-size:1.05rem; margin-bottom:.15rem; }
.author-bio p{ font-size:.94rem; color:var(--ink-mute); line-height:1.6; margin:0; max-width:none; }

/* 相关阅读 */
.related{ margin-top:2.4rem; }
.related .side-title{ margin-bottom:1.1rem; }
.related ul{ list-style:none; padding:0; margin:0; }
.related li{ border-bottom:1px solid var(--line); padding:.85rem 0; }
.related li:last-child{ border-bottom:0; }
.related .kicker{ display:block; margin-bottom:.15rem; font-size:.76rem; }
.related a.t{ color:var(--ink); text-decoration:none; font-family:"Spectral","Noto Serif SC",serif; font-weight:600; font-size:1.08rem; line-height:1.35; }
.related a.t:hover{ color:var(--accent-ink); }

@media screen and (max-width:480px){
	body.single .post p{ font-size:1rem; line-height:1.85; }
	body.single .post > h2{ font-size:1.3rem; }
	.cta-bridge{ padding:1.3rem; }
}

/* =========================================================================
   长文模块（SEO 长内容）：对比表 / 适合谁 / 检查清单 / 常见误区 / FAQ / 资料来源 / 更新记录
   ========================================================================= */

/* 导读 lede */
body.single .post .lede{ font-size:1.1rem; line-height:1.75; color:var(--ink-soft); border-left:0; }

/* 对比表 */
body.single .post .table-wrapper{ margin:1.9rem 0; overflow-x:auto; }
body.single .post table{ width:100%; font-size:.98rem; border-collapse:collapse; }
body.single .post table th{ background:var(--ink); color:#fff; font-family:"Hanken Grotesk","PingFang SC",sans-serif; font-weight:600; text-align:left; }
body.single .post table th, body.single .post table td{ padding:.7em .9em; border:1px solid var(--line-2); vertical-align:top; line-height:1.6; }
body.single .post table tbody tr:nth-child(even){ background:#eef1f4; }
body.single .post table td strong{ color:var(--ink); }

/* 适合谁 / 不适合谁 双栏 */
.audience{ display:grid; grid-template-columns:1fr 1fr; gap:1rem; margin:1.9rem 0; }
.audience .col{ border:1px solid var(--line-2); border-radius:10px; padding:1.1rem 1.25rem; background:var(--surface); }
.audience .col h3{ font-size:1rem; margin:0 0 .55rem; font-family:"Hanken Grotesk","PingFang SC",sans-serif; }
.audience .yes h3{ color:var(--accent-ink); }
.audience .no h3{ color:var(--ink-mute); }
.audience ul{ margin:0; padding-left:1.1rem; }
.audience li{ font-size:.95rem; line-height:1.7; margin:.2rem 0; }
@media (max-width:640px){ .audience{ grid-template-columns:1fr; } }

/* 检查清单 / 自检 */
.checklist{ list-style:none; padding:0; margin:1.5rem 0; }
.checklist li{ position:relative; padding:.55rem 0 .55rem 2rem; border-bottom:1px solid var(--line); line-height:1.7; font-size:1rem; }
.checklist li:last-child{ border-bottom:0; }
.checklist li::before{ content:"\2713"; position:absolute; left:0; top:.6rem; width:1.35rem; height:1.35rem; background:var(--accent-wash); color:var(--accent-ink); border-radius:5px; font-size:.85rem; font-weight:700; display:flex; align-items:center; justify-content:center; }

/* 常见误区 */
.myth{ margin:1.6rem 0; }
.myth .m{ border:1px solid var(--line-2); border-radius:10px; padding:1rem 1.2rem; margin:.8rem 0; background:var(--surface); }
.myth .m .x{ font-family:"Hanken Grotesk","PingFang SC",sans-serif; font-weight:700; color:var(--ink); display:block; margin-bottom:.3rem; }
.myth .m .x::before{ content:"误解："; color:var(--accent-ink); }
.myth .m p{ margin:0; font-size:.97rem; line-height:1.7; }
.myth .m p::before{ content:"其实："; font-weight:700; color:var(--ink); }

/* FAQ：原生 details，无需 JS，内容在 DOM 里(利于收录) */
.faq{ margin:1.7rem 0; }
.faq details{ border-bottom:1px solid var(--line-2); }
.faq summary{ cursor:pointer; padding:.95rem 0; font-family:"Spectral","Noto Serif SC",serif; font-weight:600; font-size:1.08rem; color:var(--ink); list-style:none; position:relative; padding-right:1.8rem; }
.faq summary::-webkit-details-marker{ display:none; }
.faq summary::after{ content:"+"; position:absolute; right:.2rem; top:.75rem; color:var(--accent); font-size:1.4rem; line-height:1; }
.faq details[open] summary::after{ content:"\2013"; }
.faq details > p{ margin:0 0 1rem; color:var(--ink-soft); font-size:1rem; line-height:1.8; max-width:42em; }

/* 资料来源 */
.sources{ background:var(--surface); border:1px solid var(--line-2); border-radius:10px; padding:1.1rem 1.35rem 1.25rem; margin:2rem 0; }
.sources h2{ font-size:.82rem !important; border:0 !important; margin:0 0 .6rem !important; padding:0 !important; font-family:"Hanken Grotesk","PingFang SC",sans-serif; letter-spacing:.04em; color:var(--ink); }
.sources ul{ margin:0; padding-left:1.15rem; }
.sources li{ font-size:.93rem; line-height:1.75; margin:.2rem 0; }

/* 更新记录 / 编辑说明 */
.updated{ font-size:.86rem; color:var(--ink-mute); border-top:1px solid var(--line); padding-top:1rem; margin-top:2.2rem; line-height:1.65; }
.updated strong{ color:var(--ink); }

/* 工具索引页 · 卡片网格 */
.tools-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:1rem; margin:1.8rem 0 0; }
.tool-card{ display:block; border:1px solid var(--line-2); border-radius:12px; padding:1.2rem 1.3rem 1.3rem; background:var(--surface); transition:border-color .2s, transform .15s, box-shadow .2s; }
.tool-card:hover{ border-color:var(--accent); transform:translateY(-2px); box-shadow:0 6px 22px rgba(22,24,29,.07); }
.tool-card .kicker{ margin-bottom:.4rem; }
.tool-card h2{ font-size:1.18rem; margin:0 0 .5rem; line-height:1.3; color:var(--ink); }
.tool-card p{ font-size:.95rem; line-height:1.68; color:var(--ink-soft); margin:0 0 .9rem; max-width:none; }
.tool-card .go{ font-family:"Hanken Grotesk","PingFang SC",sans-serif; font-weight:700; color:var(--accent-ink); font-size:.92rem; }
.tool-card:hover .go{ color:var(--accent); }

/* 首页侧栏 · 实用工具列表（分流器，不堆按钮） */
.tool-list{ list-style:none; padding:0; margin:0; }
.tool-list li{ border-bottom:1px solid var(--line); }
.tool-list li:last-child{ border-bottom:0; }
.tool-list a{ display:block; padding:.72rem 0; }
.tool-list strong{ display:block; font-family:"Spectral","Noto Serif SC",serif; font-weight:600; color:var(--ink); font-size:1.02rem; line-height:1.32; }
.tool-list a:hover strong{ color:var(--accent-ink); }
.tool-list span{ display:block; font-size:.83rem; color:var(--ink-mute); margin-top:.12rem; }

/* =========================================================================
   工具页：判断清单工具（诚实逻辑，非"AI 检测"）
   ========================================================================= */
.tool{ margin:1.6rem 0 0; }
.tool .q{ border-bottom:1px solid var(--line); padding:1.05rem 0; }
.tool .q:first-of-type{ border-top:1px solid var(--line-2); }
.tool .qt{ display:block; font-family:"Spectral","Noto Serif SC",serif; font-weight:600; color:var(--ink); font-size:1.06rem; line-height:1.5; margin-bottom:.65rem; }
.tool .qt .n{ color:var(--accent-ink); margin-right:.4rem; }
.tool .opts{ display:flex; gap:.5rem; flex-wrap:wrap; }
.tool .opts label{ cursor:pointer; line-height:1; }
.tool .opts input{ position:absolute; opacity:0; width:0; height:0; }
.tool .opts span{ display:inline-block; padding:.42rem .95rem; border:1px solid var(--line-2); border-radius:999px; font-size:.9rem; color:var(--ink-soft); transition:background-color .15s, color .15s, border-color .15s; }
.tool .opts input:checked + span{ background:var(--ink); color:#fff; border-color:var(--ink); }
.tool .opts label:focus-within span{ box-shadow:0 0 0 2px var(--accent-wash); }
.tool-actions{ display:flex; align-items:center; gap:1rem; flex-wrap:wrap; margin:1.6rem 0 0; }
.tool-actions .hint{ font-size:.85rem; color:var(--ink-mute); }
.tool-result{ display:none; border-radius:12px; padding:1.3rem 1.4rem 1.4rem; margin-top:1.6rem; border:1px solid var(--line-2); background:var(--surface); }
.tool-result.show{ display:block; }
.tool-result .verdict{ font-family:"Spectral","Noto Serif SC",serif; font-weight:700; font-size:1.32rem; line-height:1.3; margin:0 0 .5rem; color:var(--ink); }
.tool-result .sub{ color:var(--ink-soft); font-size:1rem; line-height:1.7; margin:0; }
.tool-result.warn{ background:var(--accent-wash); border-color:#f4c9d6; }
.tool-result.warn .verdict{ color:var(--accent-ink); }
.tool-result .flags{ list-style:none; padding:0; margin:1rem 0 0; }
.tool-result .flags li{ font-size:.95rem; line-height:1.65; padding:.32rem 0 .32rem 1.6rem; position:relative; color:var(--ink-soft); border-top:1px solid var(--line); }
.tool-result .flags li::before{ position:absolute; left:0; top:.32rem; font-weight:700; }
.tool-result .flags li.red::before{ content:"\26A0"; color:var(--accent-ink); }
.tool-result .flags li.ask::before{ content:"?"; color:var(--ink-mute); }
.tool-result .flags li.ok::before{ content:"\2713"; color:#1f7a4d; }
.tool-result .more{ margin:1.1rem 0 0; font-size:.95rem; }

/* en 工具表单（fieldset/legend/label 结构；结果区复用上面的 .tool-result）*/
.tool-box{ margin:1.6rem 0 0; }
.tool-box fieldset{ border:0; border-top:1px solid var(--line); padding:1.05rem 0; margin:0; }
.tool-box fieldset:first-of-type{ border-top:1px solid var(--line-2); }
.tool-box legend{ display:block; float:none; width:100%; padding:0; margin:0 0 .65rem; font-family:"Spectral","Noto Serif SC",Georgia,serif; font-weight:600; color:var(--ink); font-size:1.06rem; line-height:1.5; }
.tool-box label{ display:inline-block; cursor:pointer; margin:0 .45rem .5rem 0; line-height:1; }
.tool-box label input{ position:absolute; opacity:0; width:0; height:0; }
.tool-box label span{ display:inline-block; padding:.42rem .95rem; border:1px solid var(--line-2); border-radius:999px; font-size:.9rem; color:var(--ink-soft); transition:background-color .15s, color .15s, border-color .15s; }
.tool-box label:hover span{ border-color:var(--ink-mute); }
.tool-box label:focus-within span{ box-shadow:0 0 0 2px var(--accent-wash); }
.tool-box input:checked + span{ background:var(--ink); color:#fff; border-color:var(--ink); }
.tool-box .actions{ margin-top:1.4rem; }
.tool-box .tool-hint{ font-size:.85rem; color:var(--ink-mute); line-height:1.6; margin:.9rem 0 0; }

/* ---------- 动效可访问性 ---------- */
@media (prefers-reduced-motion:reduce){
	*{ animation:none !important; transition:none !important; }
	#main .image.featured:hover img{ transform:none; }
}
/* English localization helpers */
html[lang="en"] .myth .m .x::before{ content:"Myth: "; }
html[lang="en"] .myth .m p::before{ content:"Reality: "; }
/* ---------- 语言切换下拉（details/summary，无依赖 JS 也能开合） ---------- */
#header nav.main .lang{ position:relative; }
#header nav.main .lang .langsel{ height:inherit; }
#header nav.main .lang summary{
	list-style:none; cursor:pointer; outline:none;
	display:inline-flex; align-items:center; gap:.42em;
	height:inherit; line-height:1;
	padding:0 1rem; margin:0; float:none;
	font-family:"Hanken Grotesk","PingFang SC",sans-serif;
	font-weight:600; font-size:.82rem; color:var(--ink-mute);
	white-space:nowrap; text-indent:0; width:auto; overflow:visible;
}
#header nav.main .lang summary::-webkit-details-marker{ display:none; }
#header nav.main .lang summary::after{
	content:""; width:.42em; height:.42em; margin-top:-.2em;
	border-right:1.7px solid currentColor; border-bottom:1.7px solid currentColor;
	transform:rotate(45deg); transition:transform .18s ease; opacity:.75;
}
#header nav.main .lang summary:hover,
#header nav.main .lang .langsel[open] summary{ color:var(--accent); }
#header nav.main .lang .langsel[open] summary::after{ transform:rotate(225deg); margin-top:.12em; }
#header nav.main .lang .langmenu{
	position:absolute; top:calc(100% - 8px); right:.5rem; z-index:80;
	margin:0; padding:.3rem; min-width:9em; list-style:none;
	background:var(--surface); border:1px solid var(--line-2);
	border-radius:11px; box-shadow:0 12px 30px rgba(20,22,28,.16);
	text-align:left;
}
#header nav.main .lang .langmenu li{
	border:0; height:auto; line-height:1.2; float:none; white-space:nowrap; margin:0;
}
#header nav.main .lang .langmenu li > *{ float:none; display:block; }
#header nav.main .lang .langmenu a{
	display:flex; align-items:center; justify-content:space-between; gap:1.2em;
	padding:.5rem .7rem; border-radius:7px;
	font-family:"Hanken Grotesk","PingFang SC",sans-serif;
	font-weight:600; font-size:.86rem; color:var(--ink);
	text-indent:0; width:auto; overflow:visible;
}
#header nav.main .lang .langmenu a:hover{ background:var(--paper); color:var(--accent); }
#header nav.main .lang .langmenu a.on{ color:var(--accent); cursor:default; }
#header nav.main .lang .langmenu a.on::after{ content:"\2713"; font-size:.85em; opacity:.9; }


/* ---------- 信息图配图（内联 SVG，替代通用 hero 图） ---------- */
.figure-hero{ margin:0 0 2.25rem; }
.figure-hero svg{ width:100%; height:auto; display:block; border:1px solid var(--line-2); border-radius:12px; background:var(--surface); }
.figure-hero figcaption{ font-family:"Hanken Grotesk","PingFang SC",sans-serif; font-size:.84rem; color:var(--ink-mute); margin:.7rem 0 0; line-height:1.5; }


/* ---------- Cookie 同意横幅（Consent Mode v2） ---------- */
.consent-bar{
	position:fixed; left:0; right:0; bottom:0; z-index:200;
	display:flex; flex-wrap:wrap; align-items:center; gap:.85rem 1.4rem;
	padding:.95rem 1.4rem; background:var(--surface);
	border-top:1px solid var(--line-2); box-shadow:0 -6px 24px rgba(20,22,28,.10);
}
.consent-bar p{
	margin:0; flex:1 1 320px;
	font-family:"Hanken Grotesk","PingFang SC",sans-serif;
	font-size:.9rem; line-height:1.55; color:var(--ink-soft);
}
.consent-bar p a{ color:var(--accent-ink); }
.consent-actions{ display:flex; gap:.6rem; flex:0 0 auto; }
.consent-bar button{
	font-family:"Hanken Grotesk","PingFang SC",sans-serif;
	font-weight:700; font-size:.88rem; border-radius:7px;
	padding:.5rem 1.15rem; cursor:pointer;
	border:1px solid var(--line-2); background:#fff; color:var(--ink);
	transition:background-color .15s ease, border-color .15s ease, color .15s ease;
}
.consent-bar .c-accept{ background:var(--accent); color:#fff; border-color:var(--accent); }
.consent-bar .c-accept:hover{ background:var(--accent-ink); border-color:var(--accent-ink); }
.consent-bar .c-decline:hover{ border-color:var(--ink-mute); color:var(--ink); }
@media (max-width:540px){
	.consent-actions{ flex:1 1 100%; }
	.consent-bar button{ flex:1; }
}


/* ---------- 图片兜底（防缓存混用/旧图撑破布局 + 修图片比例） ---------- */
/* 全局：max-width 防溢出；height:auto 让高度跟随宽度按比例，
   修复加 width/height 属性后高度被钉死、卡片封面/头像被拉伸变形的问题。
   有显式尺寸的(.author-bio img 54px / 首图 object-fit:cover)更具体规则照常生效。 */
img{ max-width:100%; height:auto; }
