/* Terms and Privacy pages: readable long-form text on the site's surface. */
.legal { display: grid; gap: 14px; max-width: 760px; line-height: 1.65; }
.legal h2 { margin: 22px 0 0; font-family: var(--f-display); font-size: 1.35rem; }
.legal p, .legal ul { margin: 0; }
.legal ul { padding-left: 20px; display: grid; gap: 8px; }
.legal a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.legal mark { padding: 0 4px; border-radius: 3px; background: color-mix(in srgb, var(--torch) 30%, transparent); color: inherit; }
.legal table { width: 100%; border-collapse: collapse; font-size: .95rem; display: block; overflow-x: auto; }
.legal th, .legal td { padding: 10px 12px; border: 1px solid var(--line); text-align: left; vertical-align: top; background: var(--surface); }
.legal th { font-weight: 600; }

/* On phones each table row becomes a small stacked card with its column name above each part. */
@media (max-width: 600px) {
  .legal table, .legal tbody, .legal tr, .legal td { display: block; width: 100%; }
  .legal thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .legal tr { margin-bottom: 12px; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
  .legal td { border: 0; border-top: 1px solid var(--line); }
  .legal td:first-child { border-top: 0; font-weight: 600; }
  .legal td::before { content: attr(data-label); display: block; margin-bottom: 2px; font-family: var(--f-mono); font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; opacity: .65; font-weight: 400; }
}

/* Releases page */
.releases h2 { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 12px; }
.releases .rel-date { font-family: var(--f-mono); font-size: .78rem; font-weight: 400; opacity: .65; letter-spacing: .02em; }
.releases .rel-tag { font-family: var(--f-mono); font-size: .68rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; padding: 3px 8px; border-radius: 999px; background: color-mix(in srgb, var(--torch) 35%, transparent); }
.releases .rel-note { margin-top: 18px; opacity: .85; }
