:root {
  color-scheme: light dark;
  --legal-bg: light-dark(#f7f7f3, #191b1b);
  --legal-text: light-dark(#292e2d, #e0e5e2);
  --legal-link: light-dark(#28645b, #9ccfc1);
  --legal-width: 46rem;
  --legal-space: 1.25rem;
  --legal-section: 2.5rem;
  font: 100% / 1.8 system-ui, sans-serif;
  background: var(--legal-bg);
  color: var(--legal-text);
}
body { margin: 0; }
.ui-legal {
  max-width: var(--legal-width);
  margin: auto;
  padding: var(--legal-section) var(--legal-space);
  overflow-wrap: anywhere;
}
.ui-legal nav { display: flex; flex-wrap: wrap; gap: var(--legal-space); }
.ui-legal header, .ui-legal section { margin-block: var(--legal-section); }
.ui-legal h1, .ui-legal h2 { line-height: 1.4; }
.ui-legal h1 { font-size: 2rem; }
.ui-legal h2 { font-size: 1.2rem; }
.ui-legal a { color: var(--legal-link); text-underline-offset: .2em; }
@media print {
  :root { color-scheme: light; }
  .ui-legal nav { display: none; }
}
