/**
 * Bootstrap Override Rules
 * Minimal, targeted overrides to prevent Bootstrap from styling markdown content
 * This file loads AFTER markdown-content.css
 */

/* ========================================
   SCOPE ISOLATION
   ======================================== */

/* Prevent Bootstrap from affecting markdown content */
.markdown-content {
    /* Explicit block context - no Bootstrap interference */
    display: block;
    overflow: visible;
    position: relative;
}

/* ========================================
   BUTTON RESET
   ======================================== */

/* If there are buttons in markdown, don't style them as Bootstrap buttons */
.markdown-content button,
.markdown-content .btn {
    all: revert;
    cursor: pointer;
    padding: 0.5rem 1rem;
    border: 1px solid #ccc;
    border-radius: 4px;
    background: white;
    color: #333;
    font-size: 1rem;
}

/* ========================================
   FORM RESET
   ======================================== */

.markdown-content input,
.markdown-content select,
.markdown-content textarea {
    all: revert;
    border: 1px solid #ccc;
    padding: 0.5rem;
    border-radius: 4px;
    font-size: 1rem;
}

.markdown-content input:focus,
.markdown-content select:focus,
.markdown-content textarea:focus {
    outline: 2px solid #0066cc;
    outline-offset: 2px;
}

/* ========================================
   CARD RESET
   ======================================== */

.markdown-content .card,
.markdown-content .card-body,
.markdown-content .card-header {
    all: revert;
    display: block;
}

/* ========================================
   UTILITY CLASS OVERRIDE
   ======================================== */

/* Bootstrap utility classes should not apply to markdown */
.markdown-content .d-flex,
.markdown-content .justify-content-between,
.markdown-content .align-items-center,
.markdown-content .text-center,
.markdown-content .text-muted {
    all: revert;
}

/* ========================================
   ELEMENT BASELINE
   ======================================== */

/* Ensure markdown elements maintain their semantic meaning */
.markdown-content strong,
.markdown-content b {
    font-weight: 700;
    color: inherit;
}

.markdown-content em,
.markdown-content i {
    font-style: italic;
    color: inherit;
}

.markdown-content del,
.markdown-content s {
    text-decoration: line-through;
}

.markdown-content mark {
    background-color: #ffff00;
    color: inherit;
}

.markdown-content small {
    font-size: 0.875em;
}

.markdown-content sub {
    vertical-align: sub;
    font-size: 0.875em;
}

.markdown-content sup {
    vertical-align: super;
    font-size: 0.875em;
}

/* ========================================
   PRINT STYLES
   ======================================== */

@media print {
    .markdown-content {
        background: white;
        color: black;
        font-size: 12pt;
    }

    .markdown-content a {
        color: black;
        text-decoration: underline;
    }

    .markdown-content code,
    .markdown-content pre {
        background: #f5f5f5;
        border: 1px solid #ccc;
    }
}

/* ========================================
   DARK MODE SUPPORT
   ======================================== */

@media (prefers-color-scheme: dark) {
    .markdown-content {
        color: var(--text-primary);
        background-color: var(--bg-secondary, transparent);
    }

    .markdown-content code {
        background-color: rgba(255, 255, 255, 0.1);
        color: #ff6b6b;
    }

    .markdown-content blockquote {
        border-left-color: #666;
        background-color: rgba(255, 255, 255, 0.05);
        color: var(--text-secondary);
    }
}
