/* =====================================================================
   GOKUDO — Terms of Use 利用規約 页样式。1:1 还原设计稿 terms.html。
   仅本页专属:页头(含版本行)/ 法律文档排版(条款/定义/callout/statutory)。
   banner / footer / wrap / mono / 字体变量 来自 site.css + style.css。
   仅在 Terms 页加载(见 functions.php,slug=terms)。
   ===================================================================== */

/* ============ PAGE HEAD ============ */
.pagehead{border-bottom:1px solid var(--line);background:var(--bg);padding:60px 0 44px}
.ph-crumb{display:flex;align-items:center;gap:10px;color:var(--faint);margin-bottom:30px;flex-wrap:wrap}
.ph-crumb a{color:var(--faint);transition:color .2s}
.ph-crumb a:hover{color:var(--accent)}
.ph-crumb .sep{color:var(--line)}
.ph-crumb .cur{color:var(--ink)}
.ph-title{display:flex;align-items:flex-end;gap:20px;flex-wrap:wrap}
.ph-title h1{font-family:var(--display);font-weight:900;font-size:clamp(48px,6.4vw,98px);line-height:.84;text-transform:uppercase;letter-spacing:-.02em}
.ph-title .han{font-family:var(--han);font-size:clamp(26px,3.4vw,44px);color:var(--accent);line-height:1;margin-bottom:6px}
.ph-rule{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:30px;padding-top:22px;border-top:1px solid var(--line);
	font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--faint)}
.ph-rule .dot{width:5px;height:5px;background:var(--line);border-radius:50%}
.ph-rule b{color:var(--ink);font-weight:700}
.ph-rule .han{font-family:var(--han);color:var(--accent);letter-spacing:.1em;font-size:13px}

/* ============ DOC LAYOUT ============ */
.doc{padding:60px 0 100px;background:var(--bg)}
.legal{max-width:none}
.legal .preamble{font-size:18px;line-height:1.75;color:var(--muted);padding-bottom:38px;margin-bottom:10px;border-bottom:1px solid var(--line);text-wrap:pretty}
.legal .preamble strong{color:var(--ink);font-weight:600}
.clause{padding:44px 0;border-bottom:1px solid var(--line2);scroll-margin-top:104px}
.clause:last-child{border-bottom:none}
.clause h2{font-family:var(--display);font-weight:900;font-size:clamp(24px,2.6vw,34px);line-height:1;text-transform:uppercase;letter-spacing:-.005em;
	display:flex;align-items:baseline;gap:16px;margin-bottom:24px}
.clause h2 .cn{font-family:var(--mono);font-size:13px;letter-spacing:.08em;color:var(--accent);font-weight:700;flex:none;width:34px}
.clause p{font-size:15.5px;line-height:1.8;color:var(--ink);margin-bottom:16px;text-wrap:pretty;max-width:1040px}
.clause p:last-child{margin-bottom:0}
.clause p strong{font-weight:600}
.clause .sub{display:flex;gap:16px;margin-bottom:16px}
.clause .sub .sn{font-family:var(--mono);font-size:12px;color:var(--accent);flex:none;width:34px;padding-top:2px;letter-spacing:.04em}
.clause .sub p{margin-bottom:0}
.clause ul{list-style:none;margin:0 0 16px 34px}
.clause ul li{position:relative;padding-left:22px;font-size:15.5px;line-height:1.75;color:var(--ink);margin-bottom:10px}
.clause ul li::before{content:"—";position:absolute;left:0;color:var(--accent)}

/* definitions */
.defs{margin:6px 0 4px 34px;border-left:1px solid var(--line);padding-left:24px}
.defs dt{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:5px}
.defs dd{font-size:15px;line-height:1.7;color:var(--muted);margin:0 0 18px}
.defs dd:last-child{margin-bottom:0}

/* callout */
.callout{background:var(--bg2);border:1px solid var(--line);padding:24px 26px;margin:8px 0 4px;display:flex;gap:18px;align-items:flex-start}
.callout .mk{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);line-height:1.4;flex:none;padding-top:2px}
.callout p{font-size:14px;line-height:1.7;color:var(--muted);margin:0}
.callout p strong{color:var(--ink)}

/* emphatic / all-caps statutory paragraph */
.statutory{font-family:var(--mono);font-size:12.5px;letter-spacing:.04em;line-height:1.75;text-transform:uppercase;
	color:var(--muted);background:var(--panel);border:1px solid var(--line);padding:22px 24px;margin:8px 0 4px}

.doc-foot{margin-top:60px;padding-top:30px;border-top:1px solid var(--line);
	display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}
.doc-foot a{color:var(--accent);transition:color .2s}
.doc-foot a:hover{color:var(--ink)}
.totop{display:inline-flex;align-items:center;gap:8px;transition:gap .2s}
.totop:hover{gap:14px}

/* ============ 页面编辑器纯文本兜底排版 ============ */
/* 仅当正文是"纯文本区块"(标题/段落/列表 为 .legal-content 直接子元素)时生效,
   用直接子选择器(>)避免干扰下方带 .clause 设计结构的 HTML 区块。 */
.legal-content > h2,.legal-content > h3,.legal-content > h4{font-family:var(--display);font-weight:900;text-transform:uppercase;letter-spacing:-.005em;line-height:1.05;
	color:var(--ink);margin:48px 0 20px;padding-top:44px;border-top:1px solid var(--line2)}
.legal-content > h2{font-size:clamp(24px,2.6vw,34px)}
.legal-content > h3{font-size:clamp(20px,2vw,26px)}
.legal-content > h4{font-size:18px}
.legal-content > h2:first-child,.legal-content > h3:first-child{margin-top:0;padding-top:0;border-top:none}
.legal-content > p{font-size:15.5px;line-height:1.8;color:var(--ink);margin:0 0 16px;text-wrap:pretty;max-width:1040px}
.legal-content > p:first-of-type{font-size:18px;line-height:1.75;color:var(--muted);padding-bottom:38px;margin-bottom:24px;border-bottom:1px solid var(--line)}
.legal-content > ul,.legal-content > ol{margin:0 0 16px 0;padding-left:0;list-style:none}
.legal-content > ul li{position:relative;padding-left:24px;font-size:15.5px;line-height:1.75;color:var(--ink);margin-bottom:10px;max-width:1040px}
.legal-content > ul li::before{content:"—";position:absolute;left:0;color:var(--accent)}
.legal-content > blockquote{font-family:var(--mono);font-size:12.5px;letter-spacing:.04em;line-height:1.75;text-transform:uppercase;
	color:var(--muted);background:var(--panel);border:1px solid var(--line);padding:22px 24px;margin:8px 0 20px}
.legal-content > hr{border:none;border-top:1px solid var(--line);margin:44px 0}
/* 强调:通用于任何粘贴内容 —— <strong>=黑加粗,<em>=品牌红,链接=红下划线 */
.legal-content strong,.legal-content b{font-weight:600;color:var(--ink)}
.legal-content em{font-style:normal;color:var(--accent)}
.legal-content a{color:var(--accent)}
.legal-content a:hover{color:var(--ink)}

/* ============ RESPONSIVE ============ */
@media(max-width:560px){
	.clause .sub{flex-direction:column;gap:4px}
	.defs{margin-left:0}
	.clause ul{margin-left:0}
}
