/* Shared styling for the legal pages. They are plain HTML on purpose: a
   privacy policy has to be readable with JavaScript off, and has to still be
   there if the app fails to load. Same colours and fonts as the app. */

:root { color-scheme: only dark; }
* { box-sizing: border-box; }
body {
  margin: 0;
  background: #0B0B10;
  color: #E9E9F0;
  font-family: 'Space Grotesk', ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  line-height: 1.65;
  -webkit-text-size-adjust: 100%;
}
.wrap { max-width: 44rem; margin: 0 auto; padding: 2rem 1.25rem 5rem; }
header.bar {
  display: flex; align-items: center; gap: .75rem; flex-wrap: wrap;
  border-bottom: 1px solid #1c1c26; padding: 1rem 1.25rem;
}
header.bar a.brand { display: inline-flex; align-items: center; gap: .5rem; color: #E9E9F0; text-decoration: none; font-weight: 600; }
header.bar nav { margin-left: auto; display: flex; gap: 1rem; flex-wrap: wrap; }
a { color: #A5B4FC; }
a:focus-visible, button:focus-visible { outline: 2px solid #FBBF24; outline-offset: 2px; border-radius: 4px; }
h1 { font-family: Fraunces, Georgia, serif; font-size: clamp(1.9rem, 5vw, 2.6rem); line-height: 1.15; margin: 1.5rem 0 .25rem; }
h2 { font-family: Fraunces, Georgia, serif; font-size: 1.4rem; margin: 2.25rem 0 .5rem; }
h3 { font-size: 1.05rem; margin: 1.5rem 0 .35rem; }
p, li { color: #C9C9D6; }
.lede { font-size: 1.05rem; color: #B9B9C8; }
.updated { color: #9A9AAE; font-size: .9rem; }
ul { padding-left: 1.2rem; }
li { margin: .35rem 0; }
table { width: 100%; border-collapse: collapse; margin: .75rem 0 1.25rem; font-size: .95rem; display: block; overflow-x: auto; }
th, td { text-align: left; padding: .6rem .7rem; border-bottom: 1px solid #1c1c26; vertical-align: top; }
th { color: #E9E9F0; font-weight: 600; white-space: nowrap; }
.note {
  border: 1px solid rgba(251,191,36,.35); background: rgba(251,191,36,.07);
  border-radius: 14px; padding: .9rem 1rem; margin: 1.25rem 0;
}
.note p { color: #F6E3B4; margin: .25rem 0; }
footer.bar { border-top: 1px solid #1c1c26; padding: 1.5rem 1.25rem 3rem; color: #9A9AAE; font-size: .9rem; }
footer.bar a { margin-right: 1rem; }
.skip { position: absolute; left: -9999px; }
.skip:focus { left: 1rem; top: 1rem; position: fixed; background: #FBBF24; color: #0B0B10; padding: .6rem .9rem; border-radius: 10px; z-index: 10; }
