/* 全局基础样式 */ html { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } /* UnoCSS wind3 preflight 未含 Tailwind 标准的 border 重置:浏览器默认 border-style 为 none, 导致 border-b / border 等宽度工具类不可见,此处补上(宽度默认 0,不影响未显式设置边框的元素) */ *, ::before, ::after { box-sizing: border-box; border-width: 0; border-style: solid; border-color: currentColor; } body { margin: 0; /* 正文/UI:英文走 Inter,中文走 Noto Sans SC(已按 unicode-range 拆分按需下载), 未加载完成时回退系统字体(macOS PingFang / Windows 微软雅黑),font-display: swap 不阻塞渲染 */ font-family: 'Inter', 'Noto Sans SC', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', sans-serif; } /* 品牌大标题字体:英文走 Space Grotesk,中文走 Noto Sans SC(标题元素 font-weight 多为 700, 复用正文已加载的 700 字重 CJK 子集,零额外体积)。富文本内标题由 .rich-text 规则还原为正文字体,保证可读性。 */ h1, section h2 { font-family: 'Space Grotesk', 'Noto Sans SC', sans-serif; } /* 链接统一下划线重置,避免浏览器默认样式 */ a { text-decoration: none; } /* 区块标题字号统一由此处控制:config.title_font_size 经 SectionRenderer 注入 --sec-title-fs(桌面) / --sec-title-fs-m(移动端),留空兜底桌面 36px / 移动端 22.5px(62.5%); 富文本内的 h2 由 .rich-text 标题规则覆盖(class 选择器优先级更高) */ section h2 { font-size: var(--sec-title-fs-m, 22.5px); } @media (min-width: 768px) { section h2 { font-size: var(--sec-title-fs, 36px); } } /* 富文本(wangEditor 输出 HTML)样式还原:UnoCSS preflight 重置了 p/列表/标题等默认样式 */ .rich-text p { margin: 0 0 0.75em; } .rich-text > p:last-child { margin-bottom: 0; } .rich-text ul, .rich-text ol { margin: 0 0 0.75em; padding-left: 1.5em; } .rich-text ul { list-style: disc; } .rich-text ol { list-style: decimal; } .rich-text h1, .rich-text h2, .rich-text h3, .rich-text h4, .rich-text h5 { margin: 0.6em 0; font-weight: 700; line-height: 1.3; /* 还原为正文字体,覆盖 h1/section h2 的标题字体(选择器优先级更高) */ font-family: 'Inter', 'Noto Sans SC', sans-serif; } .rich-text h1 { font-size: 1.6em; } .rich-text h2 { font-size: 1.4em; } .rich-text h3 { font-size: 1.2em; } .rich-text h4, .rich-text h5 { font-size: 1.05em; } .rich-text blockquote { margin: 0 0 0.75em; padding-left: 12px; border-left: 3px solid currentColor; opacity: 0.8; } .rich-text a { text-decoration: underline; }