/* Docs page: sidebar + article layout and typography for pages rendered from the GitHub wiki. */
.nav-links a.active{color:var(--text)}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.docs{padding:56px 0 30px}
.docs-head{margin-bottom:34px}
.docs-title{font-size:clamp(2.6rem,5.4vw,4.6rem);line-height:.95;letter-spacing:-.06em}
.docs-head .lead{margin-top:18px;max-width:760px}
.docs-head .lead a{color:var(--cyan)}

.docs-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px;align-items:start}

/* Sidebar */
.docs-sidebar{
  position:sticky;top:92px;max-height:calc(100vh - 110px);overflow:auto;
  padding:18px;border:1px solid var(--line);border-radius:20px;background:rgba(13,18,27,.72);
}
.docs-search input{
  width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--line);
  background:rgba(255,255,255,.035);color:var(--text);font:inherit;font-size:.9rem;outline:none;
}
.docs-search input:focus{border-color:rgba(104,224,255,.4)}
#docs-nav{margin-top:14px;font-size:.9rem}
#docs-nav p{margin:16px 0 6px;color:var(--cyan);font:800 .7rem ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.14em;text-transform:uppercase}
#docs-nav p:first-child{margin-top:0}
#docs-nav ul{list-style:none;margin:0;padding:0}
#docs-nav li a{display:block;padding:6px 10px;border-radius:9px;color:var(--muted)}
#docs-nav li a:hover{color:var(--text);background:rgba(255,255,255,.04)}
#docs-nav li a.current{color:var(--text);background:linear-gradient(135deg,rgba(104,224,255,.14),rgba(168,137,255,.12));border:1px solid rgba(104,224,255,.2)}
.docs-muted{color:var(--muted)}

/* Article */
.docs-article{
  min-width:0;padding:34px 40px 30px;border:1px solid var(--line);border-radius:var(--radius);
  background:linear-gradient(180deg,rgba(18,24,34,.8),rgba(10,14,21,.8));box-shadow:var(--shadow);
}
.docs-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:10px}
.docs-source{color:var(--muted);font-size:.85rem}
.docs-source:hover{color:var(--cyan)}

.markdown{color:var(--soft);font-size:1rem}
.markdown h1{font-size:clamp(2rem,3.6vw,2.9rem);line-height:1.05;letter-spacing:-.045em;margin:4px 0 20px;color:var(--text)}
.markdown h2{font-size:1.6rem;line-height:1.15;letter-spacing:-.03em;margin:40px 0 12px;color:var(--text);padding-top:14px;border-top:1px solid var(--line)}
.markdown h3{font-size:1.2rem;margin:28px 0 8px;color:var(--text)}
.markdown h4{font-size:1rem;margin:22px 0 6px;color:var(--text)}
.markdown p,.markdown ul,.markdown ol{margin:0 0 14px}
.markdown li{margin:4px 0}
.markdown a{color:var(--cyan)}
.markdown a:hover{text-decoration:underline}
.markdown strong{color:var(--text)}
.markdown code{
  font:500 .86em ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;padding:2px 6px;border-radius:6px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.06);color:#dfe8f7;
}
.markdown pre{
  min-height:0;margin:0 0 18px;padding:18px 20px;border-radius:14px;overflow:auto;white-space:pre;
  background:rgba(7,10,16,.8);border:1px solid var(--line);font-size:.86rem;line-height:1.65;
}
.markdown pre code{padding:0;border:0;background:none}
.markdown blockquote{margin:0 0 16px;padding:12px 18px;border-left:3px solid var(--violet);background:rgba(157,125,255,.07);border-radius:0 12px 12px 0;color:var(--soft)}
.markdown blockquote p:last-child{margin-bottom:0}
.markdown img{max-width:100%;height:auto;border-radius:14px;border:1px solid var(--line);margin:6px 0 14px}
.markdown hr{border:0;border-top:1px solid var(--line);margin:28px 0}
.markdown table{width:100%;border-collapse:collapse;margin:0 0 20px;font-size:.92rem;display:block;overflow-x:auto}
.markdown th,.markdown td{padding:9px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.markdown th{color:var(--text);font-weight:700;background:rgba(255,255,255,.03)}
.markdown tr:hover td{background:rgba(255,255,255,.02)}
.markdown :target{scroll-margin-top:96px}
.markdown h2,.markdown h3{scroll-margin-top:96px}

/* Previous / next */
.docs-pager{display:flex;justify-content:space-between;gap:14px;margin-top:34px;padding-top:22px;border-top:1px solid var(--line)}
.docs-pager a{flex:1;max-width:48%;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025);transition:.2s ease}
.docs-pager a:hover{border-color:rgba(104,224,255,.3);background:rgba(104,224,255,.06)}
.docs-pager small{display:block;color:var(--muted);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}
.docs-pager span{font-weight:700;color:var(--text)}
.docs-pager .next{text-align:right;margin-left:auto}

@media(max-width:900px){
  .docs-layout{grid-template-columns:1fr}
  .docs-sidebar{position:static;max-height:none}
  .docs-article{padding:24px 20px}
}
@media(max-width:620px){
  .docs{padding-top:36px}
  .docs-pager{flex-direction:column}
  .docs-pager a{max-width:none}
  .docs-pager .next{text-align:left;margin-left:0}
}
