/**
 * Print Styles
 * Optimized for printing/PDF export
 */

@media print {

    /* Hide non-essential elements */
    .toolbar,
    .formatting-toolbar,
    .sidebar,
    .minimap,
    .editor-pane,
    .resize-handle,
    .editor-status-bar,
    .find-replace-panel,
    .modal,
    .toast-container,
    .copy-code-btn,
    .heading-anchor {
        display: none !important;
    }

    /* Reset layout */
    body {
        background: white !important;
        color: black !important;
        font-size: 12pt;
        line-height: 1.5;
    }

    .app-container,
    .main-content,
    .preview-pane,
    .preview-content {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        overflow: visible !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* Typography */
    .markdown-body {
        max-width: none;
        padding: 0;
        font-size: 12pt;
        color: black;
    }

    .markdown-body h1 {
        font-size: 24pt;
        page-break-after: avoid;
    }

    .markdown-body h2 {
        font-size: 18pt;
        page-break-after: avoid;
    }

    .markdown-body h3 {
        font-size: 14pt;
        page-break-after: avoid;
    }

    .markdown-body h4,
    .markdown-body h5,
    .markdown-body h6 {
        font-size: 12pt;
        page-break-after: avoid;
    }

    .markdown-body h1,
    .markdown-body h2 {
        border-bottom: 1px solid #ccc;
    }

    /* Links */
    .markdown-body a {
        color: black;
        text-decoration: underline;
    }

    .markdown-body a[href^="http"]::after {
        content: " (" attr(href) ")";
        font-size: 9pt;
        color: #666;
    }

    /* Code blocks */
    .markdown-body pre {
        background: #f5f5f5 !important;
        border: 1px solid #ddd;
        page-break-inside: avoid;
        white-space: pre-wrap;
        word-wrap: break-word;
    }

    .markdown-body code {
        background: #f5f5f5 !important;
    }

    /* Tables */
    .markdown-body table {
        border-collapse: collapse;
        page-break-inside: avoid;
    }

    .markdown-body th,
    .markdown-body td {
        border: 1px solid #ddd;
        padding: 8px;
    }

    .markdown-body th {
        background: #f5f5f5 !important;
    }

    /* Images */
    .markdown-body img {
        max-width: 100%;
        page-break-inside: avoid;
    }

    /* Blockquotes */
    .markdown-body blockquote {
        border-left: 3px solid #666;
        background: transparent;
        color: #333;
    }

    /* Page breaks */
    .page-break {
        page-break-before: always;
    }

    /* Avoid orphans and widows */
    .markdown-body p,
    .markdown-body li {
        orphans: 3;
        widows: 3;
    }

    /* Mermaid diagrams - render as placeholder in print */
    .markdown-body .mermaid {
        background: #f5f5f5;
        border: 1px solid #ddd;
        padding: 20px;
        text-align: center;
    }

    .markdown-body .mermaid::before {
        content: "[Diagram]";
        color: #666;
    }

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

/* Page size settings */
@page {
    size: A4;
    margin: 2cm;
}

@page :first {
    margin-top: 3cm;
}