:root{--bg:#0a0c0f;--ink:#e9edf2;--bright:#cfd6df;--muted:#8a93a0;--steel:#b3bcc8;
  --cyan:#c6d3e2;--blue:#8fb3d9;--line:rgba(66,75,88,.22);--panel:rgba(255,255,255,.022)}
*{box-sizing:border-box}
html{font-size:clamp(15px,.4vmin + 13px,17px);scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--bg);
  font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.bg{position:fixed;inset:0;z-index:-1;
  background:linear-gradient(180deg,#12151a 0%,#080a0c 52%,#0a0c0f 100%)}
.bg .edge{position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(198,211,226,.45),transparent)}
.wrap{width:min(860px,92vw);margin:0 auto;padding:38px 0 64px}
.mark{display:flex;align-items:baseline;gap:8px;font-size:.76rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--muted);margin:0 0 26px}
.mark a{color:var(--steel);text-decoration:none}
.mark a:hover{color:var(--ink)}
.mark i{font-style:normal;opacity:.4}
h1{font-size:clamp(1.7rem,4.4vw,2.5rem);line-height:1.14;letter-spacing:-.02em;margin:0 0 10px}
.lede{color:var(--steel);font-size:1.02rem;line-height:1.66;margin:0 0 30px}
h2{font-size:1.16rem;line-height:1.3;letter-spacing:-.01em;margin:38px 0 12px;
  padding-top:16px;border-top:1px solid var(--line)}
h3{font-size:.95rem;letter-spacing:.02em;color:var(--bright);margin:24px 0 8px}
p{color:var(--steel);line-height:1.72;margin:0 0 14px}
ul,ol{margin:0 0 16px;padding-left:22px}
li{color:var(--steel);line-height:1.68;margin:0 0 7px}
li::marker{color:var(--muted)}
strong{color:var(--ink);font-weight:600}
code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88em;
  color:var(--cyan);background:rgba(255,255,255,.04);padding:1px 5px;border-radius:4px}
a{color:var(--blue)}
a:hover{color:var(--cyan)}
.tw{overflow-x:auto;margin:0 0 18px;border:1px solid var(--line);border-radius:10px}
table{border-collapse:collapse;width:100%;font-size:.88rem;min-width:520px}
th{text-align:left;font-weight:600;color:var(--bright);padding:9px 12px;
  border-bottom:1px solid var(--line);white-space:nowrap}
td{color:var(--steel);padding:9px 12px;border-bottom:1px solid rgba(66,75,88,.12);
  line-height:1.5;vertical-align:top}
tr:last-child td{border-bottom:0}
.nav{margin:44px 0 0;padding-top:20px;border-top:1px solid var(--line)}
.nav h2{border:0;padding:0;margin:0 0 12px;font-size:.76rem;letter-spacing:.12em;
  text-transform:uppercase;color:var(--muted)}
.nav ul{list-style:none;padding:0;margin:0;display:grid;gap:8px;
  grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.nav li{margin:0}
.nav a{display:block;text-decoration:none;color:var(--bright);border:1px solid var(--line);
  border-radius:9px;padding:10px 12px;background:var(--panel);font-size:.9rem}
.nav a:hover{border-color:rgba(143,179,217,.45);color:var(--ink)}
.nav span{display:block;color:var(--muted);font-size:.8rem;line-height:1.45;margin-top:3px}
footer{margin:40px 0 0;padding-top:18px;border-top:1px solid var(--line);
  color:var(--muted);font-size:.82rem;line-height:1.7}
footer a{color:var(--steel);text-decoration:none}
footer a:hover{color:var(--ink)}
@media (prefers-color-scheme:light){
  :root{--bg:#f2f4f7;--ink:#12283e;--bright:#20364d;--muted:#5d6b7d;--steel:#33455a;
    --cyan:#2f5d8a;--blue:#2f5d8a;--line:rgba(18,40,62,.14);--panel:rgba(255,255,255,.6)}
  .bg{background:linear-gradient(180deg,#ffffff 0%,#eef1f5 52%,#f2f4f7 100%)}
  code{background:rgba(18,40,62,.06)}
}
