/* Custom CSS for GenesisLab documentation */

/* Code blocks with better contrast */
.highlight {
    background-color: #f8f9fa;
    border-radius: 4px;
    padding: 1em;
    margin: 1em 0;
}

/* Dark mode code blocks */
html[data-theme="dark"] .highlight {
    background-color: #1e1e1e;
}

/* Inline code */
code.literal {
    background-color: #f0f0f0;
    padding: 0.2em 0.4em;
    border-radius: 3px;
    font-size: 90%;
}

html[data-theme="dark"] code.literal {
    background-color: #2d2d2d;
}

/* Admonitions */
.admonition {
    margin: 1em 0;
    padding: 0.5em 1em;
    border-left: 4px solid #42a5f5;
    background-color: #e3f2fd;
    border-radius: 4px;
}

.admonition.warning {
    border-left-color: #ff9800;
    background-color: #fff3e0;
}

.admonition.danger {
    border-left-color: #f44336;
    background-color: #ffebee;
}

.admonition.tip {
    border-left-color: #4caf50;
    background-color: #e8f5e9;
}

/* Tables */
table.docutils {
    border-collapse: collapse;
    width: 100%;
    margin: 1em 0;
}

table.docutils th {
    background-color: #f5f5f5;
    font-weight: 600;
    padding: 0.75em;
    text-align: left;
    border-bottom: 2px solid #ddd;
}

table.docutils td {
    padding: 0.75em;
    border-bottom: 1px solid #eee;
}

html[data-theme="dark"] table.docutils th {
    background-color: #2d2d2d;
    border-bottom-color: #444;
}

html[data-theme="dark"] table.docutils td {
    border-bottom-color: #333;
}

/* Navigation links */
.toctree-wrapper ul {
    list-style-type: none;
    padding-left: 0;
}

.toctree-wrapper li {
    margin: 0.5em 0;
}

.toctree-wrapper a {
    text-decoration: none;
    color: #1976d2;
    font-weight: 500;
}

.toctree-wrapper a:hover {
    text-decoration: underline;
}

/* Version badge */
.version-badge {
    display: inline-block;
    background-color: #4caf50;
    color: white;
    padding: 0.2em 0.5em;
    border-radius: 3px;
    font-size: 0.85em;
    font-weight: 500;
}

/* API reference styling */
.api-ref dt {
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
    font-size: 0.95em;
    font-weight: 600;
    margin-top: 1.5em;
}

.api-ref dd {
    margin-left: 2em;
    margin-bottom: 1em;
}

/* Signature styling */
.sig {
    background-color: #f8f9fa;
    padding: 0.5em 1em;
    border-radius: 4px;
    font-family: 'Monaco', 'Menlo', 'Ubuntu Mono', monospace;
    font-size: 0.9em;
    overflow-x: auto;
}

html[data-theme="dark"] .sig {
    background-color: #1e1e1e;
}

/* Responsive design */
@media (max-width: 768px) {
    .highlight {
        font-size: 0.85em;
    }

    table.docutils {
        font-size: 0.9em;
    }
}

/* Copy button positioning */
.highlight button.copybtn {
    opacity: 0.6;
    transition: opacity 0.2s;
}

.highlight:hover button.copybtn {
    opacity: 1;
}
