/* CV rendering: base + 15 templates. Variables are set inline by CVS.cvVars() */
.paper{background:#fff;box-shadow:0 2px 14px rgba(0,0,0,.28);margin:0 auto;position:relative;color:#1b1f27}
.paper>.cv{min-height:inherit}
.cv{font-family:var(--ff,Arial,sans-serif);font-size:var(--fs,10.5pt);line-height:var(--lh,1.35);color:#1b1f27;background:var(--wrapbg,#fff);padding:var(--padv,14mm) var(--padh,14mm);width:100%;box-sizing:border-box;text-align:left;overflow-wrap:anywhere;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.cv *{box-sizing:border-box}
.cv h1,.cv h2,.cv p,.cv ul,.cv dl,.cv dd,.cv dt{margin:0}
.cv a{color:inherit;text-decoration:none}
.cv mark.ph{background:#fff1a8;color:inherit;border-radius:2px;padding:0 .08em}
.cv-head{display:flex;align-items:center;gap:1em;margin-bottom:.9em}
.cv-head .hd-txt{flex:1;min-width:0}
.cv-head .photo{order:2;flex:none}
.photo{width:27mm;height:33mm;object-fit:cover;display:block}.ps-circle{border-radius:50%;width:29mm;height:29mm}.ps-square{border-radius:2px}
.name{font-size:2.2em;font-weight:700;line-height:1.1}
.cv-title{font-size:1.2em;color:var(--accent);margin-top:.15em}
.contact{margin-top:.4em;color:#333;font-size:.95em}.contact .ci{display:inline}.contact .sep{color:#999;white-space:pre}
.cv-sec{margin:0 0 1em}.cv-sec h2{font-size:1.08em;line-height:1.2;margin-bottom:.45em;break-after:avoid;page-break-after:avoid}
.item{margin:0 0 .7em;break-inside:avoid;page-break-inside:avoid}
.item-h{display:flex;justify-content:space-between;align-items:baseline;gap:1em}
.item-l{min-width:0}.it{font-weight:700;display:block}.io{display:block;color:#444;font-style:italic}.date{white-space:nowrap;color:#444;font-size:.95em;flex:none}
.idesc{margin-top:.2em}.extra{margin-top:.2em;color:#444;font-size:.95em}
.cv ul{padding-left:1.15em;margin-top:.25em}.cv li{margin:.12em 0}
.summary{text-align:left}
.skillrow{margin:0 0 .25em}.sg{font-weight:700}
.chips .sk{display:inline-block;padding:.1em .62em;margin:0 .3em .3em 0;border-radius:99px;background:var(--tint2);color:#14181f;font-size:.92em}.chips .sep{display:none}.chips .sg{display:block;margin-bottom:.15em}
.langs .lg{margin:0 0 .15em}.langs em{color:#555;font-style:normal}
.refs{display:grid;grid-template-columns:repeat(2,1fr);gap:.6em 1.2em}.ref{break-inside:avoid}
.pdl>div{display:flex;gap:.6em;margin:0 0 .15em}.pdl dt{font-weight:700;min-width:11em}.pdl dd{margin:0}
.declare{display:flex;justify-content:space-between;align-items:flex-end;margin-top:1.2em}.sline{width:44mm;height:11mm;border-bottom:1px solid #000;margin-bottom:.2em}.sign{text-align:center}
.edt,.pdt{width:100%;border-collapse:collapse}.edt th,.edt td,.pdt th,.pdt td{border:1px solid #b9c0ca;padding:.3em .5em;text-align:left;vertical-align:top;font-size:.96em}.edt th,.pdt th{background:#f0f3f7;font-weight:700}.pdt th{width:32%}
.hc-upper .cv-sec h2{text-transform:uppercase!important}.hc-title .cv-sec h2{text-transform:none!important;letter-spacing:0!important;font-variant:normal!important}

/* sidebar layouts */
.cv.lay-left,.cv.lay-right{display:grid;grid-template-columns:32% 1fr;padding:0}
.cv.lay-right{grid-template-columns:1fr 32%}.cv.lay-right .cv-side{order:2}
.lay-left .cv-side,.lay-right .cv-side{padding:var(--padv) 6mm}.lay-left .cv-main,.lay-right .cv-main{padding:var(--padv) var(--padh)}
.cv-side .photo{margin:0 auto 1em}.cv-side .item-h{display:block}.cv-side .date{display:block;opacity:.85}.cv-side .skillrow{margin-bottom:.45em}.cv-side .sg{display:block}
.cv-side .contact{margin:0;color:inherit;font-size:.95em}.cv-side .contact .ci{display:block;margin-bottom:.35em}
.cv-main .cv-head{display:block}.cv-main .cv-head .name{margin-bottom:.1em}
.cv-cols{display:grid;grid-template-columns:1fr 31%;gap:1.4em;align-items:start}.cv-cols .cv-side{border-left:1px solid #d3d9e1;padding-left:1em}.cv-cols .cv-side .item-h{display:block}.cv-cols .cv-side .date{display:block}

/* 1 classic */
.tpl-classic .cv-head{border-bottom:2px solid var(--accent);padding-bottom:.55em}
.tpl-classic .name{font-family:Georgia,"Times New Roman",serif;color:var(--accent);font-size:2.3em;letter-spacing:.01em}
.tpl-classic .cv-sec h2{font-family:Georgia,"Times New Roman",serif;color:var(--accent);text-transform:uppercase;letter-spacing:.07em;border-bottom:1px solid #c9cfd8;padding-bottom:.15em}
/* 2 modern */
.tpl-modern .cv-side{color:var(--onacc)}.tpl-modern .cv-side h2{color:var(--onacc);text-transform:uppercase;letter-spacing:.08em;font-size:.95em;border-bottom:1px solid currentColor;padding-bottom:.2em}
.tpl-modern .cv-side .io,.tpl-modern .cv-side .date,.tpl-modern .cv-side .extra,.tpl-modern .cv-side .langs em{color:inherit}
.tpl-modern .name{color:var(--accent);font-size:2.3em}.tpl-modern .cv-main .cv-sec h2{color:var(--accent);text-transform:uppercase;letter-spacing:.07em;border-bottom:2px solid var(--tint2);padding-bottom:.15em}
/* 3 executive */
.tpl-executive .cv-head{background:var(--dark);color:#fff;margin:calc(var(--padv)*-1) calc(var(--padh)*-1) 1.1em;padding:calc(var(--padv)*.8) var(--padh) .9em}
.tpl-executive .name{font-family:Georgia,"Times New Roman",serif;font-size:2.4em;color:#fff;letter-spacing:.02em}.tpl-executive .cv-title{color:var(--tint2)}.tpl-executive .contact{color:#e8edf3}.tpl-executive .contact .sep{color:#9fb0c4}
.tpl-executive .cv-sec h2{font-family:Georgia,"Times New Roman",serif;font-variant:small-caps;letter-spacing:.06em;font-size:1.2em;color:var(--dark);border-bottom:1.5px solid var(--accent);padding-bottom:.1em}
/* 4 compact */
.tpl-compact{font-size:calc(var(--fs,10.5pt)*.94);line-height:calc(var(--lh,1.35)*.94)}.tpl-compact .cv-head{margin-bottom:.6em}.tpl-compact .name{font-size:1.9em}.tpl-compact .cv-sec{margin-bottom:.65em}.tpl-compact .item{margin-bottom:.4em}
.tpl-compact .cv-sec h2{font-size:1em;text-transform:uppercase;letter-spacing:.06em;color:var(--accent);border-bottom:1px solid var(--accent);margin-bottom:.3em}.tpl-compact .item-l{display:flex;gap:.5em;flex-wrap:wrap;align-items:baseline}.tpl-compact .io{display:inline}.tpl-compact .io:before{content:"— "}
/* 5 ats plain */
.tpl-ats-plain .name{font-size:1.9em;color:#000}.tpl-ats-plain .cv-title{color:#000}.tpl-ats-plain .cv-sec h2{text-transform:uppercase;font-size:1em;color:#000;border-bottom:1px solid #000;letter-spacing:.04em}.tpl-ats-plain .io{font-style:normal}.tpl-ats-plain .contact{color:#000}
/* 6 two-column */
.tpl-two-column .cv-head{border-bottom:3px solid var(--accent);padding-bottom:.5em}.tpl-two-column .name{color:var(--accent)}.tpl-two-column .cv-sec h2{color:var(--accent);text-transform:uppercase;letter-spacing:.07em;font-size:.98em;border-bottom:1px solid var(--tint2)}
/* 7 timeline */
.tpl-timeline .name{color:var(--accent)}.tpl-timeline .cv-sec h2{color:var(--accent);text-transform:uppercase;letter-spacing:.07em;border-bottom:1px solid var(--tint2);padding-bottom:.15em}
.tpl-timeline .sec-experience .item,.tpl-timeline .sec-education .item,.tpl-timeline .sec-projects .item{position:relative;padding-left:1.2em;margin-left:.4em;border-left:2px solid var(--tint2)}
.tpl-timeline .sec-experience .item:before,.tpl-timeline .sec-education .item:before,.tpl-timeline .sec-projects .item:before{content:"";position:absolute;left:-.42em;top:.3em;width:.62em;height:.62em;border-radius:50%;background:var(--accent)}
/* 8 minimal */
.tpl-minimal .cv-head{flex-direction:column;text-align:center;border:0}.tpl-minimal .cv-head .photo{order:0}.tpl-minimal .name{font-weight:300;font-size:2.5em;letter-spacing:.04em}.tpl-minimal .cv-title{color:#555;letter-spacing:.08em;text-transform:uppercase;font-size:.95em}
.tpl-minimal .cv-sec{margin-bottom:1.25em}.tpl-minimal .cv-sec h2{font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#6b7280;font-size:.8em;border-top:1px solid #e3e6ea;padding-top:.6em}.tpl-minimal .io{font-style:normal}
/* 9 bold */
.tpl-bold .name{font-size:2.9em;font-weight:800;color:var(--accent);letter-spacing:-.02em;line-height:1}.tpl-bold .cv-title{font-weight:600;color:#222}
.tpl-bold .cv-sec h2{border-left:.38em solid var(--accent);background:var(--tint);padding:.18em .6em;text-transform:uppercase;letter-spacing:.06em;color:#14181f}
/* 10 corporate */
.tpl-corporate .cv-head{background:var(--accent);color:var(--onacc);margin:calc(var(--padv)*-1) calc(var(--padh)*-1) 1.1em;padding:calc(var(--padv)*.8) var(--padh) .9em}
.tpl-corporate .name,.tpl-corporate .cv-title,.tpl-corporate .contact,.tpl-corporate .contact .sep{color:var(--onacc)}.tpl-corporate .cv-title{opacity:.92}
.tpl-corporate .cv-sec h2{background:var(--tint);color:var(--dark);padding:.22em .6em;border-left:4px solid var(--accent);text-transform:uppercase;letter-spacing:.06em;font-size:1em}
/* 11 elegant */
.tpl-elegant .cv-head{flex-direction:column;text-align:center;border-bottom:3px double var(--accent);padding-bottom:.6em}.tpl-elegant .cv-head .photo{order:0}
.tpl-elegant .name,.tpl-elegant .cv-sec h2{font-family:Georgia,"Times New Roman",serif}.tpl-elegant .name{font-weight:400;font-size:2.5em;letter-spacing:.05em;color:var(--dark)}
.tpl-elegant .cv-sec h2{text-align:center;font-variant:small-caps;font-weight:600;letter-spacing:.12em;font-size:1.2em;color:var(--accent);border-bottom:1px solid var(--tint2);padding-bottom:.1em}
/* 12 fresher */
.tpl-fresher .name{color:var(--accent)}.tpl-fresher .cv-head{border-bottom:3px solid var(--accent);padding-bottom:.5em}
.tpl-fresher .cv-sec h2{display:inline-block;background:var(--accent);color:var(--onacc);padding:.12em .8em;border-radius:99px;font-size:.9em;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.55em}
/* 13 academic */
.tpl-academic .name{font-size:1.9em;font-weight:700}.tpl-academic .cv-title{color:#333}.tpl-academic .cv-sec h2{font-size:1.1em;color:#000;border-bottom:1px solid #000;letter-spacing:0}.tpl-academic .item{margin-bottom:.5em}.tpl-academic .io{font-style:normal}
/* 14 finance pro */
.tpl-finance-pro .cv-head{border-bottom:3px solid var(--accent);padding-bottom:.5em}.tpl-finance-pro .name{color:var(--dark);font-size:2.3em}
.tpl-finance-pro .cv-sec h2{color:var(--accent);text-transform:uppercase;letter-spacing:.07em;font-size:1em;border-bottom:1px solid var(--tint2)}
.hl-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:.7em;margin:.2em 0 1em}.tile{border:1px solid var(--tint2);background:var(--tint);border-radius:6px;padding:.5em .7em;break-inside:avoid}.tile .big{font-size:1.55em;font-weight:800;color:var(--accent);line-height:1.1}.tile .lbl{font-size:.82em;color:#333;margin-top:.15em}
/* 15 india classic */
.tpl-india-classic .cv-head{border-bottom:2px solid #222;padding-bottom:.5em}.tpl-india-classic .name{text-transform:uppercase;letter-spacing:.04em;font-size:1.9em}.tpl-india-classic .cv-title{color:#222}
.tpl-india-classic .cv-sec h2{background:#e9edf2;color:#111;border:1px solid #cdd4de;padding:.2em .6em;text-transform:uppercase;font-size:1em;letter-spacing:.04em}

/* printing: pages get top/bottom margins from table header/footer spacers */
#printRoot{display:none}
.letter-page{font-family:var(--ff,Arial,sans-serif);font-size:11pt;line-height:1.55;color:#111;padding:20mm;break-before:page;page-break-before:always;background:#fff}.letter-page p{margin:0 0 1em}
@media print{
  body.printing>*:not(#printRoot){display:none!important}
  body.printing #printRoot{display:block!important;position:static!important}
  body.printing{background:#fff!important;margin:0!important;padding:0!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .pgtable{width:100%;border-collapse:collapse;border-spacing:0}.pgtable td{padding:0;background:var(--wrapbg,#fff)}
  .pgtable thead{display:table-header-group}.pgtable tfoot{display:table-footer-group}
  .pgtable .cv{--padv:0mm!important}
  .pgtable+.letter-page:first-child,#printRoot>.letter-page:first-child{break-before:auto;page-break-before:auto}
}

.declare{break-inside:avoid;page-break-inside:avoid}.cv h2,.cv .sec-h{break-after:avoid;page-break-after:avoid}
