/* TypeDoc custom theme - Matching MDBook & Sidebar Colors */

:root {
    /* Extracted from sidebar.scss & mdbook-theme.css */
    --bg-color: #f4f6f8;
    --fg-color: #333333;
    
    --sidebar-bg: #ffffff;
    --sidebar-active-color: #2e7d32;
    --sidebar-border-color: #e0e0e0;
    
    --color-link: rgb(44, 112, 163);
    --color-link-hover: #2e7d32;
    
    --code-bg: #f8f9fa;
    --code-border: #e0e0e0;
    
    /* TypeDoc Specific Variables (overriding default light theme) */
    --color-background: #f4f6f8;
    --color-background-secondary: #ffffff;
    
    --color-text: #333333;
    --color-text-aside: #666666;
    
    --color-ts-interface: #2e7d32;
    --color-ts-enum: #D96906;
    --color-ts-class: rgb(44, 112, 163);
    --color-ts-function: #57209f;
    --color-ts-namespace: #901616;
    --color-ts-private: #666666;
    
    --color-toolbar-match: #2e7d32;
}

body {
    background-color: var(--color-background);
    color: var(--color-text);
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

/* Toolbar / Header */
.tsd-page-toolbar {
    background-color: #ffffff;
    border-bottom: 2px solid #e0e0e0;
    box-shadow: 0 2px 4px rgba(0,0,0,0.02);
}

.title {
    color: rgb(44, 112, 163);
    font-weight: 700;
}

/* Sidebar / Navigation */
.tsd-navigation.primary {
    border-right: 1px solid #e0e0e0;
    background-color: #ffffff;
}

.tsd-navigation.primary a {
    color: #333333;
}

.tsd-navigation.primary a.current {
    background-color: #f4f6f8;
    color: #2e7d32;
    font-weight: bold;
    border-left: 3px solid #2e7d32;
}

.tsd-navigation.secondary li.current > a {
    color: #2e7d32;
    border-left-color: #2e7d32;
}

.tsd-navigation a:hover {
    color: #2e7d32;
    text-decoration: underline;
}

/* Main Content Area */
.container-main {
    background-color: #ffffff;
    padding: 2rem;
    border-radius: 8px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
    margin-top: 2rem;
}

/* Typography */
h1, h2, h3, h4, h5, h6 {
    color: rgb(44, 112, 163);
}

h3 {
    color: #2e7d32; /* Accent color for subheaders */
}

/* Links */
a {
    color: var(--color-link);
    text-decoration: none;
}

a:hover {
    color: var(--color-link-hover);
    text-decoration: underline;
}

/* Code Blocks */
pre {
    background-color: #f8f9fa !important;
    border: 1px solid #e0e0e0;
    border-radius: 6px;
}

code {
    background-color: rgba(0, 0, 0, 0.04);
    color: #333333;
    padding: 0.1em 0.3em;
    border-radius: 3px;
    font-family: 'Fira Code', monospace;
}

/* Panels / Cards */
.tsd-panel {
    background-color: #ffffff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    box-shadow: none;
    margin-bottom: 2rem;
}

.tsd-panel-group .tsd-panel {
    box-shadow: none;
}

/* Search Box */
#tsd-search .field {
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    background-color: #f8f9fa;
}

#tsd-search .field:focus-within {
    border-color: #2e7d32;
}

/* Footer */
footer {
    background-color: #f4f6f8;
    border-top: 1px solid #e0e0e0;
    margin-top: 4rem;
}

/* Hierarchy / Breadcrumbs */
.tsd-breadcrumb a {
    color: #666666;
}
.tsd-breadcrumb a:hover {
    color: #2e7d32;
}
