/* v31 字体收敛：全站只用两套字体。
   标题：思源宋体（FX Black 900 / FX Serif 600）；其余一切（正文、界面、按钮、标签、小字、数字）：霞鹜文楷（FX Kai）。
   英文：直接用这两套字体自带的拉丁字形（fx*-latin.woff2 子集），不再另配西文字体。
   Noto Sans Symbols（FX Symbols）只承担 ☉☽♄☊☋ 等占星符号，作为字体栈末位回退，不显示普通文字。 */
/* 性能：字体栈里每个“本机没有的字体名”在首次排版时都要查一遍（Linux/安卓上每个约 15ms×每段文字，/bazi 首屏因此多出约 0.4 秒）。
   所以系统楷体/宋体回退只给苹果设备（只有它们自带这些字体），其它平台直接用 Noto 衬线（安卓自带）→ serif。 */
:root{--xt-body:"FX Kai","FX Symbols","Noto Serif CJK SC",serif;--xt-head:"FX Serif","FX Kai","FX Symbols","Noto Serif CJK SC",serif;--xt-black:"FX Black","FX Serif","FX Symbols","Noto Serif CJK SC",serif;
--fx-serif:var(--xt-head);--fx-kai:var(--xt-body);--fx-black:var(--xt-black);--ui-font-display:var(--xt-head);--ui-font-mono:var(--xt-body);--ui-font-body:var(--xt-body);--serif:var(--xt-head);--sans:var(--xt-body);--mono:var(--xt-body)}
html body,html body :where(*:not(svg,svg *,math,math *)),html body :is(code,pre,kbd,samp,input,select,textarea,button,small,label,td,th,span,p,li,a,summary,legend){font-family:var(--xt-body)!important}
html body :is(h1,h2,h3,h4,h5,h6,.n b,.dm b,.fx-dm,.jy-yr,.rzq-res>b,[class*="title"]:is(h1,h2,h3)){font-family:var(--xt-head)!important}
html body :is(h1,.ha h1,.jy-yr,.rzq-res>b,.dm b,.fx-hero h1,.fx-hero h2){font-family:var(--xt-black)!important}
html body :is(p,li,dd,summary,td){letter-spacing:normal}
/* 八字结果「本盘主线」及同类卡片：标题与按钮同一基线、正常字距、去掉卡中卡边框、序号与标题对齐、折叠行与正文左缘一致 */
html[data-tone] body.site-workspace :is(.overview-block,.reading-panel,.analysis-card)>.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:16px 20px 8px}
html[data-tone] body.site-workspace :is(.overview-block,.reading-panel,.analysis-card)>.section-head :is(h2,h3){margin:0;line-height:1.3}
html[data-tone] body.site-workspace #practice-overall-reading{padding:0 20px 8px}
html[data-tone] body.site-workspace .practice-main-item{border:0!important;border-radius:0!important;box-shadow:none!important;background:none!important;border-top:1px solid var(--ui-line,rgba(0,0,0,.12))!important;margin:0!important;padding:16px 0 16px 44px!important;max-width:none!important}
html[data-tone] body.site-workspace .practice-main-item:first-child{border-top:0!important}
html[data-tone] body.site-workspace .practice-main-item::before{font:600 15px/22.4px var(--xt-body)!important;top:16px!important;border:0!important;background:none!important;padding:0!important;width:auto!important;height:auto!important;position:absolute;left:0;color:var(--ui-accent-ink,currentColor)}
html[data-tone] body.site-workspace .practice-main-item h4{line-height:1.4;margin:0 0 8px!important}
html[data-tone] body.site-workspace .practice-main-item>p{max-width:none!important;letter-spacing:normal!important;margin-left:0!important}
html[data-tone] body.site-workspace .practice-main-item details{margin-left:0!important;padding-left:0!important;border:0!important;background:none!important}
html[data-tone] body.site-workspace .practice-main-item details>summary{padding-left:0!important;margin-left:0!important}
html[data-tone] body.site-workspace :is(.thesis,.digest-body,.key-time-list li){letter-spacing:normal}
/* 健康多体系对照 */
.hx{margin:24px 0 0;padding:20px 0 0;border-top:1px solid var(--ui-line,rgba(0,0,0,.12))}
.hx h3{margin:0 0 8px}.hx h4{margin:20px 0 8px;font-size:16px}
.hx-lead,.hx-note,.hx-src{color:var(--ui-muted,#666);font-size:14px;line-height:1.7}
.hx ol{list-style:none;padding:0;margin:0}
.hx-area{border:1px solid var(--ui-line,rgba(0,0,0,.12));border-radius:10px;padding:12px 14px;margin:0 0 10px}
.hx-area.hx-agree{border-color:#b9773a;background:rgba(185,119,58,.06)}
.hx-h{display:flex;align-items:baseline;gap:10px;margin-bottom:8px}
.hx-badge{font-size:12px;padding:1px 8px;border-radius:999px;border:1px solid currentColor;white-space:nowrap}
.hx-badge.hx-agree{color:#9a5a1e}.hx-badge.hx-watch{color:#667}
.hx-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.hx-col{font-size:13.5px;line-height:1.6}.hx-col ul{margin:2px 0 0;padding-left:16px}.hx-off{opacity:.45}
.hx-sys{display:block;font-weight:600;font-size:12.5px;color:var(--ui-muted,#666)}
.hx-win{padding:8px 0;border-top:1px solid var(--ui-line,rgba(0,0,0,.08));font-size:14px}
.hx-win>b{margin-right:8px}.hx-win>span{margin-left:8px}.hx-win ul{margin:4px 0 0;padding-left:18px;font-size:13px;color:var(--ui-muted,#555)}
.hx-med{margin-top:16px;padding:10px 12px;border-left:3px solid #b9773a;background:rgba(185,119,58,.07);font-size:14px}
@media (max-width:760px){.hx-grid{grid-template-columns:1fr 1fr}}

@supports (font:-apple-system-body){:root{--xt-body:"FX Kai","FX Symbols","Kaiti SC","STKaiti","BiauKai",serif;--xt-head:"FX Serif","FX Kai","FX Symbols","Songti SC",serif;--xt-black:"FX Black","FX Serif","FX Symbols","Songti SC",serif}}
/* Windows 自带“楷体 KaiTi”：只在 Windows 上把它放进回退（其它平台不加，避免查不存在的字体拖慢首屏） */
html.xt-win{--xt-body:"FX Kai","FX Symbols","KaiTi","SimKai",serif;--xt-head:"FX Serif","FX Kai","FX Symbols","SimSun",serif;--xt-black:"FX Black","FX Serif","FX Symbols","SimSun",serif}
