/* ── LEGAL PAGES (Privacy / Terms) ── */

.legal-header {
  padding: 7rem 1.5rem 2rem;
  text-align: center;
  position: relative;
  z-index: 1;
}

.legal-header h1 {
  font-size: clamp(2rem, 5vw, 3rem);
  font-weight: 800;
  margin-bottom: 0.75rem;
  letter-spacing: -0.02em;
}

.legal-updated {
  color: rgba(255,255,255,0.42);
  font-size: 0.9rem;
  font-family: var(--mono, monospace);
}

/* Table of contents */
.legal-toc {
  background: rgba(255,255,255,0.03);
  border: 1px solid var(--border);
  border-radius: 14px;
  padding: 1.5rem 1.75rem;
  margin-bottom: 2.5rem;
}

.legal-toc ol {
  margin: 0.6rem 0 0 1.2rem;
  line-height: 1.9;
}

.legal-toc a {
  color: rgba(255,255,255,0.72);
  text-decoration: none;
  font-size: 0.92rem;
}

.legal-toc a:hover { color: var(--accent); }

/* Tables inside legal prose */
.table-wrap { overflow-x: auto; margin: 1.5rem 0; }

.prose table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
  min-width: 460px;
}

.prose th,
.prose td {
  border: 1px solid var(--border);
  padding: 0.7rem 0.9rem;
  text-align: left;
  vertical-align: top;
}

.prose th {
  background: rgba(91,127,255,0.09);
  font-weight: 600;
}

.prose code {
  background: rgba(255,255,255,0.06);
  border: 1px solid var(--border);
  border-radius: 5px;
  padding: 0.12rem 0.42rem;
  font-family: var(--mono, monospace);
  font-size: 0.85em;
}
