/* 重置 + 排版基础 */ *, *::before, *::after { box-sizing: border-box; } * { margin: 0; } html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; } body { font-family: var(--font-sans); background: var(--bg); color: var(--text-primary); line-height: 1.65; font-size: 15px; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility; } a { color: var(--accent); text-decoration: none; transition: color var(--transition); } a:hover { color: var(--accent-hover); } img { max-width: 100%; display: block; } h1, h2, h3, h4 { line-height: 1.3; font-weight: 600; color: var(--text-primary); } h1 { font-size: 1.9rem; letter-spacing: -0.01em; } h2 { font-size: 1.4rem; letter-spacing: -0.01em; } h3 { font-size: 1.1rem; } p { color: var(--text-secondary); } button { font-family: inherit; cursor: pointer; border: none; background: none; } ul { list-style: none; padding: 0; } /* 容器 */ .container { max-width: var(--content-max); margin: 0 auto; padding: 0 var(--space-lg); } /* 区块标题 */ .section-title { margin-bottom: var(--space-md); } .section-title small { display: block; font-size: 0.8rem; font-weight: 500; color: var(--accent); text-transform: uppercase; letter-spacing: 0.08em; margin-bottom: var(--space-xs); } /* 减弱动效偏好 */ @media (prefers-reduced-motion: reduce) { * { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; scroll-behavior: auto !important; } }