/* HayaCV page styles: the 12 CV templates. Kept to flat colours, borders and radii so the PDF matches the screen exactly. */
.cvp-page{position:relative;background:#fff;color:#1f2937;font-family:var(--ff);font-size:var(--fs);line-height:1.45;display:flex;flex-direction:column;overflow:hidden;box-sizing:border-box;text-align:start;-webkit-font-smoothing:antialiased}
.cvp-page *{box-sizing:border-box}
.cvp-page h1,.cvp-page h3,.cvp-page p{margin:0}
.cvp-page a{color:inherit;text-decoration:none}
.cvp-page b{font-weight:700}
.cvp-body{flex:1;min-height:0;display:flex}
.cvp-col{height:100%;overflow:hidden;min-width:0}
.cvp-main{flex:1;padding:calc(42px*var(--mg)) calc(46px*var(--mg)) calc(30px*var(--mg))}
.has-side .cvp-side{width:33%;flex:none;padding:calc(38px*var(--mg)) calc(24px*var(--mg)) calc(26px*var(--mg))}
.side-right .cvp-body{flex-direction:row-reverse}
.has-side .cvp-main{padding-left:calc(30px*var(--mg));padding-right:calc(34px*var(--mg))}
.side-right .cvp-main{padding-left:calc(42px*var(--mg));padding-right:calc(28px*var(--mg))}
.cvp-page.cont .cvp-main,.cvp-page.cont .cvp-side{padding-top:calc(34px*var(--mg))}

/* blocks */
.blk{padding-bottom:calc(9px*var(--sp))}
.blk-head{padding-bottom:calc(16px*var(--sp))}
.sec-t{font-size:1.02em;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--ac);margin:calc(8px*var(--sp)) 0 calc(9px*var(--sp));padding-bottom:5px;border-bottom:1.5px solid var(--ac-soft)}
.hd{display:flex;align-items:center;gap:20px}
.hd-tx{min-width:0}
.nm{font-size:2.55em;line-height:1.08;font-weight:700;color:#0f172a;letter-spacing:-.01em;word-break:break-word}
.jt{font-size:1.14em;color:var(--ac);margin-top:5px;font-weight:600}
.cl{display:flex;flex-wrap:wrap;gap:5px 16px;margin-top:12px;color:#475569;font-size:.9em}
.cl-i{display:inline-flex;gap:5px;align-items:center}
.ic{width:1.05em;height:1.05em;flex:none}
.ct-i{display:flex;gap:9px;align-items:flex-start;margin-bottom:7px;font-size:.92em;word-break:break-word}
.ct-i .ic{margin-top:.18em;color:var(--ac)}
.ent{position:relative}
.ent-h{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.ent-t{font-weight:700;color:#0f172a}
.ent-d{font-size:.86em;color:#64748b;white-space:nowrap;flex:none}
.ent-s{color:#475569;font-size:.94em;margin-top:1px}
.ent-s .loc{color:#64748b}
.ent-ul{margin-top:4px}
.li{display:flex;gap:7px;margin-top:2px}
.bul{color:var(--ac);flex:none;line-height:inherit}
.lt{min-width:0}
.ent-p{margin-top:3px}
.sum .ent-p{margin-top:0}
.tl-dot{display:none}
.sk-i{margin-bottom:8px;font-size:.94em}
.sk-n{display:block}
.bar{display:block;height:5px;background:#e2e8f0;border-radius:3px;margin-top:4px;overflow:hidden}
.bar i{display:block;height:5px;background:var(--ac);border-radius:3px}
.dots{display:flex;gap:4px;margin-top:4px}
.dots i{display:block;width:8px;height:8px;border-radius:4px;background:#e2e8f0}
.dots i.on{background:var(--ac)}
.lvl{display:block;font-size:.86em;color:#64748b}
.sk-text .sk-i,.sk-dots .sk-i{display:block}
.tags{display:flex;flex-wrap:wrap;gap:6px}
.tag{padding:3px 10px;border-radius:999px;background:var(--ac-tint);color:#1e293b;font-size:.88em;line-height:1.5}
.mi{margin-bottom:8px;font-size:.94em}
.mi-t{font-weight:700}
.mi-s{font-size:.9em;color:#64748b}
.ref{margin-bottom:9px}
.ref-c{font-size:.9em;color:#64748b}
.refs{display:grid;grid-template-columns:1fr 1fr;gap:4px 20px}
.has-side .cvp-side .refs{grid-template-columns:1fr}
.ph{width:112px;height:112px;overflow:hidden;flex:none;background:#e2e8f0}
.ph img{width:100%;height:100%;object-fit:cover;display:block}
.ph-circle{border-radius:56px}
.ph-rounded{border-radius:16px}
.ph-square{border-radius:0}
.qr{display:flex;align-items:center;gap:10px;margin-top:4px}
.qr img{width:74px;height:74px;display:block;background:#fff;padding:4px;border-radius:6px}
.qr span{font-size:.8em;color:#64748b;max-width:90px;line-height:1.3}
.pgno{position:absolute;bottom:12px;inset-inline-end:22px;font-size:9px;color:#94a3b8;font-family:Arial,sans-serif}
.plain .ic{display:none}
.plain .cl{gap:4px 14px}

/* side backgrounds */
.sbg-accent .cvp-side{background:var(--ac);color:#fff}
.sbg-accent .cvp-side .sec-t{color:#fff;border-bottom-color:var(--ac-line)}
.sbg-accent .cvp-side .nm,.sbg-accent .cvp-side .ent-t,.sbg-accent .cvp-side .mi-t{color:#fff}
.sbg-accent .cvp-side .jt{color:var(--on-ac-soft)}
.sbg-accent .cvp-side .ct-i .ic{color:#fff}
.sbg-accent .cvp-side .bar{background:var(--ac-line)}
.sbg-accent .cvp-side .bar i,.sbg-accent .cvp-side .dots i.on{background:#fff}
.sbg-accent .cvp-side .dots i{background:var(--ac-line)}
.sbg-accent .cvp-side .tag{background:var(--ac-line);color:#fff}
.sbg-accent .cvp-side .lvl,.sbg-accent .cvp-side .mi-s,.sbg-accent .cvp-side .ent-s,.sbg-accent .cvp-side .qr span,.sbg-accent .cvp-side .ref-c{color:var(--on-ac-soft)}
.sbg-tint .cvp-side{background:var(--ac-tint)}
.sbg-tint .cvp-side .tag{background:#fff}
.sbg-gray .cvp-side{background:#f1f5f9}
.sbg-gray .cvp-side .tag{background:#fff}

/* cover letters */
.letter .cvp-main{padding:calc(48px*var(--mg)) calc(58px*var(--mg)) calc(36px*var(--mg));line-height:1.6}
.letter .blk{padding-bottom:calc(13px*var(--sp))}
.letter .blk-head{padding-bottom:calc(22px*var(--sp));margin-bottom:calc(10px*var(--sp));border-bottom:2px solid var(--ac-soft)}
.letter.lh-center .hd{flex-direction:column;text-align:center;gap:6px}
.letter.lh-center .cl{justify-content:center}
.letter .cvp-band .cl{color:#fff}
.letter .cvp-band .ic{color:#fff}
.letter.t-aurora .blk-head,.letter.t-graduate .blk-head,.letter.t-tech .blk-head,.letter.t-compact .blk-head{border-bottom:4px solid var(--ac)}
.letter.t-bold .cvp-main{border-inline-start:14px solid var(--ac)}
.letter.t-classic .blk-head,.letter.t-ats .blk-head{border-bottom:1px solid #0f172a}
.lt-date{color:#475569}
.lt-sub{font-weight:700;color:#0f172a}
.lt-sign{font-weight:700;margin-top:30px;color:#0f172a}
.cl .ic{color:var(--ac)}
.cvp-band .cl{color:#fff}

/* 1 Aurora */
.t-aurora .cvp-side .blk-head{text-align:center}
.t-aurora .cvp-side .ph{width:124px;height:124px;border-radius:62px;margin:0 auto 16px;border:4px solid var(--ac-line)}
.t-aurora .cvp-side .ph-rounded{border-radius:18px}
.t-aurora .cvp-side .ph-square{border-radius:0}
.t-aurora .cvp-side .nm{font-size:1.85em}
.t-aurora .cvp-side .jt{margin-top:6px;font-size:1em}
.t-aurora .cvp-main .sec-t{border-bottom:2px solid var(--ac-soft)}

/* 2 Classic */
.t-classic .hd{flex-direction:column;text-align:center;gap:10px}
.t-classic .nm{font-size:2.4em;letter-spacing:.01em}
.t-classic .jt{color:#334155;font-weight:400;font-style:italic}
.t-classic .cl{justify-content:center;color:#334155}
.t-classic .blk-head{border-bottom:1px solid #0f172a;padding-bottom:calc(14px*var(--sp));margin-bottom:calc(6px*var(--sp))}
.t-classic .sec-t{color:#0f172a;letter-spacing:.1em;border-bottom:1px solid #94a3b8;font-size:1em}
.t-classic .bul{color:#0f172a}
.t-classic .ent-d{color:#334155;font-style:italic}

/* 3 Minimal */
.t-minimal .nm{font-weight:400;font-size:2.7em;letter-spacing:-.02em}
.t-minimal .jt{color:#475569;font-weight:400}
.t-minimal .sec-t{border:0;padding:0;font-size:.82em;letter-spacing:.24em;color:var(--ac);margin-top:calc(14px*var(--sp))}
.t-minimal .blk-head{padding-bottom:calc(10px*var(--sp))}
.t-minimal .bul{color:#94a3b8}

/* 4 Executive (band + right column) */
.cvp-band{padding:calc(32px*var(--mg)) calc(46px*var(--mg)) calc(28px*var(--mg));flex:none}
.t-executive .cvp-band{background:var(--ac);color:#fff}
.t-executive .cvp-band .nm{color:#fff}
.t-executive .cvp-band .jt{color:var(--on-ac-soft);font-weight:400}
.t-executive .cvp-band .ph{width:104px;height:104px;border:3px solid var(--ac-line)}
.t-executive .cvp-band .ph-circle{border-radius:52px}
.t-executive .cvp-main .sec-t{border-bottom:2px solid var(--ac)}
.t-executive .cvp-side .sec-t{border-bottom:1.5px solid #cbd5e1;color:var(--ac)}

/* 5 Tech */
.t-tech .nm{color:var(--ac)}
.t-tech .jt{color:#334155}
.t-tech .sec-t{border-bottom:0;border-inline-start:4px solid var(--ac);padding:1px 0 1px 9px;letter-spacing:.1em;color:#0f172a}
.t-tech .cvp-side .sec-t{border-inline-start-color:var(--ac);color:var(--ac)}

/* 6 Creative */
.t-creative .cvp-band{background:var(--ac);color:#fff;padding-bottom:calc(30px*var(--mg))}
.t-creative .cvp-band .nm{color:#fff;font-size:2.8em}
.t-creative .cvp-band .jt{color:var(--on-ac-soft)}
.t-creative .cvp-band .cl{color:#fff}
.t-creative .cvp-band .ph{width:118px;height:118px;border:5px solid #fff}
.t-creative .cvp-band .ph-circle{border-radius:59px}
.t-creative .sec-t{display:inline-block;background:var(--ac-tint);color:var(--ac-dark);padding:4px 12px;border:0;border-radius:6px;letter-spacing:.1em}
.t-creative .cvp-band .ic{color:#fff}

/* 7 Timeline */
.t-timeline .nm{font-size:2.6em}
.t-timeline .blk-experience .ent,.t-timeline .blk-education .ent,.t-timeline .blk-volunteer .ent,.t-timeline .blk-projects .ent{border-inline-start:2px solid var(--ac-soft);padding-inline-start:18px;padding-bottom:2px}
.t-timeline .tl-dot{display:block;position:absolute;inset-inline-start:-7px;top:.3em;width:12px;height:12px;border-radius:6px;background:#fff;border:3px solid var(--ac)}
.t-timeline .sec-t{border-bottom:0;padding-bottom:0}
.t-timeline .blk-head{border-bottom:3px solid var(--ac);padding-bottom:calc(16px*var(--sp));margin-bottom:calc(6px*var(--sp))}

/* 8 Elegant */
.t-elegant .hd{flex-direction:column;text-align:center;gap:8px}
.t-elegant .nm{font-weight:400;font-size:2.6em;letter-spacing:.04em;color:var(--ac)}
.t-elegant .jt{color:#475569;font-weight:400;letter-spacing:.2em;text-transform:uppercase;font-size:.9em}
.t-elegant .cl{justify-content:center}
.t-elegant .sec-t{text-align:center;border-top:1px solid var(--ac-soft);border-bottom:1px solid var(--ac-soft);padding:5px 0;letter-spacing:.3em;font-weight:400;font-size:.9em}
.t-elegant .bul{color:var(--ac)}

/* 9 Compact */
.t-compact{font-size:calc(var(--fs)*.93)}
.t-compact .cvp-side{border-inline-end:1px solid #e2e8f0}
.t-compact .nm{font-size:2.2em}
.t-compact .sec-t{font-size:.92em;border-bottom-width:1px}
.t-compact .blk{padding-bottom:calc(7px*var(--sp))}

/* 10 Bold */
.t-bold .cvp-main{border-inline-start:14px solid var(--ac)}
.t-bold .nm{text-transform:uppercase;font-size:3.1em;line-height:.98;letter-spacing:.01em}
.t-bold .jt{font-size:1.25em}
.t-bold .sec-t{font-size:1.25em;letter-spacing:.06em;border-bottom:3px solid #0f172a;color:#0f172a}
.t-bold .bul{color:var(--ac)}

/* 11 Graduate */
.t-graduate .cvp-side .blk-head{text-align:center}
.t-graduate .cvp-side .ph{margin:0 auto 14px;width:118px;height:118px;border:4px solid #fff}
.t-graduate .cvp-side .ph-circle{border-radius:59px}
.t-graduate .cvp-side .nm{font-size:1.8em}
.t-graduate .sec-t{border-bottom:0;padding-bottom:0;position:relative}
.t-graduate .cvp-main .sec-t{border-bottom:2px dotted var(--ac-soft);padding-bottom:5px}

/* 12 ATS Pro */
.t-ats{color:#111827}
.t-ats .nm{font-size:2.3em;color:#111827}
.t-ats .jt{color:#111827;font-weight:400}
.t-ats .cl{color:#111827}
.t-ats .sec-t{color:#111827;border-bottom:1px solid #111827;letter-spacing:.06em}
.t-ats .bul{color:#111827}
.t-ats .ent-d,.t-ats .ent-s,.t-ats .ent-s .loc{color:#374151}
