/* Markdown content styling */
.markdown-content {
    margin: 0;
}

.markdown-content p,
.markdown-content blockquote,
.markdown-content ul,
.markdown-content ol,
.markdown-content dl,
.markdown-content table,
.markdown-content pre,
.markdown-content details,
.markdown-content hr {
    margin-top: 0;
    margin-bottom: 1rem;
}

.markdown-content h1 {
    font-size: 2em;
    font-weight: 600;
    padding-bottom: .3em;
    margin: 1.5rem 0 1rem 0;
    border-bottom: 1px solid var(--gray-4);
    scroll-margin-top: 80px;
}

.markdown-content h2 {
    font-size: 1.5em;
    font-weight: 600;
    padding-bottom: .3em;
    margin: 1.5rem 0 1rem 0;
    border-bottom: 1px solid var(--gray-4);
    scroll-margin-top: 80px;
}

.markdown-content h3 {
    font-size: 1.25em;
    font-weight: 600;
    margin: 1.5rem 0 0.5rem 0;
    scroll-margin-top: 80px;
}

.markdown-content h4 {
    font-size: 1em;
    font-weight: 600;
    margin: 1.5rem 0 0.5rem 0;
    scroll-margin-top: 80px;
}

.markdown-content h5 {
    font-size: 0.875em;
    font-weight: 600;
    margin: 1.5rem 0 0.5rem 0;
    scroll-margin-top: 80px;
}

.markdown-content h6 {
    font-size: 0.75em;
    font-weight: 600;
    margin: 1.5rem 0 0.5rem 0;
    scroll-margin-top: 80px;
    color: var(--gray-10);
}

.markdown-content hr {
    height: 1px;
    padding: 0;
    margin: 24px 0;
    background-color: var(--gray-4);
    border: 0;
}

.markdown-content p {
    font-size: inherit;
}

.markdown-content p:last-child,
.markdown-content ul:last-child,
.markdown-content ol:last-child,
.markdown-content dl:last-child {
    margin-bottom: 0;
}

.markdown-content strong,
.markdown-content b {
    color: var(--gray-12);
}

.markdown-content ul,
.markdown-content ol {
    padding-left: 2em;
    line-height: 1.5rem;
}

.markdown-content ul {
    font-size: inherit;
    list-style-type: disc;
}

.markdown-content ol {
    font-size: inherit;
    list-style-type: decimal;
    counter-reset: list-counter;
}

.markdown-content ol ol {
    list-style-type: lower-alpha;
}

.markdown-content ol ol ol {
    list-style-type: lower-roman;
}

.markdown-content ol ol ol ol {
    list-style-type: decimal;
}

.markdown-content li {
    margin: 0.25rem 0;
}

.markdown-content li p {
    margin: 0.5rem 0;
}

.markdown-content li>ul,
.markdown-content li>ol {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

.markdown-content code {
    /* Base inline code styling - will be overridden by prism.css for syntax highlighted code */
    background-color: var(--gray-3);
    padding: 0.125rem 0.25rem;
    border-radius: 3px;
    font-family: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace;
    font-size: 0.875rem;
    color: var(--accent-11);
}

.markdown-content pre {
    background-color: var(--gray-1);
    padding: 1rem;
    border-radius: 6px;
    overflow-x: auto;
    margin: 1rem 0;
    border: 1px solid var(--gray-4);
    max-width: 100%;
    white-space: pre-wrap;
    word-wrap: break-word;
}

.markdown-content pre code {
    background: transparent;
    color: var(--gray-12);
    font-family: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace;
    font-size: 0.875rem;
    white-space: pre-wrap;
    word-break: break-all;
}

.markdown-content table {
    border-spacing: 0;
    border-collapse: collapse;
    display: table;
    width: 100%;
    overflow: auto;
    margin: 16px 0;
    font-variant: tabular-nums;
    border: 1px solid var(--gray-6);
    border-radius: 6px;
}

.markdown-content table th,
.markdown-content table td {
    padding: 6px 13px;
    border: 1px solid var(--gray-6);
    text-align: left;
    vertical-align: top;
}

.markdown-content table th {
    font-weight: 600;
    background-color: var(--gray-2);
    border-bottom: 2px solid var(--gray-6);
}

.markdown-content table tr {
    background-color: transparent;
    border-top: 1px solid var(--gray-6);
}

.markdown-content table tr:nth-child(2n) {
    background-color: var(--gray-1);
}

.markdown-content blockquote {
    border-left: 4px solid var(--gray-6);
    padding-left: 1rem;
    color: var(--gray-10);
    font-style: italic;
}

.markdown-content a {
    color: var(--accent-11);
    text-decoration: underline;
}

.markdown-content a:hover {
    color: var(--accent-10);
}

.markdown-content img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    display: block;
}

/* Image styling classes */
.markdown-content img.content-image {
    width: 100%;
    margin: 1.5rem 0;
}

.markdown-content img.content-image-full {
    width: 100%;
    margin: 1.5rem 0;
}

.markdown-content img.content-image-large {
    width: 100%;
    max-width: 1000px;
    margin: 1.5rem 0;
}

.markdown-content img.content-image-medium {
    width: 100%;
    max-width: 800px;
    margin: 1.5rem 0;
}

.markdown-content img.content-image-small {
    width: 100%;
    max-width: 600px;
    margin: 1.5rem 0;
}

/* Logo showcase styles */
.markdown-content img.logo-showcase-large {
    height: 80px;
    margin: 1.5rem 0;
    background: #f5f5f5;
    padding: 20px;
}

.markdown-content img.logo-showcase-medium {
    height: 60px;
    margin: 1.5rem 0;
    background: #f5f5f5;
    padding: 1rem;
}

.markdown-content img.logo-showcase-small {
    height: 100px;
    background: #f5f5f5;
    padding: 1rem;
}

.markdown-content img.logo-showcase-dark {
    background: #333;
}

/* Grid images (LinkedIn, Teams backgrounds) */
.markdown-content img.grid-image {
    width: 100%;
    border: 1px solid #ddd;
}

/* Sticker styles */
.markdown-content img.sticker-large {
    height: 100px;
    background: #f5f5f5;
    padding: 1rem;
}

.markdown-content img.sticker-medium {
    height: 80px;
    background: #f5f5f5;
    padding: 1rem;
}

/* Video styling classes */
.markdown-content .content-video-full {
    width: 100%;
    margin: 1.5rem 0;
    border-radius: 8px;
    overflow: hidden;
}

.markdown-content .content-video-full iframe {
    border-radius: 8px;
}

/* Mermaid diagram styling */
.markdown-content .mermaid {
    text-align: center;
    margin: 2rem 0;
    padding: 1rem;
    background-color: white;
    border: 1px solid var(--gray-4);
    border-radius: 8px;
    overflow-x: auto;
}

.markdown-content .mermaid svg {
    max-width: 100%;
    height: auto;
}

.markdown-content .mermaid p {
    color: var(--gray-1);
}

.markdown-content .mermaid-error {
    color: var(--red-10);
    background-color: var(--red-2);
    border: 1px solid var(--red-6);
    border-radius: 4px;
    padding: 1rem;
    font-family: monospace;
}