:root{--bg:#0b1020;--bg-2:#0f1530;--panel:#121a36;--border:#1e2a5e;--border-soft:#1a2247;--text:#e7ecff;--text-dim:#a4adcf;--muted:#6b769d;--accent:#6b8afd;--accent-2:#3b5bdb;--kw:#c084fc;--fn:#8ab4ff;--ty:#5eead4;--str:#f5b76b;--num:#f08fb8;--cmt:#5b6794;--radius:10px;--radius-lg:14px;--container:1080px}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{background:radial-gradient(900px 480px at 80% -10%,rgba(59,91,219,0.18),transparent 60%),radial-gradient(700px 400px at -10% 20%,rgba(107,138,253,0.10),transparent 55%),var(--bg);min-height:100vh}
a{color:var(--accent);text-decoration:none;transition:color 120ms ease}
a:hover{color:#9bb0ff}
code,pre{font-family:'JetBrains Mono',ui-monospace,'SF Mono',Menlo,Consolas,monospace;font-size:13.5px}
h1,h2,h3,h4,h5{margin:0;letter-spacing:-0.02em;color:#f4f6ff;font-weight:600}
p{margin:0 0 1em 0}p:last-child{margin-bottom:0}
.nav{display:flex;align-items:center;justify-content:space-between;max-width:var(--container);margin:0 auto;padding:22px 28px}
.brand{display:inline-flex;align-items:baseline;gap:8px;font-weight:600;font-size:18px;color:var(--text);letter-spacing:-0.02em}
.brand:hover{color:var(--text)}
.brand-sub{color:var(--muted);font-weight:400;font-size:14.5px;font-family:'JetBrains Mono',monospace}
.nav-links{display:flex;align-items:center;gap:24px}
.nav-links a{color:var(--text-dim);font-size:14.5px;font-weight:500}
.nav-links a:hover{color:var(--text)}
main{max-width:var(--container);margin:0 auto;padding:0 28px 80px}
.hero{padding:40px 0 28px}
.hero h1{font-size:clamp(28px,3.6vw,40px);line-height:1.1;letter-spacing:-0.03em;margin-bottom:12px}
.hero .lede{color:var(--text-dim);font-size:16.5px;max-width:680px}
.eyebrow{display:inline-block;font-family:'JetBrains Mono',monospace;font-size:11.5px;font-weight:500;letter-spacing:0.14em;text-transform:uppercase;color:var(--accent);padding:5px 10px;border:1px solid rgba(107,138,253,0.30);border-radius:999px;background:rgba(107,138,253,0.06);margin-bottom:18px}
.back{display:inline-block;margin-bottom:14px;font-family:'JetBrains Mono',monospace;font-size:12.5px;color:var(--text-dim)}
.back:hover{color:var(--accent)}
.origin{color:var(--muted);font-size:14px;margin-bottom:6px}
.origin code{background:rgba(107,138,253,0.10);border:1px solid rgba(107,138,253,0.18);padding:1px 6px;border-radius:5px;color:#c4d0ff;font-size:12.5px}
.modules{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:14px}
.module-card{background:linear-gradient(180deg,rgba(30,42,94,0.30),rgba(15,21,48,0.55));border:1px solid var(--border-soft);border-radius:var(--radius-lg);padding:18px 20px;transition:border-color 160ms ease,transform 160ms ease}
.module-card:hover{border-color:rgba(107,138,253,0.45);transform:translateY(-1px)}
.module-card h3{font-size:15.5px;margin-bottom:6px;font-family:'JetBrains Mono',monospace;font-weight:600}
.module-card h3 a{color:var(--text)}
.module-card h3 a:hover{color:var(--accent)}
.module-card .blurb{color:var(--text-dim);font-size:14px;margin-bottom:10px}
.module-card .counts{color:var(--muted);font-size:12.5px;font-family:'JetBrains Mono',monospace;margin:0}
.toc{background:linear-gradient(180deg,rgba(30,42,94,0.22),rgba(15,21,48,0.40));border:1px solid var(--border-soft);border-radius:var(--radius-lg);padding:16px 20px;margin:18px 0 30px}
.toc h4{font-size:11.5px;text-transform:uppercase;letter-spacing:0.1em;color:var(--muted);margin-bottom:12px;font-weight:600}
.toc ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:6px 18px}
.toc li{font-family:'JetBrains Mono',monospace;font-size:13px;display:flex;align-items:baseline;gap:8px}
.toc li a{color:var(--text-dim)}
.toc li a:hover{color:var(--accent)}
.toc li .toc-kind{display:inline-block;min-width:46px;color:var(--muted);font-size:11px;text-transform:lowercase}
.items{display:flex;flex-direction:column;gap:22px}
.item{background:linear-gradient(180deg,rgba(30,42,94,0.22),rgba(15,21,48,0.40));border:1px solid var(--border-soft);border-radius:var(--radius-lg);padding:22px 24px;scroll-margin-top:24px}
.item-head{display:flex;align-items:baseline;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.kind{display:inline-block;font-family:'JetBrains Mono',monospace;font-size:11.5px;font-weight:600;padding:3px 9px;border-radius:6px;background:rgba(107,138,253,0.10);border:1px solid rgba(107,138,253,0.22);color:var(--accent);text-transform:lowercase;letter-spacing:0.02em}
.kind-struct{color:#5eead4;background:rgba(94,234,212,0.10);border-color:rgba(94,234,212,0.24)}
.kind-trait{color:#c084fc;background:rgba(192,132,252,0.10);border-color:rgba(192,132,252,0.24)}
.kind-enum{color:#f08fb8;background:rgba(240,143,184,0.10);border-color:rgba(240,143,184,0.24)}
.kind-macro{color:#f5b76b;background:rgba(245,183,107,0.10);border-color:rgba(245,183,107,0.24)}
.kind-const{color:#ffd166;background:rgba(255,209,102,0.10);border-color:rgba(255,209,102,0.24)}
.sig{font-family:'JetBrains Mono',monospace;font-size:14px;color:#d8dfff;word-break:break-word}
.doc{color:var(--text-dim);font-size:15px;line-height:1.65}
.doc p{margin:0 0 10px 0}.doc p:last-child{margin-bottom:0}
.doc h3,.doc h4{color:#f4f6ff;margin-top:16px;margin-bottom:8px;font-size:15px}
.doc code{font-size:12.5px;background:rgba(107,138,253,0.12);border:1px solid rgba(107,138,253,0.18);padding:1px 6px;border-radius:5px;color:#c4d0ff}
.code-frame{background:linear-gradient(180deg,#0f1633 0%,#0c1228 100%);border:1px solid var(--border-soft);border-radius:var(--radius);overflow:hidden;margin:10px 0 14px;box-shadow:0 1px 0 rgba(255,255,255,0.04) inset}
.code-frame-bar{display:flex;align-items:center;gap:8px;padding:10px 14px;background:rgba(255,255,255,0.02);border-bottom:1px solid var(--border-soft)}
.dot{width:9px;height:9px;border-radius:50%;background:#2a335a}
.code-frame-title{margin-left:8px;font-family:'JetBrains Mono',monospace;font-size:12px;color:var(--muted)}
pre.code{margin:0;padding:18px 20px;overflow-x:auto;background:transparent;color:#d8dfff;line-height:1.65;font-size:13px}
pre.code code{background:transparent;padding:0;border:0;color:inherit;font-size:13px}
.kw{color:var(--kw)}.fn{color:var(--fn)}.ty{color:var(--ty)}.str{color:var(--str)}.num{color:var(--num)}.cmt{color:var(--cmt);font-style:italic}
.footer{border-top:1px solid var(--border-soft);background:rgba(8,12,30,0.4);margin-top:60px}
.footer-row{max-width:var(--container);margin:0 auto;padding:24px 28px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:13px;flex-wrap:wrap;gap:12px}
.footer-row a{color:var(--muted)}.footer-row a:hover{color:var(--accent)}
.footer-row code{background:rgba(107,138,253,0.10);border:1px solid rgba(107,138,253,0.18);padding:1px 6px;border-radius:5px;color:#c4d0ff;font-size:12px}
@media (max-width:720px){.modules{grid-template-columns:1fr}.toc ul{grid-template-columns:1fr}main{padding:0 20px 60px}.nav-links{gap:14px}}
