/* ============================ v26 — قالب اجرایی حرفه‌ای رزومه ============================ */
/* جایگزین قالب کلاسیک قدیمی: ساختار کاغذی، ستون اطلاعات کم‌عرض و تایم‌لاین سازمانی. */
.cvdoc.t-cls { display:grid; direction:ltr; grid-template-columns:minmax(0,1fr) 27%; grid-template-rows:minmax(0,1fr) auto; grid-template-areas:"main side" "footer footer"; background:#fff; }
.cvdoc.t-cls .cvd-main { grid-area:main; order:unset; min-width:0; padding:34px 36px 26px; background:#fff; }
.cvdoc.t-cls .cvd-side { grid-area:side; order:unset; min-width:0; padding:27px 17px 22px; background:#f3f6f8; color:#172c42; border-left:1px solid #dbe3e9; }
.cvdoc.t-cls .cv-brand-strip { grid-area:footer; grid-column:auto; order:unset; margin:0; background:#fff; border-top:1px solid #dbe3e9; }
.cvdoc.t-cls[dir="rtl"] .cvd-main,.cvdoc.t-cls[dir="rtl"] .cvd-side,.cvdoc.t-cls[dir="rtl"] .cv-brand-strip { direction:rtl; text-align:right; }
.cvdoc.t-cls[dir="ltr"] .cvd-main,.cvdoc.t-cls[dir="ltr"] .cvd-side,.cvdoc.t-cls[dir="ltr"] .cv-brand-strip { direction:ltr; text-align:left; }
.tcls-main-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:0 0 25px; padding:0 0 15px; border-bottom:2px solid #e4eaf0; }
.tcls-main-head > div { display:grid; gap:3px; }.tcls-main-head span { color:var(--cv-accent,#0ea5e9); font-size:8.5px; font-weight:800; letter-spacing:.6px; }.tcls-main-head h2 { margin:0; color:var(--cv-heading,#0a2540); font-size:19px; line-height:1.25; }.tcls-main-head i { width:43px; height:4px; flex:0 0 auto; border-radius:99px; background:var(--cv-accent,#0ea5e9); }
.cvdoc.t-cls .cvd-side .cvd-photo { width:84px; height:84px; margin:0 auto 12px; border:3px solid #c8d5df; border-radius:12px; box-shadow:0 5px 13px rgba(15,39,66,.12); }
.cvdoc.t-cls .cvd-side h1 { margin:0 0 3px; color:#102d48; font-size:15px; text-align:right; line-height:1.45; }.cvdoc.t-cls .cvd-role { margin:0 0 13px; color:var(--cv-accent,#0277bd); font-size:9px; text-align:right; }
.cvdoc.t-cls .cvd-profile-details { margin:0 0 14px; padding:10px 0; border-color:#d4dee6; }.cvdoc.t-cls .cvd-profile-details h3 { color:#1a4b70; border-color:#d4dee6; font-size:9.5px; }.cvdoc.t-cls .cvd-profile-row { padding:3px 0; }.cvdoc.t-cls .cvd-profile-row > span,.cvdoc.t-cls .cvd-profile-job small { color:#718292; font-size:7.8px; }.cvdoc.t-cls .cvd-profile-row > b,.cvdoc.t-cls .cvd-profile-job b { color:#1d3449; font-size:9.3px; }.cvdoc.t-cls .cvd-profile-divider { background:#d4dee6; }
.cvdoc.t-cls .cvd-sec { margin:0 0 13px; }.cvdoc.t-cls .cvd-sec h3 { color:#1a4b70; border-color:#d4dee6; font-size:9.5px; }.cvdoc.t-cls .cvd-sname,.cvdoc.t-cls .cvd-cert-row { color:#263e53; font-size:9px; }.cvdoc.t-cls .cvd-meter { height:3px; background:#d7e1e8; }.cvdoc.t-cls .cvd-meter i { background:var(--cv-accent,#0ea5e9); }
.cvdoc.t-cls .cvd-msec { margin-bottom:22px; }.cvdoc.t-cls .cvd-msec h2 { margin:0 0 12px; color:#173a58; font-size:14px; }.cvdoc.t-cls .cvd-msec h2::before { width:4px; height:18px; background:var(--cv-accent,#0ea5e9); }
.cvdoc.t-cls .cvd-item { position:relative; margin:0 0 14px; padding:0 13px 12px; border-inline-start:2px solid #d6e1e8; }.cvdoc.t-cls .cvd-item::before { content:''; position:absolute; inset-inline-start:-5px; top:2px; width:8px; height:8px; border:2px solid #fff; border-radius:50%; background:var(--cv-accent,#0ea5e9); box-shadow:0 0 0 1px #9ab1c3; }.cvdoc.t-cls .cvd-it-t { color:#1c3248; font-size:12px; }.cvdoc.t-cls .cvd-it-o { color:#4f718e; font-size:9.7px; }.cvdoc.t-cls .cvd-it-d { color:#455d71; font-size:10px; line-height:2; }.cvdoc.t-cls .cvd-bio { color:#3c5368; font-size:10.5px; line-height:2.1; }
.cvdoc.t-cls .cv-brand-lockup { width:100%; align-items:flex-end; text-align:end; }.cvdoc.t-cls .cv-brand-strip small { width:auto; }.cvdoc.t-cls .cv-brand-mark { justify-content:flex-end; }
@media(max-width:600px) { .cvdoc.t-cls .cvd-main { padding:22px 20px; }.cvdoc.t-cls .cvd-side { padding:20px 12px; }.tcls-main-head { margin-bottom:17px; }.tcls-main-head h2 { font-size:16px; } }
