/* Shared look for the text pages (privacy, accessibility, terms). Same tokens as index.html. */
:root {
  color-scheme: light dark;
  --bg: #f4f7f3;
  --surface: #fdfefc;
  --ink: #12211a;
  --muted: #44534b;
  --line: #d5ded7;
  --accent-text: #0b6338;
  --shadow: 0 22px 44px -26px rgb(18 33 26 / .45);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --bg: #0e1512;
    --surface: #151e19;
    --ink: #edf3ee;
    --muted: #a9b8ae;
    --line: #26332b;
    --accent-text: #5fd08f;
    --shadow: 0 22px 44px -26px rgb(0 0 0 / .8);
  }
}
:root[data-theme="dark"] {
  --bg: #0e1512;
  --surface: #151e19;
  --ink: #edf3ee;
  --muted: #a9b8ae;
  --line: #26332b;
  --accent-text: #5fd08f;
  --shadow: 0 22px 44px -26px rgb(0 0 0 / .8);
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  font-family: "Rubik", system-ui, "Segoe UI", Arial, sans-serif;
  font-size: 1.0625rem;
  line-height: 1.7;
  color: var(--ink);
  background: var(--bg);
}
.skip { position: absolute; inset-inline-start: 1rem; top: -4rem; z-index: 70; padding: .6rem 1rem; background: var(--ink); color: var(--bg); border-radius: 999px; }
.skip:focus { top: 1rem; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.wrap { width: calc(100% - 2.5rem); max-width: 70ch; margin-inline: auto; }
.top { padding-block: .75rem; }
.top .wrap { display: flex; align-items: center; justify-content: space-between; gap: 1rem; max-width: 70ch; }
.back { display: inline-flex; align-items: center; gap: .6rem; color: var(--ink); font-weight: 800; font-size: 1.1rem; text-decoration: none; }
.back img { width: 40px; height: 40px; border-radius: 10px; background: #fdfefc; object-fit: contain; }
main.wrap { padding-block: 1rem 4rem; }
h1 { margin: 1.5rem 0 0; font-size: clamp(1.9rem, 3vw + 1rem, 2.6rem); font-weight: 800; line-height: 1.15; text-wrap: balance; }
.updated { margin: .5rem 0 0; color: var(--muted); }
h2 { margin: 2.25rem 0 0; font-size: 1.3rem; font-weight: 700; line-height: 1.3; }
p, ul { margin: .6rem 0 0; }
ul { padding-inline-start: 1.25rem; }
li + li { margin-top: .35rem; }
a { color: var(--accent-text); text-underline-offset: .2em; }
:focus-visible { outline: 3px solid var(--accent-text); outline-offset: 3px; border-radius: 6px; }
.contact { margin: .9rem 0 0; padding: 1rem 1.25rem; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); }
.contact p { margin: .25rem 0 0; }
.foot { margin-top: 3rem; padding-top: 1.5rem; border-top: 1px solid var(--line); color: var(--muted); font-size: 1rem; display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; }
