/* Footer content pages: legal, support and company documents. */

.doc-page { max-width: 880px; padding-block: 30px 80px; }

.doc-body { margin-top: 26px; display: flex; flex-direction: column; gap: 14px; color: var(--ink-2); line-height: 1.75; }
.doc-body h2 {
  font-size: 1.2rem; font-weight: 680; letter-spacing: -.015em; color: var(--ink);
  margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--line);
}
.doc-body h2:first-child { margin-top: 0; padding-top: 0; border-top: 0; }
.doc-body h3 { font-size: 1rem; font-weight: 650; color: var(--ink); margin-top: 12px; }
.doc-body p { margin: 0; font-size: 14.5px; }
.doc-body ul, .doc-body ol { margin: 0; padding-inline-start: 20px; display: flex; flex-direction: column; gap: 8px; font-size: 14.5px; }
.doc-body li::marker { color: var(--brand); }
.doc-body b, .doc-body strong { color: var(--ink); font-weight: 640; }
.doc-body code {
  font-family: var(--font-mono, ui-monospace, SFMono-Regular, Menlo, monospace); font-size: .85em;
  background: var(--surface-2); border: 1px solid var(--line); border-radius: 6px; padding: 1px 6px;
}
.doc-body a { color: var(--brand); text-decoration: underline; text-underline-offset: 2px; }
.doc-body table { width: 100%; border-collapse: collapse; font-size: 13.5px; margin-top: 6px; }
.doc-body th, .doc-body td { text-align: start; padding: 10px 12px; border-bottom: 1px solid var(--line); vertical-align: top; }
.doc-body th { font-size: 11.5px; text-transform: uppercase; letter-spacing: .06em; color: var(--faint); font-weight: 600; }
.doc-body tr:last-child th, .doc-body tr:last-child td { border-bottom: 0; }
.doc-body .doc-contact {
  margin-top: 26px; padding: 18px 20px; border-radius: var(--radius);
  background: var(--surface); border: 1px solid var(--line-strong, var(--line));
}
/* Legal document switcher: terms / privacy / cookies / rules. */
.doc-switch { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.doc-switch .chip { text-decoration: none; }
.doc-switch .chip.is-active {
  background: var(--brand); border-color: var(--brand); color: #fff; font-weight: 600;
}

.doc-body .doc-contact table th { width: 30%; }
.doc-body .doc-contact h2 {
  margin-top: 0; padding-top: 0; border-top: 0; font-size: 1rem; margin-bottom: 10px;
}
/* Version banner: the first table of a legal document, rendered as a fact strip. */
.doc-body table.doc-meta {
  margin: 0 0 4px; background: var(--surface-2, var(--surface)); border: 1px solid var(--line);
  border-radius: var(--radius); padding: 4px 16px; font-size: 13px;
}
.doc-body table.doc-meta th, .doc-body table.doc-meta td {
  border-bottom: 1px solid var(--line); padding: 9px 4px;
}
.doc-body table.doc-meta th { width: 32%; }
.doc-body table.doc-meta tr:last-child th, .doc-body table.doc-meta tr:last-child td { border-bottom: 0; }
.doc-body table.doc-meta td { color: var(--ink); font-weight: 560; font-variant-numeric: tabular-nums; }

@media (max-width: 640px) {
  .doc-body th, .doc-body td { padding: 8px 6px; font-size: 12.5px; }
  .doc-page { padding-block: 20px 56px; }
  /* Wide rule and data tables scroll horizontally instead of squeezing columns. */
  .doc-body table { display: block; overflow-x: auto; max-width: 100%; }
  .doc-body table tr { display: table; width: 100%; table-layout: fixed; }
  .doc-body table.doc-meta th { width: 40%; }
}
