/* legal-doc.css — 系统文档（隐私政策/用户协议/用户指南）正文渲染样式
 * 由 system-documents 云函数返回 content_html 注入到 modal / 编辑器预览时套用。
 * 仅含正文相关规则；导航/页脚样式已由页面外壳承载。
 */
.legal-page { max-width: 880px; margin: 0 auto; padding: 28px 24px 32px; background: #fff; border-radius: 14px; box-shadow: 0 2px 18px rgba(0,0,0,.06); }
.legal-header { border-bottom: 2px solid var(--c-primary); padding-bottom: 18px; margin-bottom: 24px; }
.legal-header h1 { font-family: var(--font-display); font-size: 28px; color: var(--c-primary-deep); margin: 0 0 10px 0; line-height: 1.3; }
.legal-meta { color: #6b7280; font-size: 13px; line-height: 1.7; }
.legal-meta .meta-item { margin-right: 18px; }
.legal-meta strong { color: #374151; }
.legal-toc { background: var(--c-primary-ghost); border-left: 4px solid var(--c-primary); padding: 16px 20px 16px 28px; border-radius: 6px; margin: 20px 0; font-size: 14px; }
.legal-toc-title { font-weight: 700; color: var(--c-primary-deep); margin-bottom: 8px; font-size: 15px; }
.legal-toc ul { margin: 0; padding-left: 20px; }
.legal-toc li { margin: 4px 0; line-height: 1.6; }
.legal-toc a { color: #064e3b; text-decoration: none; }
.legal-toc a:hover { text-decoration: underline; }
.legal-h2 { font-family: var(--font-display); font-size: 22px; color: var(--c-primary-deep); margin: 32px 0 14px; padding-bottom: 8px; border-bottom: 1px solid #e5e7eb; scroll-margin-top: 80px; }
.legal-h3 { font-size: 17px; color: #064e3b; font-weight: 700; margin: 22px 0 10px; scroll-margin-top: 80px; }
.legal-p { line-height: 1.85; color: #2d2d2d; margin: 10px 0; font-size: 15px; }
.legal-ul, .legal-ol { padding-left: 26px; line-height: 1.85; margin: 8px 0; }
.legal-li { margin: 4px 0; color: #2d2d2d; font-size: 15px; }
.legal-blockquote { background: #fffbeb; border-left: 4px solid #f59e0b; padding: 12px 18px; margin: 14px 0; border-radius: 4px; color: #78350f; font-size: 14px; line-height: 1.7; }
.legal-blockquote strong { color: #92400e; }
.legal-hr { border: 0; height: 1px; background: linear-gradient(to right, transparent, #d1d5db, transparent); margin: 32px 0; }
.legal-pending { display: inline; padding: 1px 6px; border-radius: 3px; background: #fef3c7; color: #92400e; font-weight: 600; font-size: 14px; border: 1px dashed #f59e0b; }
.legal-table-wrap { overflow-x: auto; margin: 16px 0; border-radius: 6px; box-shadow: 0 1px 4px rgba(0,0,0,.05); }
.legal-table { width: 100%; border-collapse: collapse; font-size: 14px; background: #fff; }
.legal-table th { background: var(--c-primary-ghost); color: var(--c-primary-deep); padding: 10px 14px; text-align: left; font-weight: 700; border-bottom: 2px solid var(--c-primary); }
.legal-table td { padding: 10px 14px; border-bottom: 1px solid #e5e7eb; color: #2d2d2d; line-height: 1.6; }
.legal-table tr:last-child td { border-bottom: 0; }
.legal-table tr:hover td { background: #f9fafb; }
.legal-options { display: block; background: #eff6ff; border-left: 4px solid #3b82f6; padding: 10px 16px; margin: 10px 0; border-radius: 4px; color: #1e3a8a; font-size: 14px; line-height: 1.7; }
.legal-options strong { color: #1e40af; }
html { scroll-behavior: smooth; }
@media (max-width: 768px) {
  .legal-page { padding: 18px 14px 24px; margin-top: 12px; border-radius: 8px; }
  .legal-header h1 { font-size: 22px; }
  .legal-h2 { font-size: 18px; }
  .legal-h3 { font-size: 15px; }
  .legal-p, .legal-li { font-size: 14px; }
}
