/* Legal pages (/privacy/, /terms/). Static HTML on purpose: OAuth reviewers
   (Google, Atlassian, Slack, GitHub) and crawlers fetch these URLs without
   running JS, and production serves dist/ through StaticFiles with no SPA
   fallback. Tokens mirror the top of src/landing.css so the pages read as
   part of the marketing site in both themes. */
:root{
  --paper:#eff1f4; --surface:#ffffff;
  --ink:#0d1322; --ink-2:#46536b; --muted:#76829a;
  --rule:rgba(13,19,34,.14); --rule-strong:rgba(13,19,34,.5);
  --accent:#1a49ff; --accent-ink:#0f36c4; --accent-wash:rgba(26,73,255,.09);
  --on-accent:#ffffff;
  --sans:-apple-system,"Segoe UI Variable Text","Segoe UI",system-ui,Roboto,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,"SF Mono","Cascadia Mono","Segoe UI Mono",Consolas,monospace;
}
@media (prefers-color-scheme:dark){
  :root{
    --paper:#070b14; --surface:#0e1526;
    --ink:#edf1f8; --ink-2:#aab5c9; --muted:#7c88a0;
    --rule:rgba(255,255,255,.13); --rule-strong:rgba(255,255,255,.42);
    --accent:#7da2ff; --accent-ink:#a9c0ff; --accent-wash:rgba(125,162,255,.1);
    --on-accent:#070b14;
  }
}

*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);
  font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:var(--accent-ink);text-underline-offset:2px}
a:hover{text-decoration-thickness:2px}

.mast{border-bottom:1px solid var(--rule)}
.mast-in,.doc,.foot-in{max-width:760px;margin:0 auto;padding:0 20px}
.mast-in{display:flex;align-items:center;gap:16px;height:60px}
.brand{display:flex;align-items:center;gap:9px;font-weight:800;font-size:19px;
  letter-spacing:-.02em;color:var(--ink);text-decoration:none}
.brand svg{flex:none;display:block}
.mast nav{margin-left:auto;display:flex;gap:20px}
.mast nav a,.kicker,.foot{font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase}
.mast nav a{color:var(--ink-2);text-decoration:none}
.mast nav a:hover,.mast nav a[aria-current]{color:var(--accent-ink)}

.doc{padding-top:56px;padding-bottom:72px}
.kicker{color:var(--muted);margin:0 0 10px}
h1{font-size:clamp(32px,6vw,46px);line-height:1.08;letter-spacing:-.03em;margin:0 0 14px}
.lede{font-size:18px;color:var(--ink-2);margin:0 0 28px}
.toc{border:1px solid var(--rule);background:var(--surface);padding:16px 20px;margin:0 0 40px}
.toc ol{margin:0;padding-left:20px;columns:2;column-gap:28px}
.toc li{break-inside:avoid;font-size:14.5px;margin:0 0 6px}
@media (max-width:560px){.toc ol{columns:1}}
h2{font-size:21px;letter-spacing:-.015em;margin:44px 0 10px;padding-top:14px;
  border-top:1px solid var(--rule);scroll-margin-top:16px}
h3{font-size:16px;margin:24px 0 6px}
p,li{color:var(--ink-2)}
strong{color:var(--ink)}
ul{padding-left:20px}
li{margin:4px 0}
.callout{border-left:3px solid var(--accent);background:var(--accent-wash);padding:12px 16px;margin:18px 0}
.callout p{margin:0;color:var(--ink)}
table{width:100%;border-collapse:collapse;font-size:14.5px;margin:14px 0}
th,td{text-align:left;vertical-align:top;padding:9px 10px;border-bottom:1px solid var(--rule)}
th{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;
  color:var(--muted);font-weight:600;border-bottom-color:var(--rule-strong)}
td{color:var(--ink-2)}
td code{font-family:var(--mono);font-size:12.5px;color:var(--ink);overflow-wrap:anywhere}
.scroll{overflow-x:auto}

.foot{border-top:1px solid var(--rule);color:var(--muted);padding:26px 0 34px}
.foot-in{display:flex;flex-wrap:wrap;gap:8px 18px}
.foot a{color:var(--muted);text-decoration:none}
.foot a:hover{color:var(--accent-ink)}
.foot .grow{margin-left:auto}
