/* Print styles for resume */
@media print {
    /* Reset colors for print */
    * {
        color: #000 !important;
        background-color: #fff !important;
    }
    
    /* Hide non-essential elements */
    .header,
    .footer,
    .btn-icon,
    #theme-toggle {
        display: none !important;
    }
    
    /* Page setup */
    @page {
        margin: 0.5in;
        size: letter;
    }
    
    body {
        font-size: 11pt;
        line-height: 1.4;
    }
    
    .main-content {
        padding: 0;
    }
    
    .container {
        max-width: 100%;
        padding: 0;
    }
    
    /* Typography adjustments */
    .markdown-body h1 {
        font-size: 24pt;
        margin-top: 0;
        margin-bottom: 8pt;
        page-break-after: avoid;
    }
    
    .markdown-body h2 {
        font-size: 18pt;
        margin-top: 12pt;
        margin-bottom: 4pt;
        page-break-after: avoid;
    }
    
    .markdown-body h3 {
        font-size: 14pt;
        margin-top: 10pt;
        margin-bottom: 4pt;
        page-break-after: avoid;
    }
    
    .markdown-body p,
    .markdown-body li {
        font-size: 11pt;
        line-height: 1.4;
    }
    
    .markdown-body ul {
        margin-bottom: 6pt;
    }
    
    .markdown-body ul li {
        margin-bottom: 2pt;
    }
    
    /* Borders */
    .markdown-body h1,
    .markdown-body h2 {
        border-bottom: 1px solid #ccc !important;
    }
    
    .markdown-body hr {
        border: none;
        border-top: 1px solid #ccc;
        margin: 12pt 0;
    }
    
    /* Links */
    .markdown-body a {
        text-decoration: none;
    }
    
    /* By default, suppress URLs for all links */
    .markdown-body a[href^="http"]:after {
        content: "";
    }
    
    /* Show URLs for LinkedIn links (anywhere) and links with print-url class */
    .markdown-body a[href*="linkedin.com"]:after,
    .markdown-body .print-url a[href^="http"]:after {
        content: " (" attr(data-print-url) ")";
        font-size: 9pt;
        color: #666;
    }
    
    /* Fallback for LinkedIn and print-url links without data-print-url */
    .markdown-body a[href*="linkedin.com"]:not([data-print-url]):after,
    .markdown-body .print-url a[href^="http"]:not([data-print-url]):after {
        content: " (" attr(href) ")";
        font-size: 9pt;
        color: #666;
    }
    
    .markdown-body a[href^="mailto:"]:after,
    .markdown-body a[href^="tel:"]:after {
        content: "";
    }
    
    /* Page breaks */
    .markdown-body h2 {
        page-break-before: auto;
        page-break-after: avoid;
    }
    
    .markdown-body h3,
    .markdown-body h4 {
        page-break-after: avoid;
        page-break-inside: avoid;
    }
    
    /* Keep job entries together when possible */
    .markdown-body h3 + p,
    .markdown-body h3 + p + ul {
        page-break-before: avoid;
    }
    
    /* Allow list items to break naturally */
    .markdown-body ul,
    .markdown-body ol {
        page-break-inside: auto;
    }
    
    .markdown-body li {
        page-break-inside: avoid;
        page-break-after: auto;
    }
    
    /* Keep at least 2 lines together */
    .markdown-body p {
        orphans: 2;
        widows: 2;
    }
    
    /* Prevent huge gaps - allow sections to break if needed */
    .markdown-body > * {
        page-break-inside: auto;
    }
    
    /* Optimize spacing */
    .markdown-body blockquote {
        border-left: 3px solid #ccc;
        padding-left: 8pt;
        margin-left: 0;
    }
    
    /* Tables */
    .markdown-body table {
        border-collapse: collapse;
        width: 100%;
    }
    
    .markdown-body table th,
    .markdown-body table td {
        border: 1px solid #ccc;
        padding: 4pt 6pt;
    }
    
    /* Code blocks */
    .markdown-body pre {
        border: 1px solid #ccc;
        padding: 6pt;
        font-size: 9pt;
    }
    
    .markdown-body code {
        font-size: 9pt;
        background-color: #f5f5f5 !important;
        padding: 1pt 2pt;
    }
}