:root {
  --legal-bg: #0a0f1a;
  --legal-text: #e8edf5;
  --legal-muted: #8b9cb8;
  --legal-accent: #00e5ff;
  --legal-border: rgba(0, 229, 255, 0.15);
  --legal-max: 720px;
  --font-body: "Noto Sans SC", system-ui, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

body {
  font-family: var(--font-body);
  background: var(--legal-bg);
  color: var(--legal-text);
  line-height: 1.75;
  padding: 24px 16px 48px;
}

.legal-wrap {
  max-width: var(--legal-max);
  margin: 0 auto;
}

.legal-back {
  display: inline-block;
  margin-bottom: 20px;
  font-size: 0.9rem;
  color: var(--legal-accent);
  text-decoration: none;
}

.legal-back:hover { text-decoration: underline; }

.legal-header h1 {
  font-size: 1.6rem;
  margin-bottom: 8px;
}

.legal-meta {
  font-size: 0.85rem;
  color: var(--legal-muted);
  margin-bottom: 28px;
}

.legal-header {
  padding-bottom: 20px;
  margin-bottom: 24px;
  border-bottom: 1px solid var(--legal-border);
}

.legal-body h2 {
  font-size: 1.05rem;
  margin: 28px 0 12px;
  color: var(--legal-accent);
}

.legal-body p,
.legal-body li {
  font-size: 0.92rem;
  color: var(--legal-muted);
  margin-bottom: 10px;
}

.legal-body ul {
  padding-left: 1.2em;
  margin-bottom: 12px;
}

.legal-body a {
  color: var(--legal-accent);
}

.legal-footer {
  margin-top: 36px;
  padding-top: 20px;
  border-top: 1px solid var(--legal-border);
  font-size: 0.85rem;
  color: var(--legal-muted);
}

.legal-footer a { color: var(--legal-accent); }
