/* Legal pages: the site's tokens, a readable column. */
.legal { padding: 40px 0 64px; }
.legal .wrap { max-width: 780px; }
.legal h1 { font-size: clamp(1.9rem, 4vw, 2.6rem); margin-bottom: 8px; }
.legal h2 { font-size: 1.35rem; margin: 34px 0 10px; }
.legal p, .legal li { color: var(--text); }
.legal p + p { margin-top: 10px; }
.legal ul { padding-left: 22px; display: grid; gap: 6px; margin: 10px 0; }
.legal table { width: 100%; border-collapse: collapse; margin: 12px 0; font-size: .95rem; }
.legal th, .legal td { text-align: left; vertical-align: top; padding: 10px; border-bottom: 1px solid var(--border); }
.legal th { color: var(--text-soft); font-weight: 700; }
.legal .updated { color: var(--text-soft); }
.legal .pending { background: var(--accent-mist); color: var(--on-accent); padding: 0 6px; border-radius: 6px; }
.legal .card { margin-top: 18px; }
.legal form { display: grid; gap: 12px; margin-top: 12px; }
.legal input { min-height: 46px; border-radius: 14px; border: 1.5px solid var(--border); background: var(--card); color: var(--text); padding: 0 14px; font: inherit; }
.legal .msg { margin-top: 12px; font-weight: 600; }
.legal .msg.error { color: #C2473C; }
.legal .msg.ok { color: var(--success); }
.legal .row { display: flex; flex-wrap: wrap; gap: 10px; }
.btn-danger { background: #C2473C; color: #fff; }
