:root { --bg: #0a0a0d; --surface: #15131a; --text: #f5f3f7; --muted: #a09aa6; --line: rgba(255,255,255,.1); --accent: #ed215b; --accent-bright: #ff6792; }
* { box-sizing: border-box; }
body { min-height: 100vh; margin: 0; color: var(--text); background: radial-gradient(circle at 72% -8%, #2a1025, transparent 31rem), var(--bg); font-family: "Outfit", "Microsoft YaHei", sans-serif; }
a { color: inherit; text-decoration: none; }
.legal-header, .legal-main, .legal-footer { width: min(900px, calc(100% - 48px)); margin: 0 auto; }
.legal-header { height: 78px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); }
.brand { display: inline-flex; align-items: center; gap: 8px; font-size: 19px; font-weight: 800; letter-spacing: -.06em; }.brand > span:last-child > span { color: var(--accent); }.brand-mark { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 8px; color: #fff; background: linear-gradient(135deg, var(--accent-bright), #b30944); font-size: 17px; font-style: italic; }
.back-link { color: #c5bec9; font-size: 13px; }.back-link span { margin-right: 7px; color: var(--accent-bright); font-size: 17px; }.back-link:hover { color: #fff; }
.legal-main { padding: 65px 0 80px; }.eyebrow { margin: 0 0 12px; color: var(--accent-bright); font: 11px "DM Mono", monospace; letter-spacing: .16em; }.legal-main h1 { margin: 0 0 10px; font-size: clamp(35px, 5vw, 52px); letter-spacing: -.055em; }.update-date { margin: 0 0 43px; color: #8e8794; font-size: 13px; }
.legal-content { padding: 35px; border: 1px solid var(--line); background: linear-gradient(135deg, rgba(255,255,255,.04), rgba(255,255,255,.012)); }.legal-content section + section { margin-top: 34px; }.legal-content h2 { margin: 0 0 13px; font-size: 21px; letter-spacing: -.03em; }.legal-content p, .legal-content li { color: var(--muted); font-size: 14px; line-height: 1.85; }.legal-content p { margin: 0; }.legal-content ul { margin: 13px 0 0; padding-left: 20px; }.legal-content strong { color: #e8e1eb; font-weight: 600; }
.legal-footer { padding: 25px 0 36px; border-top: 1px solid var(--line); color: #746e79; font-size: 11px; text-align: center; }
@media (max-width: 600px) { .legal-header, .legal-main, .legal-footer { width: min(100% - 32px, 580px); }.legal-header { height: 66px; }.legal-main { padding: 40px 0 55px; }.legal-content { padding: 25px 21px; } }
