.sticky-sidebar {
            position: sticky;
            top: 20px;
            height: calc(100vh - 40px);
            overflow-y: auto;
        }
        
.toc-item {
	padding-left: 1rem;
	border-left: 2px solid #e5e7eb;
	transition: all 0.3s ease;
}

.toc-item:hover, .toc-item.active {
	border-left-color: #3b82f6;
	color: #3b82f6;
}

.citation {
	background-color: #f3f4f6;
	padding: 1rem;
	border-radius: 0.5rem;
	font-family: monospace;
}

.figure {
	margin: 2rem 0;
	text-align: center;
	border: 1px solid #e5e7eb;
	padding: 1rem;
	border-radius: 0.5rem;
}

.figure img {
	max-width: 100%;
	height: auto;
}

table {
	width: 100%;
	border-collapse: collapse;
	margin: 2rem 0;
}

table th, table td {
	border: 1px solid #e5e7eb;
	padding: 0.75rem;
	text-align: left;
}

table th {
	background-color: #f3f4f6;
}

.hidden-section {
	display: none;
}
        
@media (max-width: 1024px) {
	.sidebar {
		display: none;
	}
	
	.main-content {
		width: 100%;
	}
}

        .tab-content {
            display: none;
        }
        .tab-content.active {
            display: block;
        }
        .tab-button.active {
            border-bottom: 3px solid #3b82f6;
            color: #3b82f6;
            font-weight: 600;
        }
        .topic-tab-content {
            display: none;
        }
        .topic-tab-content.active {
            display: block;
        }
        .topic-tab-button.active {
            border-bottom: 3px solid #3b82f6;
            color: #3b82f6;
            font-weight: 600;
        }
        .header-image {
            height: 400px;
            background-size: cover;
            background-position: center;
        }
        @media (max-width: 768px) {
            .header-image {
                height: 250px;
            }
            .menu-items {
                display: none;
            }
            .mobile-menu-button {
                display: block;
            }
        }