/* Terms, privacy and accessibility pages (js/views/legal.js), and the
   legal links footer on every screen. */

.legal { gap: var(--s3); }
.legal h1:focus { outline: none; }
.draft-banner {
  margin: 0; padding: 10px 14px; border-radius: var(--r-sm);
  background: #FFF1BF; color: #5C4200; font-weight: 700; font-size: 13.5px;
}
.legal-updated { margin: 0; font-size: 13px; color: var(--ink-2); }
.legal-intro { margin: 0; font-size: 15.5px; line-height: 1.6; }
.legal-sec { display: grid; gap: 6px; }
.legal-sec h2 { margin: 8px 0 0; font-size: 17px; font-weight: 800; }
.legal-sec p, .legal-sec li { margin: 0; line-height: 1.6; font-size: 15px; }
.legal-sec ul { margin: 0; padding-inline-start: 22px; display: grid; gap: 4px; }
.legal-links { padding-top: var(--s3); border-top: 1px solid var(--line); font-size: 14px; }
.legal-links a, .legal-foot a { color: var(--purple-600); font-weight: 700; }

.legal-foot {
  margin-top: var(--s2); padding-top: var(--s3); border-top: 1px solid var(--line);
  display: flex; flex-wrap: wrap; justify-content: center; gap: 4px; font-size: 12.5px; color: var(--ink-2);
}
a.item { color: inherit; text-decoration: none; }

/* sign-up consent */
.consent { display: flex; align-items: flex-start; gap: 10px; font-size: 14px; line-height: 1.5; }
.consent input { width: 22px; height: 22px; margin: 1px 0 0; flex: none; accent-color: var(--purple); }
.consent a { color: var(--purple-600); font-weight: 700; }
.consent.invalid { color: var(--danger); }
