/* =========================================================
   CLEAN ATS — Reference Design 5
   Header matched to ATS header JS
========================================================= */

.rsb-resume-ats{
    width:210mm;
    min-height:297mm;
    box-sizing:border-box;
    background:#fff;
    color:#1c2735;
    font-family:Arial,Helvetica,sans-serif;
    padding:13mm 15mm 14mm;
    box-shadow:0 10px 35px rgba(0,0,0,.14);
}


/* =========================================================
   ATS HEADER
========================================================= */

.rsb-resume-ats .ats-header{
    width:100%;
    padding:0 0 5mm;
    border-bottom:2px solid #18395d;
    box-sizing:border-box;
}

.rsb-resume-ats .ats-header-main{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    width:100%;
    gap:8mm;
}


/* LEFT SIDE */

.rsb-resume-ats .ats-header-left{
    flex:1 1 auto;
    min-width:0;
}

.rsb-resume-ats .ats-header h1{
    margin:0;
    padding:0;
    color:#121c29;
    font-size:26px;
    line-height:1.1;
    font-weight:700;
    letter-spacing:.2px;
}

.rsb-resume-ats .ats-job{
    margin-top:2.5mm;
    color:#18395d;
    font-size:13px;
    line-height:1.35;
    font-weight:400;
}

.rsb-resume-ats .ats-job strong{
    color:#18395d;
    font-weight:700;
}


/* RIGHT CONTACT AREA */

.rsb-resume-ats .ats-header-contact{
    flex:0 0 auto;
    max-width:58%;
    min-width:55mm;
    padding-left:7mm;
    border-left:1px solid #b8bec6;
    box-sizing:border-box;
}

.rsb-resume-ats .ats-header-contact .gjs-contact{
    margin:0;
    padding:0;
    font-size:10px;
    line-height:1.7;
    color:#1c2735;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:1mm;
}

.rsb-resume-ats .ats-header-contact .gjs-contact > *{
    margin:0;
}


/* Prevent contact information from becoming one long
   horizontal line */

.rsb-resume-ats .ats-header-contact .gjs-contact a,
.rsb-resume-ats .ats-header-contact .gjs-contact span,
.rsb-resume-ats .ats-header-contact .gjs-contact div{
    display:block;
    white-space:normal;
}


/* =========================================================
   MAIN SECTIONS
========================================================= */

.rsb-resume-ats > .gjs-section{
    margin:5mm 0 0;
}

.rsb-resume-ats > .gjs-section .gjs-section-title{
    background:#e9edf2;
    padding:2.5mm 3mm;
    margin:0 0 2mm;
    border:0;
    box-sizing:border-box;
}

.rsb-resume-ats > .gjs-section .gjs-title-icon{
    display:none;
}

.rsb-resume-ats > .gjs-section .gjs-section-title h2{
    margin:0;
    padding:0;
    font-size:14px;
    line-height:1.2;
    color:#18395d;
    font-weight:700;
}


/* SECTION CONTENT */

.rsb-resume-ats > .gjs-section p{
    font-size:10.8px;
    line-height:1.6;
    margin:0 0 2mm;
    color:#1c2735;
}


/* =========================================================
   WORK EXPERIENCE
========================================================= */

.rsb-resume-ats > .gjs-section .gjs-exp-item{
    position:relative;
    margin-bottom:4mm;
    padding-left:5mm;
}

.rsb-resume-ats > .gjs-section .gjs-exp-item:before{
    background:#18395d;
}

.rsb-resume-ats > .gjs-section .gjs-dates{
    background:transparent;
    padding:0;
    font-weight:700;
    color:#1c2735;
}


/* =========================================================
   EDUCATION TABLE
========================================================= */

.rsb-resume-ats > .gjs-section .gjs-table-wrap{
    width:100%;
    overflow:visible;
    margin-top:1mm;
}

.rsb-resume-ats > .gjs-section .gjs-table-wrap table{
    width:100%;
    border-collapse:collapse;
    table-layout:fixed;
}

.rsb-resume-ats > .gjs-section .gjs-table-wrap th,
.rsb-resume-ats > .gjs-section .gjs-table-wrap td{
    border:1px solid #b9bec5;
    padding:2.2mm 2mm;
    font-size:10px;
    line-height:1.3;
    vertical-align:middle;
    color:#1c2735;
}

.rsb-resume-ats > .gjs-section .gjs-table-wrap th{
    background:#f2f4f6;
    font-weight:700;
    color:#121c29;
}


/* =========================================================
   SKILLS
========================================================= */

.rsb-resume-ats > .gjs-section .gjs-skill-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    column-gap:12mm;
    row-gap:1mm;
}

.rsb-resume-ats > .gjs-section .gjs-skill-grid > *{
    min-width:0;
}

.rsb-resume-ats > .gjs-section .gjs-skill-grid li{
    font-size:10.5px;
    line-height:1.45;
    margin:0;
}


/* =========================================================
   LANGUAGES
========================================================= */

.rsb-resume-ats > .gjs-section .gjs-language-list{
    display:flex;
    flex-wrap:wrap;
    gap:10px 30px;
}

.rsb-resume-ats > .gjs-section .gjs-language-list > *{
    font-size:10.5px;
    line-height:1.4;
}


/* =========================================================
   ATS — PASSPORT + VISA HORIZONTAL GRID
========================================================= */

.rsb-resume-ats .ats-detail-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:4mm;
    width:100%;
    margin-top:4mm;
}

.rsb-resume-ats .ats-detail-half{
    min-width:0;
}

.rsb-resume-ats .ats-detail-half .gjs-section{
    margin:0 !important;
    width:100%;
}

.rsb-resume-ats .ats-detail-half .gjs-section-title{
    margin-bottom:1.5mm !important;
}

.rsb-resume-ats .ats-detail-half .gjs-row{
    font-size:9.5px;
    line-height:1.3;
    margin-bottom:1mm;
}

.rsb-resume-ats .ats-detail-half .gjs-row:last-child{
    margin-bottom:0;
}

/* =========================================================
   DECLARATION / SIGNATURE
========================================================= */

.rsb-resume-ats .gjs-signature{
    margin-top:8mm;
}

.rsb-resume-ats .gjs-sign > span{
    width:130px;
}


/* =========================================================
   PRINT — ATS A4 SINGLE PAGE
========================================================= */

@media print {

    @page {
        size: A4 portrait;
        margin: 0;
    }

    html,
    body {
        width: 210mm !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #fff !important;
    }

    body {
        overflow: hidden !important;
    }

    /* Hide everything except the ATS resume */
    body > * {
        visibility: hidden !important;
    }

    .rsb-resume-ats,
    .rsb-resume-ats * {
        visibility: visible !important;
    }

    /* =====================================================
       ATS RESUME
    ===================================================== */

    .rsb-resume-ats {
        width: 210mm !important;
        min-width: 210mm !important;
        max-width: 210mm !important;

        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        margin: 0 !important;

        padding: 9mm 11mm 8mm !important;

        box-sizing: border-box !important;

        box-shadow: none !important;

        background: #fff !important;

        overflow: visible !important;

        page-break-before: avoid !important;
        page-break-after: avoid !important;

        break-before: avoid !important;
        break-after: avoid !important;
    }


    /* =====================================================
       HEADER
    ===================================================== */

    .rsb-resume-ats .ats-header {
        padding-bottom: 3.5mm !important;

        border-bottom: 2px solid #18395d !important;

        break-after: avoid !important;
        page-break-after: avoid !important;
    }


    /* =====================================================
       MAIN SECTIONS
    ===================================================== */

    .rsb-resume-ats > .gjs-section {
        margin-top: 3mm !important;

        break-before: avoid !important;
        page-break-before: avoid !important;

        break-after: avoid !important;
        page-break-after: avoid !important;
    }


    /* Section headings */

    .rsb-resume-ats > .gjs-section .gjs-section-title {
        padding: 1.6mm 2.5mm !important;

        margin-bottom: 1.5mm !important;

        background: #e9edf2 !important;

        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;

        break-after: avoid !important;
        page-break-after: avoid !important;
    }


    /* =====================================================
       SUMMARY
    ===================================================== */

    .rsb-resume-ats > .gjs-section p {
        font-size: 9px !important;
        line-height: 1.3 !important;

        margin-bottom: 1.5mm !important;
    }


    /* =====================================================
       EXPERIENCE
    ===================================================== */

    .rsb-resume-ats .gjs-exp-item {
        margin-bottom: 2mm !important;

        break-inside: avoid !important;
        page-break-inside: avoid !important;
    }


    /* =====================================================
       EDUCATION
    ===================================================== */

    .rsb-resume-ats .gjs-table-wrap {
        margin-top: .5mm !important;

        break-inside: avoid !important;
        page-break-inside: avoid !important;
    }

    .rsb-resume-ats .gjs-table-wrap table {
        width: 100% !important;

        break-inside: avoid !important;
        page-break-inside: avoid !important;
    }

    .rsb-resume-ats .gjs-table-wrap th,
    .rsb-resume-ats .gjs-table-wrap td {
        padding: 1.2mm 1.5mm !important;

        font-size: 8.7px !important;

        line-height: 1.1 !important;
    }

    .rsb-resume-ats .gjs-table-wrap th {
        background: #f2f4f6 !important;

        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }


    /* =====================================================
       SKILLS
    ===================================================== */

    .rsb-resume-ats .gjs-skill-grid {
        column-gap: 7mm !important;
        row-gap: .5mm !important;
    }

    .rsb-resume-ats .gjs-skill-grid li {
        font-size: 9.5px !important;
        line-height: 1.25 !important;
    }


    /* =====================================================
       LANGUAGES
    ===================================================== */

    .rsb-resume-ats .gjs-language-list {
        gap: 3px 18px !important;
    }

    .rsb-resume-ats .gjs-language-list > * {
        font-size: 9.5px !important;
        line-height: 1.2 !important;
    }


    /* =====================================================
       PASSPORT + VISA
       MUST STAY HORIZONTAL
    ===================================================== */

    .rsb-resume-ats .ats-detail-grid {
        display: grid !important;

        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;

        column-gap: 4mm !important;

        width: 100% !important;

        margin-top: 2.5mm !important;

        break-inside: avoid !important;
        page-break-inside: avoid !important;
    }

    .rsb-resume-ats .ats-detail-half {
        width: auto !important;

        min-width: 0 !important;

        margin: 0 !important;

        display: block !important;

        break-inside: avoid !important;
        page-break-inside: avoid !important;
    }

    .rsb-resume-ats .ats-detail-half .gjs-section {
        width: 100% !important;

        margin: 0 !important;

        break-inside: avoid !important;
        page-break-inside: avoid !important;
    }

    .rsb-resume-ats .ats-detail-half .gjs-section-title {
        margin-bottom: 1mm !important;

        padding: 1.5mm 2.5mm !important;
    }

    .rsb-resume-ats .ats-detail-half .gjs-row {
        font-size: 8.8px !important;

        line-height: 1.2 !important;

        margin-bottom: .7mm !important;

        break-inside: avoid !important;
        page-break-inside: avoid !important;
    }


    /* =====================================================
       DECLARATION
    ===================================================== */

    .rsb-resume-ats .gjs-signature {
        margin-top: 3mm !important;

        break-inside: avoid !important;
        page-break-inside: avoid !important;
    }


    /* =====================================================
       IMPORTANT:
       DO NOT APPLY break-inside:avoid TO EVERY ELEMENT
    ===================================================== */

    .rsb-resume-ats > * {
        page-break-before: avoid !important;
        page-break-after: avoid !important;
    }

}