/*
 * GulfJobsy — Classic Professional
 * Reference: Classic Professional design 1
 * A4 portrait, clean Gulf CV, two-column structure.
 */

.rsb-resume-classic{
  width:210mm;
  max-width:210mm;
  min-height:297mm;
  height:auto;
  margin:0 auto;
  padding:0 0 8mm;
  box-sizing:border-box;
  background:#fff;
  color:#17212d;
  font-family:Arial,Helvetica,sans-serif;
  box-shadow:0 10px 35px rgba(0,0,0,.18);
  overflow:visible;
}

.classic-page{
  position:relative;
  width:100%;
  min-height:297mm;
  box-sizing:border-box;
}

/* ===== Header (Exact Match to Design) ===== */

.classic-header{
  min-height:58mm;
  padding:8mm 8mm 6mm;
  display:grid;
  grid-template-columns:39mm minmax(0,1fr);
  gap:9mm;
  border-top:4mm solid #174a7b;
  position:relative;
  box-sizing:border-box;
  background:#fff;
}

.classic-header:after{
  content:"";
  position:absolute;
  right:0;
  top:-4mm; /* Matches the 4mm border-top thickness */
  width:0;
  height:0;
  border-left:18mm solid transparent;
  border-bottom:4mm solid #ffffff; /* Creates the clean diagonal corner cutout over the border */
}

.classic-photo-wrap{
  width:39mm;
  height:47mm;
  box-sizing:border-box;
}

.classic-photo{
  width:39mm;
  height:47mm;
  border:1.5px solid #cfd7e1;
  border-radius:5mm;
  padding:1.2mm;
  background:#fff;
  box-sizing:border-box;
}

.classic-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:3.8mm;
  display:block;
}

.classic-head-main{
  min-width:0;
  padding-top:1mm;
}

.classic-head-main h1{
  margin:0;
  color:#143c66;
  font-size:24px;
  line-height:1.08;
  letter-spacing:.2px;
  text-transform:uppercase;
  word-break:break-word;
}

.classic-applied{
  margin-top:4mm;
  color:#244d76;
  font-size:13px;
  line-height:1.25;
  font-weight:600;
}

.classic-applied strong{
  font-size:15px;
}

.classic-header .gjs-contact{
  font-size:10px;
  margin-top:5mm;
  gap:9px;
}

.classic-header .gjs-contact-sep{
  display:none;
}


/* ===== Main two-column body ===== */

.classic-columns{
  display:grid;
  grid-template-columns:36% 64%;
  padding:0 5mm;
  box-sizing:border-box;
  align-items:start;
}

.classic-side{
  min-width:0;
  padding:0 3mm 0 0;
}

.classic-main{
  min-width:0;
  padding:0 3mm 0 5mm;
  border-left:1px solid #c9d3df;
}


/* ===== Sidebar sections ===== */

.classic-side .gjs-section{
  background:#f2f5f8;
  border-radius:2mm;
  padding:3mm;
  margin:0 0 5.5mm;
  box-sizing:border-box;
  overflow:visible;
}

.classic-side .gjs-section-title{
  background:linear-gradient(90deg,#d8e6f1,#f2f5f8);
  margin:-3mm -3mm 2.5mm;
  padding:2.5mm 3mm;
  border-radius:2mm 2mm 0 0;
  box-sizing:border-box;
}

.classic-side .gjs-section-title h2{
  font-size:12px;
  line-height:1.15;
  color:#132e4e;
  text-transform:uppercase;
  letter-spacing:.15px;
}

.classic-side .gjs-title-icon{
  background:#174a7b;
  color:#fff;
  width:25px;
  height:25px;
  flex-basis:25px!important;
  border-radius:6px;
}

.classic-side .gjs-title-icon .gjs-icon{
  width:16px;
  height:16px;
}

.classic-side .gjs-row{
  grid-template-columns:minmax(0,43%) 14px minmax(0,1fr)!important;
  font-size:9.2px;
  line-height:1.3;
  padding:4px 0;
}

.classic-side .gjs-row span{
  font-weight:700;
}

.classic-side .gjs-row b{
  text-align:center;
}

.classic-side .gjs-row strong{
  font-weight:500;
  word-break:break-word;
}


/* ===== Main sections ===== */

.classic-main .gjs-section{
  margin:0 0 5mm;
  box-sizing:border-box;
}

.classic-main .gjs-section-title{
  background:linear-gradient(90deg,#d8e7f3,#fff);
  padding:2.5mm 3mm;
  border-radius:1.8mm;
  box-sizing:border-box;
}

.classic-main .gjs-section-title h2{
  font-size:13px;
  line-height:1.15;
  color:#132e4e;
  text-transform:uppercase;
  letter-spacing:.15px;
}

.classic-main .gjs-title-icon{
  background:#174a7b;
  color:#fff;
  width:25px;
  height:25px;
  flex-basis:25px!important;
  border-radius:6px;
}

.classic-main .gjs-title-icon .gjs-icon{
  width:16px;
  height:16px;
}

.classic-main .gjs-section-body{
  min-width:0;
}

.classic-main .gjs-section p{
  font-size:10.3px;
  line-height:1.48;
  margin:0;
  overflow-wrap:anywhere;
}


/* ===== Experience ===== */

.classic-main .gjs-exp-item{
  padding-left:16px;
  margin-bottom:16px;
}

.classic-main .gjs-exp-item:last-child{
  margin-bottom:0;
}

.classic-main .gjs-exp-item:before{
  background:#174a7b;
}

.classic-main .gjs-exp-head{
  gap:10px;
}

.classic-main .gjs-exp-head h3{
  font-size:13.5px;
  line-height:1.15;
}

.classic-main .gjs-company{
  font-size:11px;
  line-height:1.3;
}

.classic-main .gjs-dates{
  background:#e5eef6;
  color:#263b52;
  border-radius:6px;
  padding:4px 7px;
  font-size:10px;
}

.classic-main .gjs-exp-item p{
  font-size:10.3px;
  line-height:1.45;
  margin-top:4px;
}


/* ===== Education ===== */

.classic-main .gjs-table-wrap{
  width:100%;
  overflow:hidden;
  border-radius:5px;
}

.classic-main .gjs-table-wrap table{
  width:100%;
  table-layout:fixed;
}

.classic-main .gjs-table-wrap th,
.classic-main .gjs-table-wrap td{
  padding:5.5px 6px;
  font-size:9.5px;
  word-break:break-word;
  vertical-align:top;
}

.classic-main .gjs-table-wrap th{
  background:#eef3f7;
}


/* ===== Skills / Languages ===== */

.classic-main .gjs-skill-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:4px 20px;
}

.classic-main .gjs-skill-grid>span,
.classic-main .gjs-language-list>span{
  font-size:10.3px;
  line-height:1.35;
}

.classic-main .gjs-language-list{
  gap:10px 25px;
}


/* ===== Declaration ===== */

.classic-main .gjs-signature{
  margin-top:7mm;
  gap:35px;
}

.classic-main .gjs-sign strong{
  color:#173b61;
}


/* ===== Never show empty resume section ===== */

.classic-main .gjs-section:empty,
.classic-side .gjs-section:empty{
  display:none;
}


/* ===== Long content must grow naturally ===== */

.classic-page,
.classic-columns,
.classic-main,
.classic-side,
.classic-main .gjs-section,
.classic-side .gjs-section{
  overflow:visible;
}


/* =========================================================
    PRINT / SAVE PDF
========================================================= */

@media print{

  @page{
    size:A4 portrait;
    margin:10mm;
  }

  html,
  body{
    width:210mm!important;
    min-width:210mm!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
  }

  body{
    overflow:visible!important;
  }

  body > *{
    visibility:hidden!important;
  }

  .rsb-resume-classic,
  .rsb-resume-classic *{
    visibility:visible!important;
  }

  .rsb-resume-classic{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:auto!important;
    height:auto!important;
    max-height:none!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
    background:#fff!important;
    box-shadow:none!important;
    overflow:visible!important;
  }

  .rsb-resume-classic .classic-page{
    width:100%!important;
    min-height:auto!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  .rsb-resume-classic .classic-header{
    min-height:auto!important;
    padding:8mm 8mm 6mm!important;
    grid-template-columns:39mm minmax(0,1fr)!important;
    gap:9mm!important;
    box-sizing:border-box!important;
    border-top:4mm solid #174a7b!important;
    background:#fff!important;
    
    break-inside:avoid!important;
    page-break-inside:avoid!important;

    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }

  .rsb-resume-classic .classic-header:after{
    display:block!important;
    top:-4mm!important;
    border-left:18mm solid transparent!important;
    border-bottom:4mm solid #ffffff!important;

    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }

  .rsb-resume-classic .classic-photo-wrap{
    width:39mm!important;
    height:47mm!important;
  }

  .rsb-resume-classic .classic-photo{
    width:39mm!important;
    height:47mm!important;
  }

  .rsb-resume-classic .classic-columns{
    display:grid!important;
    grid-template-columns:36% 64%!important;
    width:100%!important;
    padding:0 5mm!important;
    box-sizing:border-box!important;
    align-items:start!important;
    overflow:visible!important;
  }

  .rsb-resume-classic .classic-side{
    min-width:0!important;
    padding:0 3mm 0 0!important;
    overflow:visible!important;
  }

  .rsb-resume-classic .classic-main{
    min-width:0!important;
    padding:0 3mm 0 5mm!important;
    border-left:1px solid #c9d3df!important;
    overflow:visible!important;
  }

  .rsb-resume-classic .classic-side .gjs-section{
    background:#f2f5f8!important;
    margin:0 0 5.5mm!important;
    padding:3mm!important;
    overflow:visible!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;

    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }

  .rsb-resume-classic .classic-side .gjs-section-title{
    background:linear-gradient(90deg,#d8e6f1,#f2f5f8)!important;
    margin:-3mm -3mm 2.5mm!important;
    padding:2.5mm 3mm!important;

    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }

  .rsb-resume-classic .classic-side .gjs-title-icon,
  .rsb-resume-classic .classic-main .gjs-title-icon{
    background:#174a7b!important;
    color:#fff!important;

    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }

  .rsb-resume-classic .classic-main .gjs-section{
    margin:0 0 5mm!important;
    box-sizing:border-box!important;
    break-inside:auto!important;
    page-break-inside:auto!important;
  }

  .rsb-resume-classic .classic-main .gjs-section-title{
    break-after:avoid!important;
    page-break-after:avoid!important;

    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }

  .rsb-resume-classic .classic-main .gjs-exp-item{
    margin-bottom:16px!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }

  .rsb-resume-classic .classic-main .gjs-exp-item:last-child{
    margin-bottom:0!important;
  }

  .rsb-resume-classic .classic-main .gjs-table-wrap{
    width:100%!important;
    overflow:visible!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }

  .rsb-resume-classic .classic-main .gjs-table-wrap table{
    width:100%!important;
    table-layout:fixed!important;
  }

  .rsb-resume-classic .classic-main .gjs-table-wrap th,
  .rsb-resume-classic .classic-main .gjs-table-wrap td{
    padding:5.5px 6px!important;
    font-size:9.5px!important;
    word-break:break-word!important;
  }

  .rsb-resume-classic .classic-main .gjs-skill-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:4px 20px!important;
  }

  .rsb-resume-classic .classic-main .gjs-language-list{
    gap:10px 25px!important;
  }

  .rsb-resume-classic .classic-main .gjs-signature{
    margin-top:7mm!important;
    break-inside:avoid!important;
    page-break-inside:avoid!important;
  }

  .rsb-resume-classic,
  .rsb-resume-classic .classic-page,
  .rsb-resume-classic .classic-columns,
  .rsb-resume-classic .classic-side,
  .rsb-resume-classic .classic-main{
    overflow:visible!important;
  }

  .rsb-resume-classic{
    box-shadow:none!important;
  }

  .rsb-resume-classic .classic-side .gjs-section,
  .rsb-resume-classic .classic-side .gjs-section-title,
  .rsb-resume-classic .classic-main .gjs-section-title,
  .rsb-resume-classic .classic-main .gjs-dates,
  .rsb-resume-classic .classic-main .gjs-table-wrap th{
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }
}


/* ===== Mobile ===== */

@media(max-width:620px){
  .rsb-preview-content .rsb-resume-classic{
    margin:0 auto;
  }
}