/* Long-form legal pages. The document body comes from Markdown, so the
   styling is attached to plain tags rather than utility classes. */

.legal-prose { color: rgb(var(--c-on-surface-variant)); }

.legal-prose > h1 { display: none; }            /* the page header already carries it */
.legal-prose > hr { display: none; }            /* the source uses --- as a section break */

.legal-prose h2 {
  margin: 2.5rem 0 0.75rem;
  font-size: 22px;
  line-height: 30px;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: rgb(var(--c-primary));
}
.legal-prose h2:first-child { margin-top: 0; }

.legal-prose h3 {
  margin: 1.75rem 0 0.5rem;
  font-size: 17px;
  line-height: 26px;
  font-weight: 600;
  color: rgb(var(--c-on-surface));
}

.legal-prose p,
.legal-prose li { font-size: 17px; line-height: 1.7; }
.legal-prose p { margin: 0 0 1rem; }

.legal-prose ul, .legal-prose ol { margin: 0 0 1.25rem; padding-left: 1.25rem; }
.legal-prose li { margin-bottom: 0.5rem; }
.legal-prose ul { list-style: disc; }
.legal-prose ol { list-style: decimal; }

.legal-prose strong { color: rgb(var(--c-on-surface)); font-weight: 600; }

.legal-prose a {
  color: rgb(var(--c-primary));
  text-decoration: underline;
  text-underline-offset: 2px;
  overflow-wrap: anywhere;
}

.legal-prose table { width: 100%; border-collapse: collapse; margin: 0 0 1.5rem; font-size: 15px; }
.legal-prose th, .legal-prose td {
  text-align: left;
  padding: 0.75rem;
  border-bottom: 1px solid rgb(var(--c-outline-variant));
}
.legal-prose th { color: rgb(var(--c-on-surface)); font-weight: 600; }

.legal-prose blockquote {
  margin: 0 0 1.25rem;
  padding: 0.75rem 1rem;
  border-left: 3px solid rgb(var(--c-primary));
  background: rgb(var(--c-surface-container-low));
  border-radius: 0 0.5rem 0.5rem 0;
}

.legal-prose code {
  font-size: 15px;
  padding: 0.1rem 0.3rem;
  border-radius: 0.25rem;
  background: rgb(var(--c-surface-container-high));
}
