/* Shared by terms.html and privacy.html.
 *
 * Deliberately its own stylesheet rather than the app's: these pages must
 * render when the API is down, when app.js fails to parse, when anything
 * else is broken. A legal document that is only readable on a healthy day is
 * not much of a commitment.
 */
:root{
  --bg:#fdfcfb; --panel:#fff; --ink:#16150f; --dim:#6b6862; --faint:#96938c;
  --line:#e8e4de; --brand:#0b5ea8;
}
@media(prefers-color-scheme:dark){:root{
  --bg:#131211; --panel:#1c1b19; --ink:#f2efe9; --dim:#a29e96; --faint:#807c74;
  --line:#2d2b27; --brand:#5aa9f0;
}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);
  font:16px/1.65 ui-sans-serif,-apple-system,"Segoe UI",system-ui,sans-serif;
  -webkit-font-smoothing:antialiased}
a{color:var(--brand)}
.wrap{max-width:720px;margin:0 auto;padding:0 22px}
header{border-bottom:1px solid var(--line)}
.hrow{display:flex;align-items:center;gap:9px;height:62px}
.logo{font-size:19px;font-weight:700;letter-spacing:-.03em;display:flex;
  align-items:center;gap:8px;text-decoration:none;color:inherit}
.logo b{color:var(--brand)}
.logomark{width:22px;height:22px;color:var(--brand);border-radius:5px}
nav{margin-left:auto;display:flex;gap:14px;font-size:14px}
nav a{color:var(--dim);text-decoration:none}
nav a:hover{color:var(--ink)}
main{padding:44px 0 70px}
h1{font-size:clamp(26px,4vw,34px);letter-spacing:-.03em;line-height:1.12;
  margin:0 0 6px}
.updated{color:var(--faint);font-size:13.5px;margin:0 0 30px}
h2{font-size:18px;letter-spacing:-.02em;margin:36px 0 8px}
h3{font-size:15px;margin:24px 0 6px}
p,li{color:var(--dim)}
p{margin:0 0 14px}
ul{margin:0 0 14px;padding-left:22px}
li{margin-bottom:7px}
strong{color:var(--ink);font-weight:640}
.lead{font-size:17px;color:var(--ink)}
.box{background:var(--panel);border:1px solid var(--line);border-radius:12px;
  padding:16px 18px;margin:0 0 22px}
.box p:last-child{margin-bottom:0}
.draft{border-color:color-mix(in srgb,#9a6700 45%,transparent);
  background:color-mix(in srgb,#9a6700 9%,transparent)}
table{border-collapse:collapse;width:100%;margin:0 0 18px;font-size:14.5px}
th,td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--line);
  vertical-align:top;color:var(--dim)}
th{color:var(--ink);font-weight:640;font-size:13px}
footer{border-top:1px solid var(--line);padding:22px 0 40px;
  color:var(--faint);font-size:13px}
footer a{color:var(--faint)}

:root{--bg:#f8f9f6;--panel:#fff;--ink:#20332f;--dim:#62716b;--faint:#748079;--line:#dde4de;--brand:#176b57;color-scheme:light}
.hrow{height:78px}.logo{font-size:23px}.logomark{width:28px;height:28px}h1{font-size:42px;letter-spacing:-.05em}h2{font-size:20px}nav a{display:inline-flex;align-items:center;min-height:44px}:focus-visible{outline:3px solid var(--brand);outline-offset:4px}

@media(max-width:600px){.hrow{height:68px}main{padding-top:28px}h1{font-size:32px;line-height:1.2}.wrap{padding-left:20px;padding-right:20px}nav{gap:12px;font-size:13px}.logo{font-size:21px}.logomark{width:26px;height:26px}table{table-layout:fixed;font-size:14px}th,td{padding:10px 7px;overflow-wrap:anywhere}th:first-child,td:first-child{width:32%}.box{padding:16px}footer{line-height:1.7}}
