:root{
  --brand: #4f46e5;
  --brand-dark: #3730a3;
  --bg: #f4f5fb;
}
body{
  font-family:'Cairo', sans-serif;
  background: var(--bg);
}
.app-navbar{
  background: linear-gradient(90deg, var(--brand), var(--brand-dark));
}
.app-navbar .navbar-brand{ color:#fff; }
.app-footer{ color:#8a8fa3; }

.hero-panel{
  background: linear-gradient(120deg, var(--brand), #7c3aed);
  box-shadow: 0 20px 40px -15px rgba(79,70,229,.5);
}
.fw-black{ font-weight:900; }
.hero-icon{ font-size:9rem; opacity:.25; }

.alert-info-soft{
  background:#eef2ff; color:#3730a3; border:1px solid #c7d2fe;
  border-radius:14px; padding:16px 20px;
}

/* بطاقات لوحة التحكم */
.cv-card{ border-radius:18px; transition:.2s; }
.cv-card:hover{ transform:translateY(-4px); box-shadow:0 15px 30px -10px rgba(0,0,0,.15) !important; }
.cv-avatar{
  width:64px; height:64px; border-radius:50%; background:#eef0ff;
  display:flex; align-items:center; justify-content:center; overflow:hidden;
  font-size:28px; color:var(--brand);
}
.cv-avatar img{ width:100%; height:100%; object-fit:cover; }
.empty-state{ background:#fff; border-radius:20px; }

/* نموذج الإدخال */
.form-card{ background:#fff; border-radius:20px; box-shadow:0 10px 25px -12px rgba(0,0,0,.08); }
.lang-tabs .nav-link{ border-radius:30px; font-weight:700; margin-left:6px; }
.lang-tabs .nav-link.active{ background:var(--brand); color:#fff; }
.section-heading{ font-weight:800; color:var(--brand-dark); margin-top:6px; margin-bottom:10px; border-bottom:2px dashed #e0e0f0; padding-bottom:6px; }
.btn-add-row{ background:#eef0ff; color:var(--brand-dark); border:1px dashed var(--brand); border-radius:30px; }
.btn-add-row:hover{ background:var(--brand); color:#fff; }
.repeater-row .btn-remove-row{ border-radius:8px; }

.photo-preview{
  width:150px; height:150px; object-fit:cover; border-radius:50%;
  border:4px solid #eef0ff;
}

/* معرض القوالب */
.template-card{
  background:#fff; border-radius:18px; overflow:hidden; box-shadow:0 10px 22px -12px rgba(0,0,0,.12);
  transition:.2s;
}
.template-card:hover{ transform:translateY(-5px); box-shadow:0 18px 30px -12px rgba(0,0,0,.2); }
.template-thumb{ height:170px; background:#f2f2f7; padding:14px; }
.thumb-layout{ display:flex; height:100%; border-radius:8px; overflow:hidden; box-shadow:0 2px 8px rgba(0,0,0,.08); }
.thumb-side{ width:32%; background:var(--tprimary); }
.thumb-main{ flex:1; background:#fff; padding:10px; display:flex; flex-direction:column; gap:6px; }
.thumb-main span{ display:block; height:6px; background:#e5e7eb; border-radius:3px; }
.thumb-main span:first-child{ background:var(--tprimary); width:60%; }
.thumb-single-column .thumb-side{ display:none; }
.thumb-single-column .thumb-main{ padding-top:20px; border-top:4px solid var(--tprimary); }
.thumb-timeline .thumb-side{ width:100%; height:22%; }
.thumb-timeline{ flex-direction:column; }
.thumb-banner-top .thumb-side{ width:100%; height:30%; }
.thumb-banner-top{ flex-direction:column; }
.thumb-sidebar-right{ flex-direction:row-reverse; }

.ats-badge{ background:#dcfce7; color:#166534; font-weight:700; }

@media (max-width: 767px){
  .hero-panel{ padding:28px !important; }
  .contact-info i{ margin-left:6px; }
}
