/* Print Stylesheet */

/* General Styles for Print */
body {
    font-family: Arial, sans-serif;
    font-size: 12pt;
    color: #000;
    background-color: #fff;
    margin: 24pt; /* Add some margin to avoid content being too close to the edges */
}

/* Hide Elements That Are Not Needed in Print */
header, footer, nav, .no-print, .sidebar, .ad-banner {
    display: none;
}

/* Ensure Links Are Visible */
a {
    color: #000;
    text-decoration: underline;
}

/* Improve Text Readability */
p, h1, h2, h3, h4, h5, h6 {
    page-break-inside:auto; /* Prevent page breaks inside headings and paragraphs */
}

/* Ensure Table Visibility */
table {
    width: 100%;
    border-collapse: collapse;
}

th, td {
    border: 1px solid #000;
    padding: 8px;
}

/* Images - Optional Based on Context */
img {
    max-width: 100%;
    height: auto;
}

/* Ensure Forms Are Print-Friendly */
input, textarea, select {
    border: 1px solid #000;
    padding: 5px;
}

/* Page Breaks for Multi-Page Content */
.page-break {
    page-break-before: always;
}

/* Avoid breaking images and other important content */
img, blockquote, pre {
    page-break-inside: avoid;
}

/* Additional Styling for Print Version */
@media print {
    /* Adjust font size for print */
    body {
        font-size: 10pt;
    }

    /* Print-friendly margins and padding */
    main {
        padding: 12pt;
    }

    /* Adjust heading sizes */
    h1 {
        font-size: 24pt;
    }
    h2 {
        font-size: 18pt;
    }
    h3 {
        font-size: 14pt;
    }

    /* Ensure all text is black for better readability */
    * {
        color: #000 !important;
        background-color: #fff !important;
    }

    /* Avoid breaking tables and long content across pages */
    table, pre, blockquote {
        page-break-inside: avoid;
    }
}
