/* The legal pages (/privacy, /terms): a readable column of text, tables that scroll sideways on a phone. */
.legal-page { max-width: 46rem; margin: 0 auto; padding: 1.5rem var(--gutter, 16px) 3rem; line-height: 1.65; }
.legal-text h1 { font-size: clamp(1.5rem, 5vw, 2rem); line-height: 1.25; margin: 0.6rem 0 1rem; }
.legal-text h2 { font-size: 1.2rem; margin: 2rem 0 0.6rem; }
.legal-text h3 { font-size: 1.05rem; margin: 1.4rem 0 0.4rem; }
.legal-text p, .legal-text li { max-width: 70ch; }
.legal-text ul, .legal-text ol { padding-inline-start: 1.3rem; margin: 0.4rem 0 1rem; }
.legal-text li { margin: 0.25rem 0; }
.legal-text a { color: var(--accent-strong); text-decoration: underline; text-underline-offset: 2px; }
.legal-brand { margin: 0.3rem 0 0.4rem; }
.legal-brand svg { height: 2.2rem; }
.legal-top { margin: 0; }
.legal-top a { display: inline-block; padding: 0.5rem 0; }
.draft-note { background: var(--mark-soft); border: 1px solid var(--mark); border-radius: 10px; padding: 0.7rem 0.9rem; margin: 0.6rem 0 1rem; }
mark.todo { background: #ffe58a; color: var(--on-mark); padding: 0 0.2em; border-radius: 4px; }   /* a yellow highlighter in both modes */
.table-wrap { overflow-x: auto; margin: 0.6rem 0 1.2rem; border: 1px solid var(--line, #d9dee7); border-radius: 10px; }
.legal-text table { border-collapse: collapse; width: 100%; min-width: 40rem; font-size: 0.92rem; }
.legal-text th, .legal-text td { text-align: start; vertical-align: top; padding: 0.55rem 0.7rem; border-bottom: 1px solid var(--line, #d9dee7); }
.legal-text th { background: var(--bg, #f6f7f9); }
.legal-text tr:last-child td { border-bottom: 0; }
