/* Documentation section layout & typography (Subplan Z-DOCS-2 Phase 0).
   Scoped under .docs-* so nothing leaks into the marketing pages that share
   the shell. Code token colors live in docs-prism.css. */

.docs-shell { max-width: 1400px; margin: 0 auto; }

.docs-article { max-width: 860px; }
.docs-article p, .docs-article li { font-size: 1.02rem; line-height: 1.7; }
.docs-article h1 { font-size: 1.9rem; margin-bottom: 1rem; }
.docs-article h2 { margin-top: 2.2rem; font-size: 1.45rem; }
.docs-article h3 { margin-top: 1.6rem; font-size: 1.15rem; }
.docs-article pre {
    background: #f6f8fa; padding: 1rem; border-radius: 6px;
    overflow-x: auto; font-size: 0.9rem; line-height: 1.55;
}
.docs-article code {
    background: #f6f8fa; padding: 0.1rem 0.35rem; border-radius: 4px; font-size: 0.92em;
    color: #24292f;
}
.docs-article pre code { background: transparent; padding: 0; color: inherit; }
.docs-article table { width: 100%; margin: 1rem 0 1.5rem; border-collapse: collapse; }
.docs-article table th, .docs-article table td {
    border: 1px solid #dee2e6; padding: 0.5rem 0.75rem; vertical-align: top;
    font-size: 0.97rem;
}
.docs-article table th { background: #f8f9fa; text-align: left; }
.docs-article blockquote {
    border-left: 4px solid #1976D2; background: #f8f9fa;
    padding: 0.75rem 1.25rem; margin: 1.5rem 0; border-radius: 0 6px 6px 0;
}
.docs-article blockquote p:last-child { margin-bottom: 0; }

/* Sidebar */
.docs-sidebar { padding-top: 1.5rem; }
.docs-sidebar-group {
    text-transform: uppercase; letter-spacing: 0.06em; font-size: 0.75rem;
    color: #6c757d; margin: 1.25rem 0 0.4rem; font-weight: 600;
}
.docs-sidebar-group:first-child { margin-top: 0; }
.docs-sidebar-link {
    display: block; padding: 0.25rem 0.6rem; margin: 0 -0.6rem;
    border-radius: 4px; text-decoration: none; color: #343a40; font-size: 0.95rem;
}
.docs-sidebar-link:hover { background: #f1f3f5; color: #1976D2; }
.docs-sidebar-link.active { background: #e8f0fe; color: #1565C0; font-weight: 600; }

/* Breadcrumbs, prev/next, hub cards */
.docs-breadcrumbs { padding-top: 1.5rem; font-size: 0.9rem; }
.docs-prevnext a { text-decoration: none; }
.docs-hub-card a { font-weight: 500; }

/* Language tabs */
.docs-tabs { margin: 1.25rem 0 1.5rem; }
.docs-tabs .nav-tabs .nav-link { font-size: 0.9rem; padding: 0.35rem 1rem; }
.docs-tabs .tab-content > .tab-pane pre { border-top-left-radius: 0; margin-bottom: 0; }

@media (max-width: 991.98px) {
    .docs-sidebar { border-bottom: 1px solid #dee2e6; padding-bottom: 1rem; }
}

@media (prefers-color-scheme: dark) {
    /* The site shell stays light; only code surfaces adapt, matching the
       shell's minimal dark-scheme handling in style.css. */
    .docs-article pre { background: #161b22; }
    .docs-article pre code { color: #e6edf3; }
}
