/* Legal pages (F-LEGAL-WA-1): one reading column, flat. Hairline tables, no cards or pills. Tokens only. */
.legal { max-width: 760px; margin: 0 auto; padding: 56px 24px 88px; }
.legal h1 { font: 800 clamp(34px, 5vw, 52px)/1.08 var(--kf-font-display); letter-spacing: -0.03em; }
.legal h2 { margin: 48px 0 0; font: 700 24px/1.25 var(--kf-font-display); letter-spacing: -0.015em; }
.legal h3 { margin: 32px 0 0; font: 600 19px/1.3 var(--kf-font-display); color: var(--kf-ink); }
.legal p, .legal li { color: var(--kf-ink-2); font-size: 17px; line-height: 1.6; }
.legal p { margin: 16px 0 0; }
.legal ul { margin: 16px 0 0; padding-left: 20px; }
.legal li + li { margin-top: 10px; }
.legal strong { color: var(--kf-ink); font-weight: 600; }
.legal a { color: var(--kf-ink); text-underline-offset: 3px; }
.legal code { font: 400 15px/1.4 var(--kf-font-mono); }
.legal-status { padding: 10px 0; border-top: 1px solid var(--kf-hairline); border-bottom: 1px solid var(--kf-hairline); }
/* A draft's open items stay visible until the owner signs off (then they are resolved, not hidden). */
.draft-note { display: block; margin-top: 6px; padding-left: 10px; box-shadow: inset 2px 0 0 var(--kf-warning); color: var(--kf-ink-3); font-size: 14px; }
.legal-table { margin: 20px 0 0; overflow-x: auto; }
.legal table { width: 100%; border-collapse: collapse; font-size: 15px; line-height: 1.5; }
.legal th { padding: 0 16px 10px 0; text-align: left; vertical-align: bottom; color: var(--kf-ink-3); font: 600 11px/1.3 var(--kf-font); letter-spacing: 0.08em; text-transform: uppercase; }
.legal td { padding: 12px 16px 12px 0; vertical-align: top; border-top: 1px solid var(--kf-hairline); color: var(--kf-ink-2); }
.legal td:first-child { color: var(--kf-ink); min-width: 160px; }
@media (max-width: 760px) { .legal { padding: 40px 16px 72px; } }
