:root{--legal:#6c51e8}
.legal-page{width:min(100% - 32px,860px);margin:auto;padding:24px 0 calc(60px + env(safe-area-inset-bottom));color:var(--ink)}
.legal-hero{padding:72px 0 46px}
.legal-hero h1{margin:10px 0 18px;font-size:clamp(48px,9vw,78px);line-height:.92;letter-spacing:-.065em}
.legal-hero em{color:var(--legal);font-family:Georgia,serif;font-weight:400}
.legal-hero>p:last-child{max-width:570px;margin:0;color:var(--muted);font-size:18px;line-height:1.6}
.legal-card{margin-bottom:22px;padding:clamp(24px,5vw,48px);border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:var(--shadow)}
.legal-card h2{margin:8px 0 4px;font-size:clamp(32px,6vw,48px);letter-spacing:-.05em}.legal-card h3{margin:30px 0 8px;font-size:19px}
.legal-card p,.legal-card li{color:var(--muted);font-size:15px;line-height:1.7}.legal-card a{color:var(--legal)}.legal-card ul{padding-left:22px}
.effective{margin-top:0;font:12px var(--mono)!important;letter-spacing:.06em}.release-note{padding:16px;border:1px solid #e8c86b;border-radius:14px;background:#fff9e8;color:#705b1e!important}
.legal-card details{margin-top:28px;padding:16px 18px;border-radius:14px;background:#f5f3ee}.legal-card summary{cursor:pointer;font-weight:700}
.back-link{display:grid;min-width:72px;height:44px;place-items:center;border:1px solid var(--line);border-radius:12px;color:var(--ink);text-decoration:none;font:600 12px var(--mono)}
@media(max-width:600px){.legal-page{width:min(100% - 24px,860px);padding-top:calc(8px + env(safe-area-inset-top))}.legal-hero{padding:42px 4px 28px}.legal-hero h1{font-size:48px}.legal-card{padding:24px 20px;border-radius:22px}.legal-card h3{margin-top:25px}}
