.legal-page { margin: auto; max-width: 76rem; padding: 1.25rem; color: var(--text); background: var(--bg); font-size: 1rem; line-height: 1.7; }
.legal-page main { max-width: 48rem; margin: 2rem auto; }
.legal-page h1 { font-size: clamp(1.8rem, 5vw, 3rem); line-height: 1.2; }
.legal-page h2 { margin-top: 2rem; font-size: 1.35rem; }
.legal-page p { margin: 1rem 0; overflow-wrap: anywhere; }
.legal-page a { color: var(--blue-pale); text-decoration: underline; }
.legal-page nav { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; margin: 1rem 0; }
.legal-page a:focus-visible { outline: 3px solid #f3bb62; outline-offset: 4px; }
.legal-page .effective { margin-top: .5rem; color: var(--text-dim); font-size: .9rem; }
.skip-link { display: inline-block; }
.legal-page pre { white-space: pre-wrap; overflow-wrap: anywhere; }
.legal-page .version-foot { color: var(--text-dim); font-size: .9rem; }
/* The versions index is the one page with a table. A hash is 64 characters and
   has nowhere to break, so the cell wraps it and the narrow screen scrolls. */
.legal-page .table-scroll { overflow-x: auto; margin: 1rem 0 2rem; }
.legal-page table { width: 100%; border-collapse: collapse; font-size: .9rem; }
.legal-page th, .legal-page td { padding: .5rem .75rem .5rem 0; text-align: left; vertical-align: top; border-bottom: 1px solid var(--line-mid); }
.legal-page th { color: var(--text); font-weight: 600; }
.legal-page code { font-family: var(--mono); font-size: .85em; overflow-wrap: anywhere; }
.legal-page td a { white-space: nowrap; }
/* Align the support page's list items with the prose. */
.legal-page ul { margin: 1rem 0; padding-left: 1.25rem; }
.legal-page li { margin: .35rem 0; }
