/* ============ DOC PAGE HERO ============ */
.doc-hero{background:var(--navy-950);color:#fff;padding:64px 0 46px;position:relative;overflow:hidden;}
.doc-hero::before{
  content:"";position:absolute;inset:0;
  background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:48px 48px;mask-image:radial-gradient(ellipse 70% 100% at 30% 0%,#000 30%,transparent 80%);
}
.doc-hero .wrap{position:relative;}
.doc-hero .eyebrow{margin-bottom:16px;}
.doc-hero h1{font-size:clamp(30px,4.4vw,46px);}
.doc-hero p{margin-top:14px;color:rgba(255,255,255,.62);max-width:560px;font-size:16px;}
.doc-meta{display:flex;gap:22px;margin-top:22px;font-family:var(--mono);font-size:12.5px;color:rgba(255,255,255,.45);flex-wrap:wrap;}
.doc-meta strong{color:rgba(255,255,255,.75);font-weight:600;}

/* ============ DOC LAYOUT: TOC + CONTENT ============ */
.doc-body{padding:64px 0 100px;}
.doc-grid{display:grid;grid-template-columns:260px 1fr;gap:56px;align-items:start;}
.doc-toc{position:sticky;top:98px;border-left:2px solid var(--line);padding-left:20px;}
.doc-toc .toc-label{font-family:var(--mono);font-size:11.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-400);margin-bottom:14px;display:block;}
.doc-toc ul{display:flex;flex-direction:column;gap:11px;}
.doc-toc a{font-size:13.8px;color:var(--ink-500);display:block;transition:color .15s;}
.doc-toc a:hover, .doc-toc a.active{color:var(--accent-500);font-weight:600;}

.doc-content{max-width:720px;}
.doc-content .doc-section{padding-top:6px;margin-bottom:52px;scroll-margin-top:96px;}
.doc-content .doc-section:last-child{margin-bottom:0;}
.doc-content h2{font-size:22px;color:var(--ink-900);margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line);}
.doc-content h3{font-size:16.5px;color:var(--ink-900);margin:20px 0 8px;}
.doc-content p{color:var(--ink-700);font-size:15.3px;margin-bottom:12px;}
.doc-content ul{margin:10px 0 16px;display:flex;flex-direction:column;gap:8px;}
.doc-content ul li{position:relative;padding-left:20px;color:var(--ink-700);font-size:15px;}
.doc-content ul li::before{content:"";position:absolute;left:0;top:9px;width:6px;height:6px;border-radius:2px;background:var(--accent-500);}
.doc-content strong{color:var(--ink-900);}
.doc-callout{
  background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--accent-500);
  border-radius:10px;padding:16px 18px;font-size:14.3px;color:var(--ink-700);margin:18px 0;
}
.doc-content a.inline-link{color:var(--accent-500);text-decoration:underline;text-underline-offset:3px;}

@media (max-width:900px){
  .doc-grid{grid-template-columns:1fr;}
  .doc-toc{position:static;border-left:none;padding-left:0;border-bottom:1px solid var(--line);padding-bottom:20px;}
  .doc-toc ul{flex-direction:row;flex-wrap:wrap;gap:8px 18px;}
}
