﻿/* =========================
   Screen (site theme)
   ========================= */

.resume-header {
    color: var(--hbo-color-header2);
}

.resume-main-divider {
    border-top-width: 3px;
}

/* Photo + personal block */
.personal-data-row {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    flex-wrap: wrap;
}

.personal-data-image {
    width: clamp(200px, 28vw, 340px);
    height: auto;
    border-radius: 12px;
    flex: 0 0 auto; /* don’t stretch */
}

.personal-data {
    flex: 1 1 320px; /* grow, but allow it to shrink and wrap */
    min-width: 260px; /* prevents awkward squeeze */
}

/* On very narrow phones, stack and center the photo */
@media (max-width: 600px) {
    .personal-data-row {
        flex-direction: column;
    }

    .personal-data-image {
        width: 100%;
        max-width: 280px;
    }
}

/* Tidy lists */
.personal-data ul {
    margin: .25rem 0 0 1rem;
    padding: 0;
}

.personal-data li {
    margin: .15rem 0;
}

/* Experience rows */
.corporate-experience-entry {
    display: grid;
    grid-template-columns: 1fr auto;
    column-gap: 16px;
    row-gap: 4px;
    align-items: flex-start;
    padding: 10px 0;
}

.corporate-experience-entry-location {
    grid-column: 1 / -1;
    color: var(--mud-palette-text-secondary);
}

.corporate-experience-entry-date {
    opacity: 0.85;
}

/* Certifications row */
.certification-entry {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}

/* Optional: 3-column layout helper for the Languages / Soft Skills / Hobbies grid */
.traits-grid {
    /* on screen we let MudGrid handle it; print overrides below will enforce 3 cols */
}


/* =========================
   PRINT (paper palette)
   ========================= */
@media print {
    /* Show only the resume area */
    body * {
        visibility: hidden;
    }

    #resume-print, #resume-print * {
        visibility: visible;
    }

    /* CRITICAL: keep the resume in normal flow so it paginates */
    #resume-print {
        position: static !important; /* was absolute */
        left: auto !important;
        top: auto !important;
        width: auto !important;
        max-width: none !important;
        overflow: visible !important;
        margin: 0 !important;
    }

    /* Hide chrome */
    .no-print, .mud-appbar, .site-footer {
        display: none !important;
    }

    /* Page setup */
    @page {
        size: A4;
        margin: 12mm 12mm 14mm;
    }

    html, body {
        height: auto !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
        background: #fff !important;
    }

    /* Neutral print palette (override Mud variables) */
    :root {
        --print-text: #111;
        --print-muted: #555;
        --print-accent: #2d5bd1; /* single source of truth */
        --print-accent-light: #8ea9f3;
        --print-divider: #e2e2e2;
    }

    body, .mud-theme-default, .mud-theme-dark, .mud-theme-light {
        --mud-palette-background: #fff;
        --mud-palette-surface: #fff;
        --mud-palette-text-primary: var(--print-text);
        --mud-palette-text-secondary: var(--print-muted);
        --mud-palette-primary: var(--print-accent);
        --mud-palette-divider: var(--print-divider);
        --mud-palette-appbar-background: #fff;
        --mud-palette-appbar-text: var(--print-text);
    }

    /* Let containers expand on paper; remove shadows */
    .resume-page, .mud-paper, .mud-card {
        background: #fff !important;
        color: var(--print-text) !important;
        box-shadow: none !important;
    }

    .mud-container, .mud-container-maxwidth-lg, .mud-container-maxwidth-false {
        max-width: none !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .mud-main-content, .mud-layout {
        overflow: visible !important;
    }

    /* Headings / links / dividers */
    .resume-header {
        color: var(--print-text) !important;
    }

    a, .mud-link {
        color: var(--print-accent) !important;
        text-decoration: underline;
    }

    .resume-main-divider {
        border-top-width: 3px !important;
        border-top-style: solid !important;
        border-top-color: var(--print-accent) !important;
    }

    .mud-divider {
        border-top: 1px solid var(--print-accent-light) !important;
    }

    /* Dates / locations muted */
    .corporate-experience-entry-date,
    .corporate-experience-entry-location {
        color: var(--print-muted) !important;
    }

    /* Pagination hints (don’t overuse or pages won’t break) */
    .corporate-experience-entry,
    .certification-entry,
    .personal-data {
        break-inside: avoid;
    }

    h2, .resume-header {
        break-after: avoid;
    }

    /* Lock the three mini-columns into one row on paper (optional) */
    .traits-grid {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 8px;
    }

        .traits-grid .mud-item {
            width: auto !important;
            flex: initial !important;
        }

    /* Slightly smaller image on paper */
    .personal-data-image {
        width: 40mm;
        height: auto;
        border-radius: 8px;
    }

    .personal-data-row {
        gap: 10px;
        align-items: flex-start;
    }
}

