/* Shared by the landing page and the legal pages. Colors follow the app (Resources/Colors). */
:root {
  --accent: #FF7622;
  --text: #32343E;
  --muted: #6E7180;
  --background: #FFF8F2;
  --surface: #FFFFFF;
  --border: #F0E4D8;
  --button: #111111;
  --button-text: #FFFFFF;
  --paw-opacity: 0.08;
  color-scheme: light;
}

@media (prefers-color-scheme: dark) {
  :root {
    --text: #F5F5F7;
    --muted: #A3A6B4;
    --background: #1C1C28;
    --surface: #252532;
    --border: #2F2F3C;
    --button: #FFFFFF;
    --button-text: #111111;
    --paw-opacity: 0.1;
    color-scheme: dark;
  }
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  background-color: var(--background);
  color: var(--text);
  font: 16px/1.6 "Sen", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
}
a { color: var(--accent); }

/* Scattered paw prints, the same as behind the app's paywall. */
.paws { position: relative; }
.paws::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  opacity: var(--paw-opacity);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220' viewBox='0 0 220 220'%3E%3Cg fill='%23FF7622'%3E%3Cg transform='translate(50 60) rotate(-20) scale(1.6)'%3E%3Cellipse cx='-8.5' cy='-1' rx='3.5' ry='4.5'/%3E%3Cellipse cx='-3' cy='-7.5' rx='3.5' ry='4.5'/%3E%3Cellipse cx='3' cy='-7.5' rx='3.5' ry='4.5'/%3E%3Cellipse cx='8.5' cy='-1' rx='3.5' ry='4.5'/%3E%3Cellipse cx='0' cy='7' rx='8' ry='6.5'/%3E%3C/g%3E%3Cg transform='translate(160 150) rotate(25) scale(1.2)'%3E%3Cellipse cx='-8.5' cy='-1' rx='3.5' ry='4.5'/%3E%3Cellipse cx='-3' cy='-7.5' rx='3.5' ry='4.5'/%3E%3Cellipse cx='3' cy='-7.5' rx='3.5' ry='4.5'/%3E%3Cellipse cx='8.5' cy='-1' rx='3.5' ry='4.5'/%3E%3Cellipse cx='0' cy='7' rx='8' ry='6.5'/%3E%3C/g%3E%3Cg transform='translate(170 40) rotate(10) scale(1)'%3E%3Cellipse cx='-8.5' cy='-1' rx='3.5' ry='4.5'/%3E%3Cellipse cx='-3' cy='-7.5' rx='3.5' ry='4.5'/%3E%3Cellipse cx='3' cy='-7.5' rx='3.5' ry='4.5'/%3E%3Cellipse cx='8.5' cy='-1' rx='3.5' ry='4.5'/%3E%3Cellipse cx='0' cy='7' rx='8' ry='6.5'/%3E%3C/g%3E%3Cg transform='translate(60 180) rotate(-35) scale(1.1)'%3E%3Cellipse cx='-8.5' cy='-1' rx='3.5' ry='4.5'/%3E%3Cellipse cx='-3' cy='-7.5' rx='3.5' ry='4.5'/%3E%3Cellipse cx='3' cy='-7.5' rx='3.5' ry='4.5'/%3E%3Cellipse cx='8.5' cy='-1' rx='3.5' ry='4.5'/%3E%3Cellipse cx='0' cy='7' rx='8' ry='6.5'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  background-size: 220px 220px;
}

/* MARK: Landing */

.hero {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 32px;
  padding: 48px 16px 24px;
  text-align: center;
}
.brand { display: flex; flex-direction: column; align-items: center; }
.logo {
  width: min(300px, 70vw);
  height: auto;
}
/* The wordmark: Nunito Black in the color of the paw print next to Loki, as in the app. */
.wordmark {
  font: 900 clamp(32px, 10vw, 43px)/1 "Nunito", "Sen", sans-serif;
  color: #F9B23A;
  letter-spacing: -0.5px;
}
.stores {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
}
.store {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 190px;
  height: 56px;
  padding: 0 22px;
  border-radius: 14px;
  background: var(--button);
  color: var(--button-text);
  text-decoration: none;
  text-align: left;
  transition: transform .15s ease;
}
.store:hover { transform: translateY(-1px); }
.store span { display: flex; flex-direction: column; font-size: 20px; font-weight: 600; line-height: 1.1; }
.store small { font-size: 11px; font-weight: 400; letter-spacing: .2px; }
.store[hidden] { display: none; }

.legal {
  display: flex;
  gap: 10px;
  font-size: 14px;
  color: var(--muted);
}
.legal a { color: var(--muted); text-decoration: none; }
.legal a:hover { color: var(--accent); }

footer {
  padding: 16px;
  text-align: center;
  font-size: 13px;
  color: var(--muted);
}

/* MARK: Legal pages */

.document {
  width: 100%;
  max-width: 760px;
  margin: 0 auto;
  padding: 32px 16px 48px;
}
.document header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 24px;
}
.document header img { width: 48px; height: 48px; border-radius: 12px; }
.document header nav { font-size: 14px; display: flex; gap: 12px; }
.document article {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 20px;
  padding: 32px clamp(20px, 5vw, 48px);
}
.document h1 { font-size: 30px; line-height: 1.2; margin: 0 0 8px; }
.document h2 { font-size: 20px; margin: 32px 0 8px; }
.document h3 { font-size: 16px; margin: 20px 0 6px; }
.document .updated { color: var(--muted); font-size: 14px; margin: 0 0 24px; }
.document table { width: 100%; border-collapse: collapse; font-size: 14px; margin: 12px 0; display: block; overflow-x: auto; }
.document th, .document td { text-align: left; vertical-align: top; padding: 8px 10px; border-bottom: 1px solid var(--border); }
.document th { font-weight: 600; }
.document ul { padding-left: 22px; }
