/* Styling for standalone legal pages (privacy, terms).
   Deliberately self-contained: these are served as plain static files, not
   Askama templates, so they carry no app chrome and no dependency on main.css
   beyond the shared self-hosted fonts. */

.legal {
  margin: 0;
  background: #fdfdfb;
  color: #1a2b33;
  font-family: Archivo, system-ui, -apple-system, sans-serif;
  font-size: 16px;
  line-height: 1.65;
}

.legal-wrap {
  max-width: 46rem;
  margin: 0 auto;
  padding: 3rem 1.25rem 4rem;
}

.legal h1 {
  font-family: 'Archivo Black', Archivo, sans-serif;
  font-size: clamp(1.75rem, 5vw, 2.5rem);
  line-height: 1.15;
  margin: 0 0 .5rem;
  letter-spacing: -0.01em;
}

.legal h2 {
  font-size: 1.3rem;
  margin: 2.75rem 0 .75rem;
  padding-top: 1.5rem;
  border-top: 1px solid #e6e6e0;
  letter-spacing: -0.005em;
}

.legal h3 {
  font-size: 1.05rem;
  margin: 1.75rem 0 .5rem;
}

.legal p { margin: 0 0 1rem; }
.legal ul { margin: 0 0 1.25rem; padding-left: 1.5rem; }
.legal li { margin-bottom: .4rem; }
.legal strong { font-weight: 600; }
.legal em { color: #52606b; }

.legal a { color: #19647e; text-decoration: underline; text-underline-offset: 2px; }
.legal a:hover { color: #0e3d4f; }

.legal hr { border: 0; height: 0; margin: 0; }

/* Wide tables must scroll inside their own box rather than pushing the page
   sideways on a phone. */
.legal table {
  width: 100%;
  border-collapse: collapse;
  margin: 0 0 1.5rem;
  font-size: .9rem;
  display: block;
  overflow-x: auto;
}
.legal th, .legal td {
  border: 1px solid #e0e0d8;
  padding: .5rem .65rem;
  text-align: left;
  vertical-align: top;
}
.legal th { background: #f4f4ee; font-weight: 600; }

.legal code {
  font-family: 'Martian Mono', ui-monospace, monospace;
  font-size: .85em;
  background: #f0f0ea;
  padding: .1em .35em;
  border-radius: 3px;
}

.legal-footer {
  max-width: 46rem;
  margin: 0 auto;
  padding: 0 1.25rem 3rem;
  font-size: .9rem;
}

@media (prefers-color-scheme: dark) {
  .legal { background: #14191c; color: #dfe4e6; }
  .legal h2 { border-top-color: #2a3238; }
  .legal em { color: #9aa7ae; }
  .legal a { color: #6fc2d8; }
  .legal a:hover { color: #96d6e6; }
  .legal th { background: #1e262b; }
  .legal th, .legal td { border-color: #2a3238; }
  .legal code { background: #1e262b; }
}
