/* Shared stylesheet for the static pages (about, terms, privacy).
   Tokens mirror the app's default "Instrument" theme (css/style.css :root),
   with a dark counterpart on the Nocturne surface family — same pairing as
   landing.html, so the whole public surface reads as one brand.
   NOTE: the legal words live in terms.md / privacy.md — those are what legal
   versioning content-hashes (server/legal.clj); terms.html / privacy.html are
   just styled shells that render them via legal.js. Restyle freely here or in
   the shells; edit the .md files only when a re-consent prompt is intended. */
@import url("/css/fonts.css");

:root{
  --bg:#f4f5f2; --surface:#ffffff; --soft:#f8f8f5;
  --text:#1c2839; --strong:#13243b; --muted:#5d6b7d;
  --border:#e2e4e0; --border-subtle:#eef0ec;
  --primary:#9a5e22; --primary-hover:#80501d;
  --font-sans:"IBM Plex Sans",system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
  --font-display:"Space Grotesk",var(--font-sans);
  --font-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
}
@media (prefers-color-scheme: dark){
  :root{
    --bg:#0f1722; --surface:#16202e; --soft:#1b2738;
    --text:#c3cedb; --strong:#eef3f9; --muted:#7689a0;
    --border:#243246; --border-subtle:#1b2738;
    --primary:#c0843a; --primary-hover:#d09a52;
  }
  :root{color-scheme:dark}
}

*{box-sizing:border-box}
body{margin:0;font-family:var(--font-sans);color:var(--text);background:var(--bg);line-height:1.65}
a{color:var(--primary)}
a:hover{color:var(--primary-hover)}
a:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}
header{border-bottom:1px solid var(--border);background:var(--bg)}
.nav{max-width:820px;margin:0 auto;padding:16px 24px}
.brand{display:inline-flex;align-items:center;gap:.55rem;font:700 1.08rem var(--font-display);letter-spacing:.01em;color:var(--strong);text-decoration:none}
.brand svg path{fill:var(--primary)}
main{max-width:820px;margin:0 auto;padding:48px 24px 64px}
h1{font:700 1.9rem var(--font-display);color:var(--strong);letter-spacing:-.02em;margin:0 0 .25rem}
.updated{font:500 .8rem var(--font-mono);letter-spacing:.04em;color:var(--muted);margin:0 0 2rem}
h2{font:600 1.15rem var(--font-display);color:var(--strong);margin:2.2rem 0 .5rem;letter-spacing:-.01em}
p,li{color:var(--text)}
ul{padding-left:1.2rem}
strong{color:var(--strong)}
.muted{color:var(--muted);font-size:.9rem}
footer{border-top:1px solid var(--border);color:var(--muted);font-size:.85rem}
.foot{max-width:820px;margin:0 auto;padding:24px;display:flex;gap:14px;justify-content:space-between;flex-wrap:wrap}
.foot a{color:var(--muted)}
.foot a:hover{color:var(--strong)}
