/* Print stylesheet — loaded lazily via <link media="print">.
   Turns the homepage into a clean, single-column CV-style printout. */
@media print {
    @page {
        margin: 0.4in;
        size: letter;
    }

    html {
        scroll-behavior: auto;
    }

    body {
        background: white;
        color: black;
        font-family: 'Times New Roman', serif;
        line-height: 1.25;
        font-size: 9.3pt;
    }

    .navbar,
    .publications-footer,
    .social-links,
    .footer {
        display: none !important;
    }

    section,
    .hero,
    .publications {
        padding: 7px 0 !important;
        background: white !important;
    }

    main > section:not(.hero) {
        content-visibility: visible !important;
        contain-intrinsic-size: auto !important;
    }

    .container,
    .hero-container,
    .contact-content {
        width: 100% !important;
        max-width: none !important;
        display: block !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .hero {
        min-height: auto !important;
        display: block !important;
        border-bottom: 1px solid #d9d9d9;
        margin-bottom: 0.08in;
        padding-top: 0 !important;
    }

    .hero-content {
        max-width: none !important;
    }

    .hero-title {
        white-space: normal !important;
        font-size: 18pt !important;
        line-height: 1.05 !important;
        margin-bottom: 3pt !important;
    }

    .hero-title-cn {
        font-size: 0.9em !important;
    }

    .hero-subtitle {
        font-size: 10.5pt !important;
        margin-bottom: 3pt !important;
        color: #444 !important;
    }

    .hero-description {
        max-width: none !important;
        margin-bottom: 5pt !important;
        color: #333 !important;
    }

    .contact-item svg,
    .company-logo {
        display: none !important;
    }

    /* Kill the screen-only 8px section-body indent so all printed
       section bodies sit flush under their titles */
    .page-home main section:not(.flush) .container > *:not(.section-title) {
        margin-left: 0 !important;
    }

    .section-title {
        font-size: 12.5pt !important;
        margin-bottom: 5pt !important;
        break-after: avoid;
        page-break-after: avoid;
    }

    .section-title::after {
        width: 28px !important;
        margin-top: 3pt !important;
        background: #555 !important;
    }

    .timeline {
        gap: 4pt !important;
    }

    .timeline::before,
    .timeline-marker,
    .timeline-roles::before,
    .timeline-role::before {
        display: none !important;
    }

    .timeline-roles {
        padding-left: 0 !important;
        gap: 3pt !important;
    }

    .timeline-role-title {
        font-size: 10pt !important;
    }

    .timeline-item {
        padding-left: 0 !important;
    }

    .timeline-content,
    .publication-card,
    .software-card {
        padding: 3pt 0 !important;
        margin-bottom: 3pt !important;
        border-bottom: 1px solid #e3e3e3 !important;
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .contact-content > * {
        break-inside: avoid;
        page-break-inside: avoid;
        margin-bottom: 4pt !important;
    }

    .timeline-header {
        gap: 6pt !important;
    }

    .timeline-header h3,
    .publication-title,
    .software-header h3 {
        font-size: 10.5pt !important;
    }

    .publication-group-title {
        font-size: 11pt !important;
        color: #1d4a76 !important;
    }

    .timeline-date {
        color: #333 !important;
    }

    .venue-abbr {
        color: #1d4a76 !important;
    }

    .publications-grid {
        gap: 4pt !important;
    }

    .timeline-location,
    .publication-authors,
    .publication-venue-full,
    .timeline-description,
    .software-card p,
    .contact-item p {
        color: #444 !important;
    }

    .contact-item {
        margin-bottom: 3pt !important;
    }

    /* Keep GitHub links discoverable on a printed copy */
    .software-github {
        display: inline !important;
        width: auto !important;
        height: auto !important;
        border: 0 !important;
        color: #555 !important;
    }

    .software-github svg {
        display: none !important;
    }

    .software-github::after {
        content: " (" attr(href) ")" !important;
        color: #555 !important;
        font-size: 8.5pt !important;
        word-break: break-all;
    }
}
