/* ============ Font ============ */
@import url('https://fonts.googleapis.com/css2?family=Noto+Kufi+Arabic:wght@100..900&display=swap');
body, .wpcf7-form { font-family: 'Noto Kufi Arabic', sans-serif !important; }

/* ============ Container & Step ============ */
#om-wizard { max-width: 820px; margin: 24px auto; }
#om-wizard .step {
  margin: 1rem 0; padding: 1.2rem;
  border: 1px solid #e5e7eb; border-radius: 12px; background: #fff;
}

/* ============ Headings ============ */
#om-wizard h2, #om-wizard h3 { text-align: center; margin: 0 0 1rem; font-weight: 700; }

/* ============ Grid (2 cols / 1 col) ============ */
#om-wizard .grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
#om-wizard .grid2 .span2 { grid-column: span 2; }
@media (max-width:700px){
  #om-wizard .grid2 { grid-template-columns: 1fr; }
  #om-wizard .grid2 .span2 { grid-column: span 1; }
}

/* ============ Fields ============ */
#om-wizard .field label { display: block; font-weight: 500; margin-bottom: 3px; }
#om-wizard input[type="text"],
#om-wizard input[type="email"],
#om-wizard input[type="tel"],
#om-wizard input[type="number"],
#om-wizard input[type="date"],
#om-wizard select,
#om-wizard textarea{
  width: 100% !important; max-width: 100% !important; box-sizing: border-box;
  padding: 10px 12px; border: 1px solid #cbd5e1; border-radius: 8px; background: #fff; box-shadow: none;
}
#om-wizard ::placeholder { color: #94a3b8; }

/* ============ NAV (Back/Next/Submit) ============ */

#om-wizard .wizard-nav p,
#om-wizard .nav p { display: contents !important; margin: 0 !important; }
#om-wizard .wizard-nav br,
#om-wizard .nav br { display: none !important; }

/* الحاوية */
#om-wizard .wizard-nav,
#om-wizard .nav{
  display: flex !important;
  justify-content: center !important;   /* بالنص */
  align-items: center !important;
  width: 100%;
  margin-top: 12px;
}

/* صف الأزرار */
#om-wizard .wizard-nav .btns,
#om-wizard .nav .btns{
  display: inline-flex !important;
  gap: 12px !important;
  align-items: center;
  justify-content: center;
}

#om-wizard .wizard-nav > :not(.btns),
#om-wizard .nav > :not(.btns){
  display: inline-flex; gap: 12px; align-items: center;
}

#om-wizard .wizard-nav button,
#om-wizard .wizard-nav input[type="submit"],
#om-wizard .nav button,
#om-wizard .nav input[type="submit"],
.wpcf7 form input.wpcf7-submit{
  display: inline-flex !important;
  align-items: center; justify-content: center;
  width: auto !important; min-width: 118px;
  padding: .7rem 1.1rem;
  border: 0; border-radius: 10px;
  background: #0b1220; color: #fff;
  font-weight: 600; cursor: pointer; text-align: center;
  white-space: nowrap;   
}
#om-wizard .wizard-nav button:hover,
#om-wizard .wizard-nav input[type="submit"]:hover,
#om-wizard .nav button:hover,
#om-wizard .nav input[type="submit"]:hover{ filter: brightness(1.05); }

/* أسهم خفيفة */
#om-wizard .prev-step::before { content: "← "; font-weight: 700; }
#om-wizard .next-step::after  { content: " →"; font-weight: 700; }

/* ============ Conditional ============ */
#om-wizard .conditional { margin: .5rem 0 0; padding: .5rem 0 0; }

/* ============ CF7 validation ============ */
.wpcf7 form .wpcf7-not-valid-tip { color: #b91c1c; font-size: 16px;font-weight:700; }
.wpcf7 form .wpcf7-response-output { border-color: #2563eb; }

/* ============ Checkboxes ============ */
#om-wizard .wpcf7-checkbox .wpcf7-list-item{
  display: inline-flex; align-items: center; gap: .4rem; margin-inline-end: 1rem;
}
#om-wizard .reasons-block .wpcf7-list-item{ display: block; margin: .4rem 0; }

/* ============ Terms ============ */
#om-wizard .terms-field{ margin: 1rem 0; }
#om-wizard .terms-field label{ display: flex; align-items: center; gap: .5rem; }

/* ============ Helpers ============ */
#om-wizard .muted{ color:#6b7280; font-size:1rem; margin-top:-.4rem; }
#om-wizard .muted.small{ font-size:.9rem; margin-top:.25rem; }
#om-wizard .grid2.tight{ gap:10px; }
#om-wizard .hint{ color:#6b7280; font-weight:600; }

/* ============ Table-like blocks ============ */
#om-wizard .ce-block{ display:grid; gap:.5rem; margin:.5rem 0 1rem; }
#om-wizard .ce-head, #om-wizard .ce-row{
  display:grid; grid-template-columns:2fr 1.5fr 1.2fr; gap:.5rem; align-items:center;
}
#om-wizard .ce-head{ font-weight:700; }

#om-wizard .honors-block{ display:grid; gap:.5rem; }
#om-wizard .hon-head, #om-wizard .hon-row{
  display:grid; grid-template-columns:1.5fr 1.2fr .8fr 2fr; gap:.5rem; align-items:center;
}
#om-wizard .hon-head{ font-weight:700; }

#om-wizard .lang-table{ display:grid; gap:.5rem; margin:.5rem 0 1rem; }
#om-wizard .lang-head, #om-wizard .lang-row{
  display:grid; grid-template-columns:1.2fr 1fr 1fr 1fr 1fr; gap:.5rem; align-items:center;
}
#om-wizard .lang-head{ font-weight:700; }

@media (max-width:700px){
  #om-wizard .ce-head, #om-wizard .ce-row{ grid-template-columns:1fr; }
  #om-wizard .hon-head, #om-wizard .hon-row{ grid-template-columns:1fr; }
  #om-wizard .lang-head{ display:none; }
  #om-wizard .lang-row{ grid-template-columns:1fr; }
}
/* شكل بلوك القبول */
#om-wizard .terms-field { margin: 1rem 0; }
#om-wizard .terms-field input[type="checkbox"]{
  width: 18px; height: 18px;
  accent-color: #2563eb; /* أزرق جميل للعلامة */
  margin-inline-end: .5rem;
}

#om-wizard .wizard-nav.final .btns{
  flex-direction: column-reverse !important;         /* Back فوق / Send تحت */
  gap: 10px !important;
}

#om-wizard .wizard-nav.final input[type="submit"]{
  background: #1e3d84 !important; /* أزرق */
  min-width: 220px;               /* أعرض */
  padding: .9rem 1.4rem;          /* أطول */
  font-size: 1rem;
}

/* لو بدك Back أصغر شوية من Send */
#om-wizard .wizard-nav.final .prev-step{
  opacity: .95;
}
/* إخفاء الصفوف الإضافية افتراضياً */
#om-wizard .is-hidden{ display:none; }

/* زر + Add language */
#om-wizard .add-lang{
  margin-top: 6px;
  background: #0b1220;
  color: #fff;
  border: 0;
  border-radius: 10px;
  padding: .5rem .9rem;
  font-weight: 600;
  cursor: pointer;
}
#om-wizard .add-lang:disabled{
  opacity:.6; cursor:not-allowed;
}
/* جدول المراجع (References) */
#om-wizard .refs-table{ display:grid; gap:.5rem; margin:.5rem 0 1rem; }
#om-wizard .refs-head, #om-wizard .refs-row{
  display:grid; grid-template-columns:1.3fr 1.2fr 1.4fr 1fr; gap:.5rem; align-items:center;
}
#om-wizard .refs-head{ font-weight:700; }

@media (max-width:700px){
  #om-wizard .refs-head{ display:none; }
  #om-wizard .refs-row{ grid-template-columns:1fr; }
}

/* ملاحظة قانونية */
#om-wizard .legal-note{
  margin:10px 0 6px; padding:10px 12px;
  background:#f8fafc; border:1px solid #e5e7eb; border-radius:8px;
  color:#334155; font-size:.95rem; line-height:1.5;
}

#om-wizard .wizard-nav{ flex-wrap:wrap !important; }   
#om-wizard .submit-wrap{ display:flex; justify-content:center; margin-top:8px; }

#om-wizard .primary-submit, 
#om-wizard input.wpcf7-submit.primary-submit{
  display:inline-flex !important;
  align-items:center; justify-content:center;
  width: 100% !important;
  max-width: 300px !important;
  padding: 1rem 1.6rem !important;
  border:0; border-radius: 8px;
  background: #1e3d84; color:#fff; font-weight:700; letter-spacing:.3px;
  box-shadow:0 6px 14px rgba(37,99,235,.25);
  cursor:pointer;
}
#om-wizard .primary-submit:hover{ filter:brightness(1.05); }

#om-wizard .wizard-nav .prev-step{
  background:#0b1220; color:#fff; border-radius:10px; padding:.7rem 1.1rem; min-width:118px;
}

.wpcf7 form .wpcf7-not-valid-tip{ 
  display:block; 
  margin-top:4px; 
  color:#b91c1c; 
  font-size:.85rem; 
}
.wpcf7 form .wpcf7-not-valid{
  border-color:#b91c1c !important;
}
/* ==== Progress Bar (robust) ==== */
.om-progress { margin: 6px 0 14px; }
.om-progress__bar{
  --p: 0%;                 /* النسبة تُحدَّث من السكربت */
  height: 8px;
  border-radius: 999px;
  overflow: hidden;

  background: linear-gradient(to right, #2563eb var(--p), #e5e7eb 0);
  position: relative;
}

.om-progress__fill{
  position: absolute; inset: 0 auto 0 0;
  width: 0; height: 100%;
  background: #2563eb;
  transition: width .25s ease;
  border-radius: 999px;
}

.om-progress__label{
  margin-top:6px; font-weight:700; color:#1e3d84; font-size:.95rem;
}

.om-progress__steps{ display:none !important; }
.uni-head, .conted-head {
  display: grid;
  gap: 10px;
  font-weight: 600;
  margin-bottom: 8px;
}

.uni-row, .conted-row {
  display: grid;
  gap: 10px;
  margin-bottom: 10px;
}

/* أعمدة الجداول على الديسكتوب */
.uni-head, .uni-row { grid-template-columns: 1.2fr 0.9fr 1.1fr 0.8fr 1fr; }
.conted-head, .conted-row { grid-template-columns: 1fr 1fr 0.9fr 1.2fr; }

/* موبايل */
@media (max-width: 768px){
  .uni-head, .conted-head { display:none; }
  .uni-row, .conted-row { grid-template-columns: 1fr; }
}
/* شريط التقدم صغير وبالوسط + نقاط */
.om-progress{
  display:flex; flex-direction:column; align-items:center; gap:8px;
  margin: 8px auto 16px;
  max-width: 360px; /* أصغر */
}
.om-progress__bar{
  -p:0%;
  width: 100%;
  height: 6px;
  border-radius: 999px;
  overflow: hidden;
  position: relative;
  background: #e5e7eb;
}
.om-progress__bar::before{
  content:'';
  position:absolute; inset:0 auto 0 0;
  width: var(--p);
  background:#2563eb;
  border-radius: 999px;
  transition: width .25s ease;
}
.om-progress__fill{ display:none !important; } 
.om-progress__dots{
  display:flex; gap:8px; justify-content:center; align-items:center;
}
.om-progress__dots .om-dot{
  width:10px; height:10px; border-radius:50%;
  background:#cbd5e1; border:0; padding:0; cursor:pointer;
}
.om-progress__dots .om-dot.is-active{ background:#2563eb; }
.om-progress__dots .om-dot:focus{ outline: 2px solid #2563eb55; }

.uni-head > div { white-space: nowrap; }

.uni-head, .uni-row { grid-template-columns: 1.2fr .9fr 1.1fr 1.0fr 1fr; }

/* ✅ توحيد المسافة بين الليبل والحقل في كل الفورم */
#om-wizard .field label {
  margin-bottom: 6px !important;   /* تصغير المسافة تحت الليبل */
}

#om-wizard .field {
  margin-bottom: 4px !important; /* تقليل المسافة بين الفيلدات العمودية */
}

/* ✅ تقليل المسافات داخل الـsteps */
#om-wizard .step {
  padding: 1rem !important; /* بدل 1.2rem */
  margin: 0.8rem 0 !important;
}

/* ✅ ضبط الهوامش بين الأسئلة (Q1, Q2...) */
#om-wizard h4,
#om-wizard .field label strong,
#om-wizard .field label {
  margin-top: 0.2rem !important;
  margin-bottom: 0.2rem !important;
}

#om-wizard .wpcf7-checkbox .wpcf7-list-item {
  margin-inline-end: 0.6rem !important;
  gap: 0.25rem !important;
}

/* تقليل المسافة بين أسماء الأعمدة والحقول تحتها */
#om-wizard .uni-head,
#om-wizard .conted-head {
  margin-bottom: 3px !important;   
}

/* تقليل المسافة بين الصفوف */
#om-wizard .uni-row,
#om-wizard .conted-row {
  margin-bottom: 6px !important;  
  gap: 6px !important;             /* تقليل الفراغ الأفقي بين الحقول */
}

#om-wizard h4 + .uni-table,
#om-wizard h4 + .conted-table {
  margin-top: 2px !important;
}

/* تحسين محاذاة الحقول لتكون متقاربة أكثر عمودياً */
#om-wizard .uni-table input,
#om-wizard .uni-table select,
#om-wizard .conted-table input,
#om-wizard .conted-table select {
  padding-top: 6px !important;
  padding-bottom: 6px !important;
}
/* ==== تكبير سماكة شريط التقدم (Progress Bar) ==== */
.om-progress__bar {
  height: 10px !important;          
  border-radius: 999px;
}

.om-progress__bar::before {
  height: 10px !important;          
}

.om-progress__dots .om-dot {
  width: 12px !important;
  height: 12px !important;
}

/* =========================
   ✅ Overrides النهائية فقط للمطلوب
   ========================= */

/* 1) الملاحظة الحمراء: أكبر + بدون Bold */
.wpcf7 form .wpcf7-not-valid-tip{
  color:#b91c1c !important;
  font-size:16px !important;
  font-weight:400 !important; /* بدون Bold */
  line-height:1.4 !important;
  margin-top:4px !important;
}

/* 2) شريط التقدم: أعرض وبحدود واضحة */
.om-progress__bar{
  height:14px !important;             /* سماكة أوضح */
  border-radius:10px !important;
  background:#e5e7eb !important;
  border:2px solid #2563eb !important; /* حدود زرقاء واضحة */
  position:relative;
  overflow:hidden;
}
.om-progress__bar::before{
  content:"";
  position:absolute; inset:0 auto 0 0;
  width:var(--p);
  height:100% !important;
  background:#2563eb !important;
  transition:width .25s ease;
  border-radius:8px;
}



/*------------ عزل ستايلات الفورم عن غيره */
#om-activation {
  direction: rtl !important;
  text-align: right;
  max-width: 100%;   
}

/* شبكة الأعمدة */
#om-activation .contact-row {
  display: grid;
  grid-template-columns: repeat(6, 1fr); 
  gap: 15px;
  margin-bottom: 15px;
}

/* الأعمدة */
#om-activation .contact-col,
#om-activation .contact-col-2,
#om-activation .contact-col-4,
#om-activation .contact-col-6 {
  width: 100%;
}

#om-activation .contact-col { grid-column: span 3; }   /* كل حقل افتراضياً ياخد نصف الصف */
#om-activation .contact-col-2 { grid-column: span 2; }
#om-activation .contact-col-4 { grid-column: span 4; }
#om-activation .contact-col-6 { grid-column: span 6; } /* عرض كامل */

/* الحقول */
#om-activation .contact-inp,
#om-activation select.contact-inp,
#om-activation input[type="file"],
#om-activation input[type="email"],
#om-activation input[type="tel"],
#om-activation input[type="text"] {
  width: 100%;
  padding: .8rem 1rem;
  border: 1px solid #d0d5dd;
  border-radius: 8px;
  background: #fff;
  text-align: right;
  direction: rtl;
  font-size: 15px;
  box-sizing: border-box;
}

/* رفع الملفات */
#om-activation input[type="file"] {
  border: 2px dashed #ccc;
  padding: 20px;
  text-align: center;
  font-size: 14px;
  border-radius: 8px;
  grid-column: span 6; /* صندوق المرفقات ياخد عرض كامل */
}

/* زر الإرسال */
#om-activation .contact-submit {
  grid-column: span 6; /* زر الإرسال ياخد عرض كامل */
  width: 100%;
  padding: 1rem;
  border-radius: 10px;
  background: #0073aa;
  color: #fff;
  border: none;
  cursor: pointer;
  font-size: 16px;
}
#om-activation .contact-submit:hover {
  background: #005f87;
}