/* 法务页面统一样式（用户协议 / 隐私政策 / 免责声明） */

body {
  background: #f5f6f7;
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;
  color: #374151;
  line-height: 1.9;
  margin: 0;
}

.legal-top {
  background: #fff;
  border-bottom: 1px solid #e6e8eb;
  padding: 16px 0;
}
.legal-top .wrap {
  max-width: 900px; margin: 0 auto; padding: 0 20px;
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
}
.legal-logo { font-size: 19px; font-weight: 800; color: #c01830; text-decoration: none; letter-spacing: .5px; }
.legal-top nav a {
  margin-left: 16px; font-size: 13px; color: #6b7280; text-decoration: none;
}
.legal-top nav a:hover, .legal-top nav a.on { color: #c01830; }

.legal-wrap {
  max-width: 900px; margin: 0 auto; padding: 28px 20px 60px;
}

.legal-card {
  background: #fff; border: 1px solid #e6e8eb; border-radius: 12px;
  padding: 34px 38px 44px;
}

.legal-title {
  font-size: 26px; font-weight: 800; color: #111827;
  text-align: center; margin-bottom: 8px; letter-spacing: 1px;
}
.legal-meta {
  text-align: center; font-size: 13px; color: #9ca3af; margin-bottom: 30px;
}
.legal-meta span { margin: 0 8px; }

.legal-notice {
  background: #fff8f8; border: 1px solid #f3d0d0; border-left: 3px solid #c01830;
  border-radius: 6px; padding: 14px 16px; font-size: 13px; color: #7f1d1d;
  margin-bottom: 28px; line-height: 1.85;
}

.legal-card h2 {
  font-size: 17px; font-weight: 700; color: #c01830;
  margin: 34px 0 12px; padding-left: 11px; border-left: 4px solid #c01830;
}
.legal-card h3 {
  font-size: 15px; font-weight: 700; color: #1f2937; margin: 22px 0 8px;
}
.legal-card p { margin: 10px 0; font-size: 14.5px; }
.legal-card ul, .legal-card ol { margin: 10px 0; padding-left: 24px; }
.legal-card li { margin: 6px 0; font-size: 14.5px; }

.legal-card strong { color: #111827; }
.legal-card .hl { color: #c01830; font-weight: 700; }

.legal-table { width: 100%; border-collapse: collapse; margin: 14px 0; font-size: 14px; }
.legal-table th, .legal-table td {
  border: 1px solid #e6e8eb; padding: 9px 12px; text-align: left; vertical-align: top;
}
.legal-table th { background: #fafafa; font-weight: 700; color: #1f2937; white-space: nowrap; }

.legal-contact {
  background: #fafafa; border: 1px solid #e6e8eb; border-radius: 8px;
  padding: 18px 20px; margin-top: 30px; font-size: 14px; line-height: 2;
}
.legal-contact b { color: #111827; }

.legal-foot {
  text-align: center; font-size: 13px; color: #9ca3af; padding: 26px 20px 10px;
}
.legal-foot a { color: #6b7280; text-decoration: none; margin: 0 8px; }
.legal-foot a:hover { color: #c01830; }

.back-top {
  text-align: center; margin-top: 24px;
}
.back-top a {
  display: inline-block; padding: 9px 26px; border: 1px solid #d1d5db;
  border-radius: 22px; font-size: 14px; color: #4b5563; text-decoration: none;
  background: #fff;
}
.back-top a:hover { border-color: #c01830; color: #c01830; }

@media (max-width: 640px) {
  .legal-card { padding: 24px 18px 32px; border-radius: 0; border-left: 0; border-right: 0; }
  .legal-title { font-size: 22px; }
  .legal-card h2 { font-size: 16px; }
  .legal-card p, .legal-card li { font-size: 14px; }
  .legal-top .wrap { flex-direction: column; align-items: flex-start; gap: 8px; }
  .legal-top nav a { margin-left: 0; margin-right: 14px; }
}
