/**
 * TopPair Landing — legal pages
 * ==============================
 * Loaded on top of styles.css (which supplies the tokens, Nunito and the page
 * background). The wording of these pages is copied verbatim from the app's
 * legal views; only the wrapper is restyled to match the landing page, because
 * the app's own legal views still use the older slate/Inter look.
 */

.legal-view {
  max-width: 46rem;
  margin: 0 auto;
  padding: 24px 20px 80px;
  font-size: 15px;
  line-height: 1.65;
}

.legal-back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 28px;
  padding: 8px 16px 8px 12px;
  border: 1px solid var(--border);
  border-radius: var(--r-pill);
  background: var(--surface);
  color: var(--text);
  font-size: 14px;
  font-weight: 800;
  text-decoration: none;
}

.legal-back:hover {
  border-color: var(--text-dim);
}

.review-banner {
  background: rgba(230, 179, 74, .08);
  border: 1px solid rgba(230, 179, 74, .4);
  border-radius: var(--r-md);
  padding: 12px 16px;
  font-size: 13px;
  color: #f0dcb0;
  margin-bottom: 32px;
  line-height: 1.5;
}

.review-banner strong {
  color: var(--gold);
}

.legal-view h1 {
  font-size: 31px;
  font-weight: 900;
  letter-spacing: -0.4px;
  margin: 0 0 6px;
  color: var(--text);
}

.legal-view .lead {
  color: var(--text-dim);
  margin: 0 0 32px;
  font-size: 15px;
}

.legal-view h2 {
  font-size: 20px;
  font-weight: 800;
  color: var(--text);
  margin: 32px 0 10px;
}

.legal-view h3 {
  font-size: 15px;
  font-weight: 800;
  color: var(--text);
  margin: 20px 0 8px;
}

.legal-view p,
.legal-view ul,
.legal-view li,
.legal-view address {
  color: var(--text);
}

.legal-view address {
  font-style: normal;
  line-height: 1.6;
}

.legal-view p {
  margin: 8px 0;
}

.legal-view ul {
  margin: 8px 0;
  padding-left: 22px;
}

.legal-view li {
  margin: 4px 0;
}

.legal-view ul ul {
  margin: 4px 0;
}

.legal-view a {
  color: var(--info);
  text-decoration: underline;
  text-decoration-color: rgba(86, 166, 216, .4);
}

.legal-view a:hover {
  text-decoration-color: var(--info);
}

.legal-view strong {
  color: var(--text);
}

/* Unfilled spot in a draft document. */
.legal-view .placeholder {
  background: rgba(230, 179, 74, .12);
  color: var(--gold);
  padding: 1px 6px;
  border-radius: 4px;
  font-size: 13px;
  font-family: ui-monospace, 'Courier New', monospace;
}

.legal-view .last-updated {
  margin-top: 48px;
  font-size: 13px;
  color: var(--text-dim);
  font-style: italic;
}

/* Imprint: side notes under a section. */
.legal-view p.note {
  font-size: 13px;
  color: var(--text-dim);
  font-style: italic;
  margin-top: 4px;
}

/* Terms: the clauses worth not missing. */
.legal-view .highlight {
  background: rgba(116, 192, 68, .08);
  border-left: 3px solid var(--primary);
  padding: 12px 16px;
  border-radius: 0 8px 8px 0;
}

/* Terms: the statutory right-of-withdrawal block. */
.legal-view .withdrawal {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--r-md);
  padding: 4px 20px 16px;
  margin: 24px 0;
}
