/* Docs (sticky contents card + article card, scroll-spy) and Terms (plain column, numbered sections). */
.docs{padding-bottom:64px}
.docs .wrap{display:block}
.toc{margin-bottom:32px}
.toc .tc{border-radius:6px; border:1px solid var(--line); background:var(--card); padding:12px}
.toc nav{display:grid; gap:20px}
.toc ul{list-style:none}
.toc .g{margin-bottom:8px; padding:0 8px; font-size:10px; font-weight:500; text-transform:uppercase; letter-spacing:.1em; color:var(--muted)}
.toc a{position:relative; display:block; border-radius:4px; padding:6px 8px 6px 12px; font-size:12.5px; color:var(--muted); transition:background .15s,color .15s}
.toc a:hover{background:var(--well); color:var(--ink)}
.toc a[aria-current=true]{background:var(--track); font-weight:500; color:var(--ink)}
.toc a[aria-current=true]::before{content:""; position:absolute; left:0; top:50%; width:2px; height:13px; transform:translateY(-50%); border-radius:999px; background:var(--ink)}
.art-card{min-width:0; max-width:720px; border-radius:6px; border:1px solid var(--line); background:var(--card); padding:28px}
.art-card>section{scroll-margin-top:96px; border-top:1px solid var(--line); padding-top:32px; margin-top:24px}
.art-card>section:first-child{border-top:0; padding-top:0; margin-top:0}
.art-card h2{font-size:20px; font-weight:500; letter-spacing:-.02em}
.art-card .bd{margin-top:16px; display:grid; gap:16px; font-size:13px; line-height:1.8; color:var(--muted)}
.art-card .bd strong,.art-card .bd b{font-weight:600; color:var(--ink)}
.art-card .bd a{font-weight:500; color:var(--ink); text-decoration:underline; text-decoration-color:var(--frame); text-underline-offset:4px}
.art-card .bd a:hover{text-decoration-color:var(--ink)}
.art-card code{border-radius:3px; background:var(--well); padding:1px 4px; font:400 11.5px var(--mono); color:var(--ink)}
.art-card h4{margin-top:8px; font-size:13px; font-weight:600; color:var(--ink)}
.call{border-radius:6px; border:1px solid var(--tip-line); background:var(--tip); padding:14px 16px}
.call>b{display:block; margin-bottom:6px; font-size:13px; font-weight:500 !important; color:var(--on-tip) !important}
.call>div{display:grid; gap:8px; font-size:12.5px; line-height:1.7; color:var(--muted)}
.call.gold{border-color:color-mix(in srgb,var(--gold) 30%,transparent); background:color-mix(in srgb,var(--gold) 6%,transparent)}
.call.gold>b{color:var(--gold) !important}
.tbl{overflow-x:auto; border-radius:6px; border:1px solid var(--line)}
.tbl table{width:100%; min-width:32rem; border-collapse:collapse; text-align:left; font-size:11.5px; line-height:1.5}
.tbl th{white-space:nowrap; border-bottom:1px solid var(--line); background:var(--well); padding:8px 12px; font-size:10px; font-weight:500; text-transform:uppercase; letter-spacing:.1em; color:var(--muted)}
.tbl td{vertical-align:top; border-bottom:1px solid var(--line); padding:8px 10px; line-height:1.625; color:var(--muted)}
.tbl tr:last-child td{border-bottom:0}
.tbl td:first-child{white-space:nowrap; font-weight:700; color:var(--ink); font-variant-numeric:tabular-nums}
.tbl td a{font:400 11px var(--mono) !important; color:var(--muted) !important; text-decoration:underline; text-decoration-color:var(--line) !important}
.tbl td a:hover{color:var(--ink) !important}
.steps>div{display:flex; gap:16px; border-top:1px solid var(--line); padding:14px 0}
.steps>div:last-child{border-bottom:1px solid var(--line)}
.steps .no{width:20px; flex:none; padding-top:2px; font-size:11px; font-weight:600; color:color-mix(in srgb,var(--muted) 50%,transparent); font-variant-numeric:tabular-nums}
.steps p{font-size:13px; font-weight:500; line-height:1.5; color:var(--ink)}
.steps p+p{margin-top:4px; font-size:12.5px; font-weight:400; line-height:1.7; color:var(--muted)}
.art-card pre{overflow-x:auto; border-radius:6px; border:1px solid var(--line); background:var(--well); padding:14px 16px; font:400 11.5px/1.75 var(--mono); color:var(--ink)}
.accts{overflow:hidden; border-radius:8px; border:1px solid var(--line)}
.accts>div{display:flex; align-items:center; gap:12px; border-bottom:1px solid var(--line); padding:7px 12px}
.accts>div:last-child{border-bottom:0}
.accts span{min-width:0; flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:11px; color:var(--muted)}
.accts a{flex:none; font-size:10.5px !important; font-weight:700 !important; font-variant-numeric:tabular-nums}
.accts a:hover{color:var(--head) !important}
.accts i{flex:none; font-size:10.5px; font-style:normal; color:color-mix(in srgb,var(--muted) 40%,transparent)}
.rot .rl{font-size:8.5px; text-transform:uppercase; letter-spacing:.16em; color:var(--brand)}
.rot .grid{margin-top:8px; display:grid; gap:1px; overflow:hidden; border-radius:8px; border:1px solid var(--line); background:var(--line)}
.rot .grid>div{display:flex; height:34px; align-items:center; gap:8px; background:var(--card); padding:0 10px; font-size:11px}
.rot .grid .ix{width:14px; flex:none; font-size:10px; color:var(--muted); font-variant-numeric:tabular-nums}
.rot .grid b{font-weight:600}
.rot .grid a{margin-left:auto; font:400 10.5px var(--mono) !important; color:var(--muted) !important; text-decoration:none !important}
.rot .grid a:hover{color:var(--ink) !important}
@media (min-width:640px){.rot .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){
  .docs .wrap{display:flex; align-items:flex-start; gap:24px}
  .toc{position:sticky; top:calc(var(--strip-h) + 76px); width:210px; flex:none; margin-bottom:0}
}

/* terms */
.terms{width:100%; max-width:720px; padding:16px 0 64px}
.terms h1{font-size:30px; font-weight:700; letter-spacing:-.015em; line-height:1.2}
.terms .upd{margin-top:8px; font-size:11.5px; color:var(--muted)}
.terms .intro{margin-top:24px; font-size:13.5px; line-height:1.7; color:var(--chrome)}
.terms .intro+.intro{margin-top:14px}
.terms .cnt{margin-top:28px; border-radius:12px; border:1px solid var(--line); background:var(--card); padding:14px 16px}
.terms .cnt>p{font-size:10px; text-transform:uppercase; letter-spacing:.14em; color:var(--muted)}
.terms .cnt ol{margin-top:10px; display:grid; gap:6px 24px; list-style:none}
.terms .cnt li{display:flex; gap:8px; font-size:12px}
.terms .cnt li span{width:16px; flex:none; text-align:right; color:color-mix(in srgb,var(--muted) 60%,transparent); font-variant-numeric:tabular-nums}
.terms .cnt li a{color:var(--chrome)} .terms .cnt li a:hover{color:var(--head)}
.terms section{margin-top:40px; scroll-margin-top:96px}
.terms h2{position:relative; font-size:17px; font-weight:700; line-height:1.375}
.terms h2 .n{position:absolute; left:-32px; top:3px; display:none; font-size:13px; font-weight:600; color:color-mix(in srgb,var(--muted) 60%,transparent); font-variant-numeric:tabular-nums}
.terms h2 .m{margin-right:6px; color:color-mix(in srgb,var(--muted) 60%,transparent)}
.terms .bd{margin-top:12px; display:grid; gap:14px; font-size:13.5px; line-height:1.7; color:var(--chrome)}
.terms .bd a{text-decoration:underline; text-decoration-color:var(--line); text-underline-offset:4px} .terms .bd a:hover{color:var(--head)}
.terms .bd .ink{color:var(--ink)}
.terms .sub{border-left:2px solid var(--line); padding-left:14px}
.terms .sub b{display:block; font-size:13px; font-weight:600; color:var(--ink)}
.terms .sub p{margin-top:4px}
.terms .end{margin-top:48px; border-top:1px solid var(--line); padding-top:24px; font-size:12px; line-height:1.7; color:var(--muted)}
.terms .end a{text-decoration:underline; text-decoration-color:var(--line); text-underline-offset:4px}
@media (min-width:640px){.terms{padding-left:48px} .terms .cnt ol{grid-template-columns:1fr 1fr} .terms h2 .n{display:block} .terms h2 .m{display:none}}
