/* cmsms stylesheet: Print modified: Thursday, November 20, 2025 3:42:59 PM */
/* =======================================
   Base Print Styles
======================================= */

body {
    color: #000 !important;          /* print in black */
    background-color: #fff !important;
    font-family: Arial, sans-serif;
    border: 0 !important;
}

/* Remove width constraints in print */
div#content,
div#main {
    display: block !important;
    width: 100% !important;
    border: 0 !important;
    padding: 1em !important;
}

/* Avoid image wrapping issues */
img {
    float: none;
}

/* =======================================
   Hide UI Elements for Print
======================================= */

.navlist,
.menu-toggle,
#mobile-menu,
.hero,
.hero-img,
.name-box {
    display: none !important;
}

/* =======================================
   Layout Elements
======================================= */

.biography-grid {
    width: 100%;
}

.name-portrait {
    display: inline;
    float: right;
}

h2 {
    color: #002d56;
    margin-bottom: 0.6rem;
    display: block;
    font-weight: 400;
    font-size: 1.2em;
}

h3 {
    font-weight: 500;
    font-size: 1.1em;
}

/* =======================================
   Striped Tables
======================================= */

table.striped {
    border-collapse: collapse;
    padding: 0;
    line-height: 5px;
}

table.striped tr {
    border-collapse: collapse;
    padding: 0;
    line-height: 1;
}

table.striped td {
    padding: 0.7rem 0.5rem;
    border-collapse: collapse;
    line-height: 1;
}

/* Default layout */
.qual-grid,
.resume-grid,
.biography-grid {
    grid-template-columns: 1fr;
}

/* =======================================
   Print Layout
======================================= */
@media print {

    /* 2-column layout for qualifications & biography */
    .qual-grid,
    .biography-grid {
        grid-template-columns: 1fr 1fr !important;
    }

    /* Resume grid → 2 columns */
    .resume-grid {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 1rem !important;
        width: 100% !important;
    }

    /* Prevent card splitting across pages */
    .card {
        break-inside: avoid;
        page-break-inside: avoid;
        margin: 0 0 1rem 0 !important;
        padding: 0 !important;
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1) !important;
    }

    .card img {
        width: 100% !important;
        height: auto !important;
        max-height: 180px !important;
        object-fit: cover !important;
    }

    /* Card content */
    .card-body {
        padding: 0.5rem 1rem 1rem !important;
        font-style: normal;
    }

    .card-body h3 {
        color: #002d56;
        margin: 0;
        padding: 0;
        display: inline;
    }

    .card-body .date {
        display: inline;
        margin-left: 15px;
    }

    /* Details and statistics tables */
    .details,
    .statistics {
        width: 100%;
        border-collapse: collapse;
        margin-top: 0.5rem;
        font-size: 0.95rem;
    }

    .details td,
    .statistics td {
        padding: 4px 8px;
        vertical-align: middle;
    }

    .details tr td:first-child {
        width: 34%;
        padding: 6px 0 0 4px;
    }

    .statistics tr td:first-child {
        width: 70%;
        padding: 6px 0;
    }

    .details tr:nth-child(even),
    .statistics tr:nth-child(even) {
        background-color: #f4f8fc;
    }

    .statistics td + td {
        text-align: right;
    }

    /* Top card wrapper */
    .top-card {
        background: #fff;
        border-radius: 10px;
        margin-bottom: 2rem;
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
    }

    /* Card links */
    .card a {
        color: #002d56;
        text-decoration: none;
    }

    /* Fix navbar in print */
    .navbar {
        position: static !important;
        top: auto !important;
        left: auto !important;
        width: 100% !important;
        z-index: 9999;
    }

    body {
        margin-top: auto !important; /* ensures navbar doesn’t overlap */
    }
}
