/* ============================================================
   Book / docs pages — sidebar table-of-contents & prev/next nav
   ============================================================ */

.dd-with-sidebar { display: flex; gap: 0; max-width: 1200px; margin: 0 auto; }
.dd-sidebar {
    width: 280px; min-width: 280px;
    background: var(--dd-bg-light);
    border-right: 1px solid var(--dd-border);
    padding: 2rem 1rem;
    position: sticky; top: 70px;
    max-height: calc(100vh - 70px); overflow-y: auto;
}
.dd-content { flex: 1; padding: 2rem; min-width: 0; }

.dd-sidebar-tree { list-style: none; padding: 0; margin: 0; }
.dd-sidebar-tree ul { list-style: none; padding-left: 16px; margin: 4px 0; display: none; }
.dd-sidebar-tree ul.open { display: block; }
.dd-sidebar-tree li { margin: 0; }
.dd-sidebar-tree a {
    display: block; padding: 4px 8px;
    color: #333; text-decoration: none;
    font-size: 14px; border-radius: 4px;
    transition: background 0.15s;
}
.dd-sidebar-tree a:hover { background: #e9ecef; }
.dd-sidebar-tree li.active > a {
    background: var(--dd-green); color: #fff; font-weight: 600;
}

@media (max-width: 767px) {
    .dd-with-sidebar { flex-direction: column; }
    .dd-sidebar {
        width: 100%; min-width: 0; position: static;
        max-height: none; border-right: none;
        border-bottom: 1px solid var(--dd-border);
        padding: 1rem;
    }
    .dd-content { padding: 1rem; }
}

/* Book Nav (Prev/Next) */
.dd-book-nav {
    display: flex; justify-content: space-between;
    margin-top: 3rem; padding-top: 1.5rem;
    border-top: 1px solid var(--dd-border);
}
.dd-book-nav a {
    color: var(--dd-green); text-decoration: none;
    font-weight: 500; max-width: 45%;
}
.dd-book-nav a:hover { color: var(--dd-green-hover); }
