/* Shared shell for the legal pages. Same night palette as the landing and the
   app, stripped to what a page of text needs. */
:root {
  color-scheme: dark;
  --ground: #05070f;
  --hair: rgba(160, 180, 255, .1);
  --hair-2: rgba(160, 180, 255, .19);
  --ink: #edf0fa;
  --ink-2: #c4cce3;
  --ink-3: #939cb8;
  --sleep-4: #8fb2ff;
  --effort: #ffa048;
  --display: "Big Shoulders Display", "Arial Narrow", system-ui, sans-serif;
  --serif: "Instrument Serif", "Iowan Old Style", Georgia, serif;
  --sans: "Geist", -apple-system, system-ui, sans-serif;
  --mono: "Geist Mono", ui-monospace, Menlo, monospace;
}
* { box-sizing: border-box; }
html, body { background: var(--ground); }
body {
  margin: 0; color: var(--ink-2);
  font: 400 17px/1.66 var(--sans);
  -webkit-font-smoothing: antialiased;
  padding-inline: clamp(16px, 4vw, 44px);
}
.wrap { max-width: 720px; margin: 0 auto; padding-bottom: 80px; }
a { color: var(--sleep-4); }
:focus-visible { outline: 2px solid var(--sleep-4); outline-offset: 3px; border-radius: 8px; }

header.top { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding-block: 18px 0; }
.brand { display: flex; align-items: baseline; gap: 2px; font: 800 24px/1 var(--display); letter-spacing: .03em; text-transform: uppercase; color: var(--ink); text-decoration: none; }
.brand span { color: var(--sleep-4); }
.back { font-size: 15px; text-decoration: none; color: var(--ink-3); }
.back:hover { color: var(--ink); }

h1 { font: 500 clamp(30px, 4vw, 42px)/1.1 var(--sans); letter-spacing: -.02em; color: var(--ink); margin: 44px 0 10px; }
.updated { font: 500 11.5px var(--mono); letter-spacing: .18em; text-transform: uppercase; color: var(--ink-3); margin: 0 0 34px; }
h2 { font: 500 21px/1.3 var(--sans); color: var(--ink); margin: 42px 0 10px; letter-spacing: -.01em; }
h2 + p, h2 + ul { margin-top: 0; }
p { margin: 0 0 16px; }
ul { margin: 0 0 16px; padding-left: 22px; }
li { margin-bottom: 8px; }
strong { color: var(--ink); font-weight: 500; }

.lede { font: 400 clamp(19px, 2vw, 22px)/1.45 var(--serif); color: var(--sleep-4); margin: 0 0 30px; }
.note {
  margin: 0 0 24px; padding: 18px 22px; border-radius: 14px;
  background: rgba(79, 123, 234, .1); box-shadow: inset 0 0 0 1px var(--hair-2);
}
.note p:last-child, .note ul:last-child { margin-bottom: 0; }
.note.warn { background: rgba(255, 160, 72, .09); box-shadow: inset 0 0 0 1px rgba(255, 160, 72, .3); }

table { width: 100%; border-collapse: collapse; margin: 0 0 20px; font-size: 15.5px; }
th, td { text-align: left; vertical-align: top; padding: 11px 12px 11px 0; border-bottom: 1px solid var(--hair); }
th { color: var(--ink); font-weight: 500; }

footer.foot { margin-top: 56px; padding-top: 24px; border-top: 1px solid var(--hair); font-size: 14.5px; color: var(--ink-3); }
footer.foot a { display: inline-block; margin: 0 16px 6px 0; }
