html {
    scroll-behavior: smooth;
}

@media print {
    @page {
        size: A4;
        margin: 8mm 12mm;
        /* Optimized margins for A4 */
    }

    body {
        width: 100%;
        height: auto;
        margin: 0;
        padding: 0;
        background-color: white !important;
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
        font-size: 10.5pt;
        /* Standard readable size */
        line-height: 1.5;
        color: #1a1a1a;
    }

    /* Hide unneeded elements */
    .print-hidden {
        display: none !important;
    }

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

    .no-break {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    /* Reset Main container */
    main {
        box-shadow: none !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
    }

    /* Typography adjustments */
    h1 {
        font-size: 26px !important;
        line-height: 1.2 !important;
        margin-bottom: 0.25rem !important;
        color: #111 !important;
    }

    h2 {
        font-size: 16px !important;
        margin-top: 1.25rem !important;
        /* Reduced from 1.5rem */
        margin-bottom: 0.5rem !important;
        border-bottom: 2px solid #e5e7eb !important;
        /* Lighter border */
        padding-bottom: 0.25rem !important;
        color: #111 !important;
    }

    h3 {
        font-size: 13px !important;
        color: #333 !important;
        margin-bottom: 0.25rem !important;
    }

    p,
    li {
        font-size: 10.5pt !important;
        line-height: 1.5 !important;
    }

    /* Optimize lists for print to save horizontal space/look neat */
    ul {
        margin-left: 0 !important;
        padding-left: 1.25rem !important;
    }

    /* Make job headers cleaner */
    .text-gray-600 {
        color: #4b5563 !important;
    }

    /* Ensure links are identifiable in PDF */
    a {
        text-decoration: underline !important;
        text-underline-offset: 2px !important;
        color: #111 !important;
    }

    /* Hide scrollbars */
    ::-webkit-scrollbar {
        display: none;
    }

    /* Layout Grids */
    .print-grid-2 {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 1rem !important;
        /* Reduced gap */
        align-items: start !important;
    }

    /* Contact info layout */
    .contact-row {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 1rem !important;
    }

    /* Remove heavy backgrounds for print, keep borders */
    .bg-gray-50,
    .bg-gray-100 {
        background-color: transparent !important;
        border: 0px solid #e5e7eb !important;
    }

    /* Skills pills style for print */
    .print\:border {
        border: 1px solid #d1d5db !important;
    }

    /* Professional text alignment */
    p {
        text-align: left;
        /* Justify can cause weird gaps in narrow columns, Left is safer */
    }

    /* Reduce avatar size for print to save space */
    .print-avatar {
        width: 80px !important;
        height: 80px !important;
    }

    /* Hide common browser extension artifacts */
    grammarly-extension,
    .grammarly-extension,
    [data-grammarly-part],
    iframe[id^="grammarly"],
    div[data-grammarly-shadow-root] {
        display: none !important;
    }

    /* Hide Google Translate artifacts */
    .goog-te-banner-frame,
    .goog-tooltip,
    .goog-text-highlight {
        display: none !important;
    }

    font {
        background-color: transparent !important;
        box-shadow: none !important;
    }
}