/* Documentation reading shell; shared with existing platform articles. */
body:has(.docs-container) { background: #080b11; animation: none; }
body:has(.docs-container) .auth-button.primary { background: var(--accent-solid); }
body:has(.docs-container) .auth-button.primary:hover { background: var(--accent-solid-hover); }
.docs-container { --doc-muted: #aeb8c8; display: grid; grid-template-columns: 258px minmax(0, 780px) 192px; max-width: 1440px; width: 100%; margin: 0 auto; padding: 96px 24px 72px; gap: 36px; min-height: 80vh; align-items: start; }
.docs-sidebar { position: sticky; top: 96px; left: auto; width: auto; height: auto; max-height: calc(100vh - 112px); overflow: auto; padding: 0 16px 20px 0; background: transparent; border-right: 1px solid #253041; backdrop-filter: none; z-index: 20; }
.docs-navigation > summary { display: none; }
.docs-home { display: block; color: #eef3fc; font-weight: 650; font-size: 15px; margin: 4px 12px 24px; text-decoration: none; }
.docs-search-label { display: block; color: #c1cbdc; font-size: 12px; margin: 0 12px 8px; }
.docs-search-box { position: relative; margin: 0 10px; }
.docs-search-box input { width: 100%; background: #101722; border: 1px solid #35445b; border-radius: 8px; padding: 11px 54px 11px 12px; color: #f3f6fc; font: inherit; font-size: 13px; }
.docs-search-box kbd { position: absolute; right: 9px; top: 13px; font-size: 10px; color: #b2bed1; pointer-events: none; }
.docs-search-status { font-size: 12px; color: #b8c4d7; padding: 6px 12px; min-height: 20px; }
.docs-search-results { list-style: none; margin: 0 8px 16px; padding: 0; }
.docs-search-results a { display: block; padding: 12px 8px; border-bottom: 1px solid #273247; color: #edf3fc; font-size: 13px; text-decoration: none; }
.docs-search-results small { display: block; color: #acbad1; font-size: 11px; margin-top: 5px; line-height: 1.6; }
.docs-search-results a:hover, .docs-search-results a:focus { background: #172234; border-radius: 6px; }
.sidebar-nav .nav-section { padding: 22px 12px 8px; font-size: 10px; color: #9dacc4; letter-spacing: .11em; }
.sidebar-nav a { padding: 9px 12px; margin: 2px 0; font-size: 13px; color: #bbc6d8; line-height: 1.4; border: 0; border-radius: 6px; }
.sidebar-nav a:hover { color: #fff; background: #141e2d; }
.sidebar-nav a.active { background: #152540; color: #afcfff; }
.docs-main { margin: 0; padding: 8px 0; min-width: 0; max-width: none; }
.docs-main .breadcrumb { padding: 0; margin-bottom: 28px; font-size: 12px; color: #aebcd2; }
.docs-main .breadcrumb a { color: #aebcd2; }
.docs-content { color: #c4cede; font-size: 15px; line-height: 1.8; max-width: 100%; }
.docs-content h1 { font-size: clamp(2rem, 3vw, 2.8rem); letter-spacing: -.04em; line-height: 1.15; color: #f3f6fc; margin: 0 0 20px; }
.docs-content h2 { font-size: 1.4rem; color: #f0f5ff; letter-spacing: -.025em; margin: 42px 0 16px; padding-top: 0; border: 0; scroll-margin-top: 104px; }
.docs-content h3 { font-size: 1.05rem; color: #edf3fc; margin: 24px 0 10px; scroll-margin-top: 104px; }
.docs-content p { color: #c0cada; margin: 0 0 18px; }
.docs-content .docs-eyebrow { font-size: 11px; text-transform: uppercase; letter-spacing: .12em; color: #94bbff; margin-bottom: 14px; font-weight: 600; }
.docs-content .docs-lede { font-size: 17px; line-height: 1.7; color: #c3cee0; }
.docs-content .docs-meta { font-size: 11px; color: #a4b3c9; border-bottom: 1px solid #253041; padding-bottom: 26px; margin-bottom: 30px; }
.docs-content a { color: #a6c9ff; text-underline-offset: 4px; }
.docs-content strong { color: #edf3fc; }
.docs-content ul, .docs-content ol { padding-left: 24px; margin: 16px 0 24px; }
.docs-content li { margin: 7px 0; }
.docs-content code { font-size: .86em; color: #c9e0ff; background: #172131; border: 1px solid #2a394e; border-radius: 4px; padding: 2px 5px; overflow-wrap: anywhere; }
.docs-content pre { position: relative; background: #0c121d; border: 1px solid #2b3a50; border-radius: 10px; margin: 20px 0 24px; padding: 44px 18px 18px; max-width: 100%; overflow: auto; }
.docs-content pre code { display: block; padding: 0; background: none; border: 0; color: #d4e6ff; font-size: 12px; line-height: 1.85; white-space: pre; overflow-wrap: normal; }
.docs-copy { position: absolute; right: 10px; top: 8px; border: 1px solid #3c4d65; border-radius: 5px; background: #172337; color: #cbdcf5; padding: 4px 9px; cursor: pointer; font: inherit; font-size: 11px; }
.docs-content blockquote, .docs-callout { border-left: 3px solid #719eea; background: #101d30; padding: 18px 22px; margin: 24px 0; border-radius: 0 8px 8px 0; }
.docs-content blockquote p:last-child, .docs-callout p:last-child { margin-bottom: 0; }
.docs-content table { display: block; overflow-x: auto; margin: 24px 0; font-size: 13px; }
.docs-content th { background: #121d2b; color: #e4edfc; }
.docs-content td, .docs-content th { border-bottom: 1px solid #2d394e; padding: 13px 14px; min-width: 110px; }
.docs-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin: 24px 0; }
.docs-content .docs-card { display: block; border: 1px solid #2c394c; background: #0f1723; border-radius: 10px; padding: 22px; text-decoration: none; transition: border-color .15s; }
.docs-card:hover { border-color: #7aa4e8; }
.docs-card strong { display: block; font-size: 15px; margin-bottom: 8px; }
.docs-card span { font-size: 13px; color: #b8c4d8; line-height: 1.7; display: block; }
.docs-card .card-index { font-size: 10px; letter-spacing: .08em; color: #95bfff; margin-bottom: 18px; }
.docs-flow { display: flex; gap: 12px; list-style: none; padding: 0 !important; }
.docs-flow li { flex: 1; padding: 14px; border-top: 2px solid #507ec6; background: #101b2b; font-size: 13px; }
.docs-flow strong { display: block; }
.docs-sources { font-size: 11px; border-top: 1px solid #2b3547; padding-top: 24px; margin-top: 44px !important; }
.docs-toc { position: sticky; top: 108px; border-left: 1px solid #2c3749; padding-left: 18px; font-size: 12px; }
.docs-toc p { color: #eff4fd; font-weight: 600; margin-bottom: 14px; }
.docs-toc a { display: block; padding: 7px 0; text-decoration: none; color: #aebcd2; line-height: 1.5; }
.docs-toc a:hover { color: #cbe0ff; }
.docs-pagination { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; margin-top: 40px; }
.docs-pagination a { border: 1px solid #2c3c54; border-radius: 8px; padding: 16px; color: #cde1ff; font-size: 13px; text-decoration: none; }
.docs-pagination small { display: block; color: #acb9cc; font-size: 11px; margin-bottom: 8px; }
.docs-skip { position: fixed; top: -100px; left: 16px; z-index: 1000; background: #cbe0ff; padding: 14px; color: #091222; }
.docs-skip:focus { top: 12px; }
.docs-container :focus-visible { outline: 2px solid #a6c9ff; outline-offset: 4px; }
body:has(.docs-container) .site-footer { z-index: 21; background: #080b11; position: relative; }
@media (max-width: 1180px) { .docs-container { grid-template-columns: 230px minmax(0,1fr); gap: 28px; } .docs-toc { display: none; } }
@media (max-width: 760px) {
 .docs-container { display: block; padding: 86px 20px 44px; }
 .docs-sidebar { position: relative; top: auto; max-height: none; overflow: visible; border: 1px solid #30415b; padding: 0; border-radius: 9px; margin-bottom: 28px; width: 100%; }
 .docs-navigation > summary { display: list-item; padding: 14px 18px; cursor: pointer; color: #d6e7ff; font-size: 13px; }
 .docs-nav-inner { padding: 10px 12px 20px; max-height: 65vh; overflow: auto; }
 .docs-main { padding: 0; }
 .docs-content .docs-meta { line-height: 1.7; }
 .docs-grid { grid-template-columns: 1fr; }
 .docs-flow { flex-direction: column; }
 .docs-pagination { gap: 10px; }
 .docs-content pre code { font-size: 11px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .docs-card { transition: none; } }
