/* The legal pages (Web/build_legal.py): long text on the dirt, easy to read, the site's palette. */
body.legal { background: var(--wood-dark); }
.legal-top { display: flex; flex-wrap: wrap; gap: 12px 22px; align-items: baseline; padding: 22px 16px;
  background: var(--sky); justify-content: center; }
.legal-mark { font-weight: 700; font-size: 30px; color: var(--paper); text-decoration: none;
  text-shadow: 3px 3px 0 var(--ink), -2px 2px 0 var(--ink), 2px -2px 0 var(--ink), -2px -2px 0 var(--ink); }
.legal-nav a, .legal-lang { color: var(--ink); font-weight: 700; text-decoration: none; }
.legal-nav a[aria-current="page"] { text-decoration: underline; text-underline-offset: 4px; }
.legal-lang { margin-left: auto; }
.legal-doc { max-width: 820px; margin: 0 auto; padding: 30px 18px 70px; color: var(--cream); }
.legal-doc h1 { color: var(--paper); font-size: clamp(28px, 5vw, 38px); line-height: 1.2; margin: 6px 0 14px; }
.legal-doc h2 { color: var(--paper); font-size: 23px; margin: 34px 0 8px; }
.legal-doc h3, .legal-doc h4 { color: var(--paper); font-size: 18px; margin: 22px 0 6px; }
.legal-doc p, .legal-doc li, .legal-doc td, .legal-doc th { font-size: 16px; line-height: 1.65; }
.legal-doc a { color: var(--paper); }
.legal-doc li { margin: 4px 0; }
.legal-doc li::marker { color: var(--leaf-light); }
.legal-doc hr { border: 0; height: 3px; background: var(--wood); border-radius: 2px; margin: 30px 0; }
.legal-doc code { background: var(--ink); padding: 1px 6px; border-radius: 5px; }
.legal-doc .table { overflow-x: auto; margin: 14px 0; }
.legal-doc table { border-collapse: collapse; width: 100%; background: rgba(55, 32, 30, .35); border-radius: 10px; overflow: hidden; }
.legal-doc th { text-align: left; color: var(--paper); background: var(--wood); }
.legal-doc th, .legal-doc td { padding: 9px 12px; vertical-align: top; border-bottom: 1px solid rgba(240, 236, 191, .12); }
@media (max-width: 600px) { .legal-lang { margin-left: 0; } }
