/* MDRender Markdown Styles */
.mdrender {
    color: var(--md-text, #333);
    line-height: 1.6;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
    --checkbox-size: 1.2em;
    --checkbox-margin: 0.5em;
}

.mdrender h1,
.mdrender h2,
.mdrender h3,
.mdrender h4,
.mdrender h5,
.mdrender h6 {
    margin: 1.5rem 0 1rem;
    color: var(--md-header, #2c3e50);
    line-height: 1.25;
    scroll-margin-top: 1rem;
}

.mdrender h1 { font-size: 2em; }
.mdrender h2 { font-size: 1.5em; }
.mdrender h3 { font-size: 1.25em; }
.mdrender h4 { font-size: 1em; }
.mdrender h5 { font-size: 0.875em; }
.mdrender h6 { font-size: 0.85em; }

.mdrender p {
    margin-bottom: 1rem;
}

.mdrender code {
    background: var(--md-code-bg, #f8f9fa);
    padding: 0.2rem 0.4rem;
    border-radius: 3px;
    font-family: 'Courier New', Courier, monospace;
    font-size: 0.9em;
}

.mdrender pre {
    background: var(--md-code-bg, #f8f9fa);
    padding: 1rem;
    border-radius: 4px;
    overflow-x: auto;
    margin: 1rem 0;
}

.mdrender pre code {
    background: none;
    padding: 0;
    font-size: 0.9em;
}

.mdrender blockquote {
    border-left: 4px solid var(--md-blockquote-border, #ddd);
    margin: 1em 0;
    padding: 0.5em 1em;
    color: var(--md-blockquote-text, #666);
    background-color: var(--md-blockquote-bg, rgba(0, 0, 0, 0.05));
}

.mdrender blockquote blockquote {
    margin-left: 0.5em;
    border-left-color: var(--md-blockquote-nested-border, #999);
}

.mdrender blockquote blockquote blockquote {
    border-left-color: var(--md-blockquote-nested-2-border, #666);
}

.mdrender blockquote blockquote blockquote blockquote {
    border-left-color: var(--md-blockquote-nested-3-border, #333);
}

.mdrender ul,
.mdrender ol {
    margin: 1rem 0;
    padding-left: 2rem;
}

.mdrender li {
    margin-bottom: 0.5rem;
}

.mdrender a {
    color: var(--md-link, #3498db);
    text-decoration: none;
}

.mdrender a:hover {
    text-decoration: underline;
}

.mdrender img {
    max-width: 100%;
    height: auto;
    margin: 1rem 0;
    border-radius: 4px;
}

.mdrender hr {
    border: none;
    border-top: 2px solid var(--md-border, #ddd);
    margin: 2rem 0;
}

/* Tables */
.mdrender table {
    border-collapse: collapse;
    width: 100%;
    margin: 1rem 0;
    overflow-x: auto;
    display: block;
}

.mdrender th,
.mdrender td {
    border: 1px solid var(--md-border, #ddd);
    padding: 0.5rem;
}

.mdrender th {
    background: var(--md-code-bg, #f8f9fa);
    font-weight: 600;
}

.mdrender tr:nth-child(even) {
    background: var(--md-code-bg, #f8f9fa);
}

/* Task Lists */
.mdrender ul.task-list {
    list-style: none;
    padding-left: 0;
}

.mdrender .task-list-item {
    display: flex;
    align-items: flex-start;
    margin: 0.5em 0;
    line-height: 1.4;
}

.mdrender .task-list-item-checkbox {
    width: var(--checkbox-size);
    height: var(--checkbox-size);
    margin: 0.1em var(--checkbox-margin) 0 0;
    flex-shrink: 0;
}

.mdrender .task-list-item-text {
    flex: 1;
    min-width: 0;
}

/* Nested task lists */
.mdrender .task-list .task-list {
    margin-top: 0.5em;
    margin-left: var(--checkbox-size);
}

/* Footnotes */
.mdrender .footnotes {
    margin-top: 2rem;
    font-size: 0.9em;
    color: var(--md-blockquote, #666);
}

.mdrender .footnotes hr {
    margin: 1rem 0;
}

.mdrender .footnote-ref {
    font-size: 0.8em;
    vertical-align: super;
    line-height: 0;
}

.mdrender .footnote-backref {
    font-size: 0.8em;
    margin-left: 0.5rem;
}

/* Definition Lists */
.mdrender dl {
    margin: 1rem 0;
}

.mdrender dt {
    font-weight: bold;
    margin-top: 1rem;
}

.mdrender dd {
    margin-left: 2rem;
    margin-top: 0.5rem;
}

/* Text Formatting */
.mdrender mark {
    background-color: #fff1a7;
    padding: 0.1em 0.2em;
    border-radius: 2px;
}

.mdrender del {
    color: var(--md-blockquote, #666);
}

.mdrender sup,
.mdrender sub {
    font-size: 0.8em;
}

/* Dark theme support */
[data-theme="dark"] .mdrender {
    --md-text: #e0e0e0;
    --md-header: #60a5fa;
    --md-code-bg: #2d2d2d;
    --md-blockquote: #a0a0a0;
    --md-link: #60a5fa;
    --md-border: #404040;
}

[data-theme="dark"] .mdrender mark {
    background-color: #665c1e;
    color: #fff;
}

[data-theme="dark"] .mdrender tr:nth-child(even) {
    background: rgba(255, 255, 255, 0.05);
}
