/* =============================================
   منصة مكين — app.css
   مستخلص من v5 التصميمي
   ============================================= */

/* ============================================================
   🎨 نظام التصميم — منصة مكين
   ============================================================ */
:root {
  /* الألوان الأساسية (مستخلصة من الشعار) */
  --ink-900: #0F1A3A;        /* كحلي أغمق — النصوص */
  --ink-800: #1E2A5E;        /* الكحلي الرئيسي (الشعار) */
  --ink-700: #283C78;        /* كحلي متوسط */
  --ink-600: #3A4E8A;        /* كحلي فاتح */
  --ink-100: #E8EAF2;        /* أزرق شاحب للخلفيات */
  --ink-50:  #F4F5F9;

  --teal-600: #16788A;       /* فيروزي عميق */
  /* شعار مكين الرسمي كـ data URI */
  --makeen-icon: url("data:image/png;base64,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");
  --makeen-full: url("data:image/png;base64,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");
  --teal-500: #1F8FA4;       /* فيروزي الشعار (للخلفيات فقط) */
  --teal-500-text: #125E6D;  /* استخدم هذا للنص على خلفية بيضاء (7.37:1 ✓) */
  --teal-400: #167E92;       /* مُحسَّن للنص على أبيض (4.74:1 ✓) */
  --teal-300: #3BA9BC;       /* فيروزي زخرفي — لا يُستخدم للنص */
  --teal-100: #D4EEF3;       /* خلفيات فيروزية خفيفة */
  --teal-50:  #EEF8FA;

  /* ألوان النظام */
  --success:   #1A7F5A;
  --success-bg: #E4F4EC;
  --warning:   #B76E00;
  --warning-bg: #FDF2E0;
  --danger:    #C03434;
  --danger-bg: #FBE7E7;

  /* المحايدات */
  --white:     #FFFFFF;
  --cream:     #FAFBFC;      /* الخلفية الرئيسية — كريمي بارد */
  --paper:     #FFFFFF;
  --gray-900:  #1A1D2E;
  --gray-800:  #2D3047;
  --gray-700:  #3D4055;      /* للنصوص الثانوية (9.5:1 ✓) */
  --gray-600:  #545A70;      /* للنصوص الرمادية الداكنة (6.83:1 ✓) */
  --gray-500:  #626A80;      /* للنص التوضيحي (5.39:1 ✓) */
  --gray-400:  #B4BAC8;
  --gray-300:  #D5D9E2;
  --gray-200:  #E5E8EE;
  --gray-100:  #F0F2F6;

  /* Typography */
  --font-body:    'IBM Plex Sans Arabic', system-ui, sans-serif;
  --font-display: 'Tajawal', 'IBM Plex Sans Arabic', system-ui, sans-serif;

  /* مقاييس */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 14px;
  --radius-xl: 20px;
  --radius-2xl: 28px;

  /* Shadows (هادئة وواقعية) */
  --shadow-xs: 0 1px 2px rgba(30, 42, 94, 0.04);
  --shadow-sm: 0 2px 4px rgba(30, 42, 94, 0.06), 0 1px 2px rgba(30, 42, 94, 0.04);
  --shadow-md: 0 4px 12px rgba(30, 42, 94, 0.08), 0 2px 4px rgba(30, 42, 94, 0.04);
  --shadow-lg: 0 12px 28px rgba(30, 42, 94, 0.10), 0 4px 8px rgba(30, 42, 94, 0.06);
  --shadow-xl: 0 24px 48px rgba(30, 42, 94, 0.12), 0 8px 16px rgba(30, 42, 94, 0.06);

  /* Motion */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
}

* { box-sizing: border-box; margin: 0; padding: 0; }

/* ============================================================
   ♿ إمكانية الوصول (Accessibility)
   ============================================================ */
/* مؤشر التركيز الموحّد لمستخدمي لوحة المفاتيح */
:focus { outline: none; }
:focus-visible {
  outline: 3px solid var(--teal-500);
  outline-offset: 3px;
  border-radius: 4px;
}
button:focus-visible,
.btn:focus-visible,
a:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
.tab:focus-visible,
.nav-link:focus-visible,
.quick-action:focus-visible,
.task-card:focus-visible,
.score-dot:focus-visible {
  outline: 3px solid var(--teal-500);
  outline-offset: 3px;
  box-shadow: 0 0 0 6px rgba(31, 143, 164, 0.15);
}

/* احترام تفضيل تقليل الحركة */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
  .page { animation: none !important; }
}

/* إخفاء التذييل العام في الصفحات الإدارية (الإدارة تستخدم تخطيط مختلف) */
/* يعتمد على class على body يُضبط من JS */
body.no-footer .site-footer,
body.no-footer .fab-support {
  display: none !important;
}
/* Fallback: يستخدم :has() في المتصفحات الحديثة */
body:has(#page-admin.active) .site-footer,
body:has(#page-login.active) .site-footer,
body:has(#page-register.active) .site-footer,
body:has(#page-forgot.active) .site-footer {
  display: none;
}

/* نص مخفي لقارئات الشاشة (sr-only) */
.sr-only {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* skip link للانتقال المباشر للمحتوى */
.skip-link {
  position: absolute;
  top: -40px; right: 0;
  background: var(--ink-900);
  color: white;
  padding: 12px 20px;
  z-index: 10000;
  text-decoration: none;
  font-weight: 600;
  border-radius: 0 0 8px 0;
}
.skip-link:focus { top: 0; }


html, body {
  font-family: var(--font-body);
  font-size: 15px;
  line-height: 1.6;
  color: var(--gray-900);
  background: var(--cream);
  direction: rtl;
  font-feature-settings: "kern", "liga", "calt";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  min-height: 100vh;
}

h1, h2, h3, h4 {
  font-family: var(--font-display);
  font-weight: 700;
  color: var(--ink-900);
  letter-spacing: -0.01em;
}

/* ============================================================
   🏗️  بنية التطبيق — شريط التنقل العلوي
   ============================================================ */
.page { display: none; min-height: 100vh; animation: fadeIn 0.4s var(--ease-out); }
.page.active { display: flex; flex-direction: column; }

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* --- Top Bar للمستخدمين المسجّلين --- */
.app-topbar {
  background: var(--white);
  border-bottom: 1px solid var(--gray-200);
  position: sticky; top: 0; z-index: 100;
  backdrop-filter: blur(8px);
  background: rgba(255, 255, 255, 0.95);
}

.app-topbar-inner {
  max-width: 1400px; margin: 0 auto;
  padding: 14px 32px;
  display: flex; align-items: center; justify-content: space-between;
  gap: 24px;
}

.brand-mark {
  display: flex; align-items: center; gap: 12px;
  text-decoration: none; color: var(--ink-800);
}

.brand-logo {
  width: 44px; height: 44px;
  border-radius: 11px;
  display: flex; align-items: center; justify-content: center;
  position: relative;
  overflow: visible;
  flex-shrink: 0;
  background-image: var(--makeen-icon, none);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  /* النص الاحتياطي «م» مخفي بمجرد تحميل الصورة */
  color: transparent;
  font-size: 0;
}
.brand-logo svg { width: 100%; height: 100%; display: block; }

/* شعار الجمعية الرسمي — نسخ بأحجام متعددة */
.makeen-mark { width: 44px; height: 44px; flex-shrink: 0; }
.makeen-mark-sm { width: 32px; height: 32px; }
.makeen-mark-lg { width: 56px; height: 56px; }
.makeen-mark-xl { width: 72px; height: 72px; }

.brand-name {
  font-family: var(--font-display);
  font-weight: 800; font-size: 20px;
  letter-spacing: -0.02em;
  line-height: 1;
}
.brand-tag {
  font-size: 11px; color: var(--teal-600);
  font-weight: 500;
  letter-spacing: 0.02em;
}

.topbar-nav {
  display: flex; align-items: center; gap: 4px;
  flex: 1; justify-content: center;
}

.nav-link {
  display: flex; align-items: center; gap: 8px;
  padding: 8px 14px;
  font-size: 14px; font-weight: 500;
  color: var(--gray-700);
  text-decoration: none;
  border-radius: 8px;
  transition: all 0.2s var(--ease-out);
}
.nav-link:hover { background: var(--gray-100); color: var(--ink-800); }
.nav-link.active {
  background: var(--ink-100);
  color: var(--ink-800);
}
.nav-link i { font-size: 18px; }

.topbar-actions {
  display: flex; align-items: center; gap: 8px;
}

.notif-btn {
  width: 40px; height: 40px;
  border-radius: 10px; border: 1px solid var(--gray-200);
  background: white;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer;
  position: relative;
  transition: all 0.2s var(--ease-out);
}
.notif-btn:hover { background: var(--gray-50); border-color: var(--gray-300); }
.notif-btn i { font-size: 18px; color: var(--gray-700); }
.notif-dot {
  position: absolute; top: 8px; left: 8px;
  width: 8px; height: 8px; border-radius: 50%;
  background: var(--teal-500);
  box-shadow: 0 0 0 2px white;
}

.user-chip {
  display: flex; align-items: center; gap: 10px;
  padding: 4px 14px 4px 4px;
  border-radius: 10px;
  background: var(--gray-100);
  cursor: pointer;
  transition: background 0.2s;
}
.user-chip:hover { background: var(--gray-200); }

.user-avatar {
  width: 32px; height: 32px;
  border-radius: 8px;
  background: linear-gradient(135deg, var(--ink-700), var(--teal-600));
  color: white;
  display: flex; align-items: center; justify-content: center;
  font-weight: 600; font-size: 13px;
}

.user-details { line-height: 1.2; text-align: right; }
.user-name { font-size: 13px; font-weight: 600; color: var(--ink-900); }
.user-role { font-size: 11px; color: var(--gray-600); }

/* ============================================================
   📐 التخطيط الرئيسي
   ============================================================ */
.app-main {
  max-width: 1400px; margin: 0 auto;
  padding: 32px;
  flex: 1; width: 100%;
}

.page-header {
  margin-bottom: 28px;
  display: flex; align-items: center; justify-content: space-between;
  flex-wrap: wrap; gap: 16px;
}

.page-title-group { flex: 1; min-width: 0; }
.page-breadcrumb {
  display: flex; align-items: center; gap: 6px;
  font-size: 12px; color: var(--gray-600);
  margin-bottom: 6px;
}
.page-breadcrumb i { font-size: 10px; }
.page-title {
  font-size: 26px;
  color: var(--ink-900);
}
.page-subtitle {
  font-size: 14px; color: var(--gray-600);
  margin-top: 4px;
}

/* ============================================================
   🎛️ الأزرار
   ============================================================ */
.btn {
  display: inline-flex; align-items: center; justify-content: center;
  gap: 8px;
  padding: 10px 18px;
  font-family: var(--font-body);
  font-size: 14px; font-weight: 500;
  border: none; border-radius: 10px;
  cursor: pointer;
  transition: all 0.2s var(--ease-out);
  text-decoration: none;
  white-space: nowrap;
}
.btn i { font-size: 18px; }

.btn-primary {
  background: var(--ink-800);
  color: white;
}
.btn-primary:hover {
  background: var(--ink-900);
  transform: translateY(-1px);
  box-shadow: var(--shadow-md);
}

.btn-accent {
  background: var(--teal-500);
  color: white;
}
.btn-accent:hover {
  background: var(--teal-600);
  transform: translateY(-1px);
  box-shadow: var(--shadow-md);
}

.btn-ghost {
  background: transparent;
  color: var(--gray-700);
  border: 1px solid var(--gray-200);
}
.btn-ghost:hover {
  background: var(--gray-100);
  border-color: var(--gray-300);
}

.btn-soft {
  background: var(--ink-100);
  color: var(--ink-800);
}
.btn-soft:hover { background: var(--ink-200); }

.btn-lg { padding: 14px 26px; font-size: 15px; border-radius: 12px; }
.btn-sm { padding: 6px 12px; font-size: 13px; border-radius: 8px; }
.btn-block { width: 100%; }

/* ============================================================
   🃏 البطاقات
   ============================================================ */
.card {
  background: var(--paper);
  border: 1px solid var(--gray-200);
  border-radius: var(--radius-lg);
  padding: 24px;
  transition: border-color 0.2s;
}
.card:hover { border-color: var(--gray-300); }

.card-title {
  font-family: var(--font-display);
  font-size: 17px; font-weight: 700;
  color: var(--ink-900);
  margin-bottom: 6px;
}
.card-subtitle {
  font-size: 13px; color: var(--gray-600);
  margin-bottom: 16px;
}

/* ============================================================
   ✨ صفحة الهبوط — Landing
   ============================================================ */
.landing {
  background: var(--cream);
  min-height: 100vh;
}

.landing-hero {
  position: relative;
  padding: 80px 32px 100px;
  overflow: hidden;
}

.landing-hero::before {
  content: '';
  position: absolute;
  top: -50%; left: -20%;
  width: 80%; height: 200%;
  background: radial-gradient(ellipse, var(--teal-100) 0%, transparent 60%);
  opacity: 0.6;
  pointer-events: none;
}
.landing-hero::after {
  content: '';
  position: absolute;
  top: -30%; right: -10%;
  width: 60%; height: 180%;
  background: radial-gradient(ellipse, var(--ink-100) 0%, transparent 55%);
  opacity: 0.5;
  pointer-events: none;
}

.landing-nav {
  max-width: 1280px; margin: 0 auto 60px;
  padding: 0 8px;
  display: flex; align-items: center; justify-content: space-between;
  position: relative; z-index: 2;
}

.landing-nav-links { display: flex; gap: 4px; }

.hero-content {
  max-width: 1280px; margin: 0 auto;
  position: relative; z-index: 2;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px; align-items: center;
}

.hero-kicker {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 6px 14px;
  background: var(--teal-50);
  color: var(--teal-600);
  border-radius: 100px;
  font-size: 13px; font-weight: 500;
  margin-bottom: 20px;
  border: 1px solid var(--teal-100);
}

.hero-title {
  font-family: var(--font-display);
  font-size: 54px; font-weight: 900;
  line-height: 1.1;
  letter-spacing: -0.03em;
  color: var(--ink-900);
  margin-bottom: 20px;
}
.hero-title .accent {
  color: var(--teal-500);
  position: relative;
  display: inline-block;
}
.hero-title .accent::after {
  content: '';
  position: absolute;
  bottom: 4px; left: 0; right: 0;
  height: 10px;
  background: var(--teal-100);
  z-index: -1;
  border-radius: 4px;
}

.hero-subtitle {
  font-size: 18px; color: var(--gray-700);
  line-height: 1.7;
  margin-bottom: 32px;
  max-width: 480px;
}

.hero-ctas {
  display: flex; gap: 12px;
  margin-bottom: 40px;
}

.hero-stats {
  display: flex; gap: 48px;
  padding-top: 32px;
  border-top: 1px solid var(--gray-200);
}
.hero-stat-value {
  font-family: var(--font-display);
  font-size: 32px; font-weight: 800;
  color: var(--ink-800); line-height: 1;
}
.hero-stat-label {
  font-size: 13px; color: var(--gray-600);
  margin-top: 4px;
}

/* البطاقة الزخرفية في الهيرو */
.hero-visual {
  position: relative;
  height: 520px;
}

.floating-card {
  position: absolute;
  background: var(--paper);
  border: 1px solid var(--gray-200);
  border-radius: var(--radius-lg);
  padding: 20px;
  box-shadow: var(--shadow-lg);
}

.fc-1 {
  top: 20px; right: 20px;
  width: 280px;
  animation: float1 6s ease-in-out infinite;
}
.fc-2 {
  top: 180px; left: 0;
  width: 320px;
  animation: float2 7s ease-in-out infinite;
}
.fc-3 {
  bottom: 40px; right: 60px;
  width: 260px;
  animation: float3 8s ease-in-out infinite;
}
@keyframes float1 { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }
@keyframes float2 { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(6px); } }
@keyframes float3 { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }

.fc-icon {
  width: 38px; height: 38px;
  border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  margin-bottom: 12px;
}
.fc-icon.teal { background: var(--teal-100); color: var(--teal-600); }
.fc-icon.ink  { background: var(--ink-100);  color: var(--ink-800); }
.fc-icon i { font-size: 20px; }
.fc-title { font-weight: 600; font-size: 14px; margin-bottom: 4px; color: var(--ink-900); }
.fc-desc { font-size: 12px; color: var(--gray-600); }
.fc-progress {
  margin-top: 12px;
  height: 6px; background: var(--gray-100); border-radius: 100px;
  overflow: hidden;
}
.fc-progress-bar {
  height: 100%; background: linear-gradient(90deg, var(--teal-500), var(--teal-400));
  border-radius: 100px;
}

/* الميزات */
.features-section {
  padding: 80px 32px;
  background: var(--paper);
  border-top: 1px solid var(--gray-200);
}

.features-header {
  max-width: 720px; margin: 0 auto 60px;
  text-align: center;
}
.section-eyebrow {
  font-size: 13px; color: var(--teal-600);
  font-weight: 600; text-transform: uppercase;
  letter-spacing: 0.08em;
  margin-bottom: 12px;
}
.section-title {
  font-family: var(--font-display);
  font-size: 40px; font-weight: 800;
  line-height: 1.2;
  color: var(--ink-900);
  letter-spacing: -0.02em;
}

.features-grid {
  max-width: 1280px; margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.feature-card {
  padding: 32px;
  background: var(--cream);
  border-radius: var(--radius-xl);
  border: 1px solid var(--gray-200);
  transition: all 0.3s var(--ease-out);
}
.feature-card:hover {
  border-color: var(--teal-400);
  transform: translateY(-4px);
  box-shadow: var(--shadow-lg);
}
.feature-icon {
  width: 56px; height: 56px;
  background: var(--white);
  border: 1px solid var(--gray-200);
  border-radius: 14px;
  display: flex; align-items: center; justify-content: center;
  margin-bottom: 20px;
}
.feature-icon i { font-size: 26px; color: var(--teal-500); }
.feature-title {
  font-family: var(--font-display);
  font-size: 19px; font-weight: 700;
  margin-bottom: 8px;
}
.feature-desc { font-size: 14px; color: var(--gray-700); line-height: 1.7; }

/* ============================================================
   🔐 صفحات المصادقة
   ============================================================ */
.auth-shell {
  min-height: 100vh;
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.auth-sidebar {
  background: var(--ink-800);
  color: white;
  padding: 48px;
  display: flex; flex-direction: column; justify-content: space-between;
  position: relative;
  overflow: hidden;
}
.auth-sidebar::before {
  content: '';
  position: absolute;
  top: -20%; left: -30%;
  width: 100%; height: 100%;
  background: radial-gradient(circle, var(--teal-600) 0%, transparent 60%);
  opacity: 0.4;
}
.auth-sidebar::after {
  content: '';
  position: absolute;
  bottom: -40%; right: -20%;
  width: 120%; height: 100%;
  background: radial-gradient(circle, var(--ink-600) 0%, transparent 50%);
  opacity: 0.5;
}

.auth-sidebar-content {
  position: relative; z-index: 2;
}

.auth-brand {
  display: flex; align-items: center; gap: 14px;
  margin-bottom: 60px;
}
.auth-brand-logo {
  width: 52px; height: 52px;
  background: white;
  border-radius: 13px;
  background-image: var(--makeen-icon, none);
  background-size: 80%;
  background-repeat: no-repeat;
  background-position: center;
  color: transparent; font-size: 0;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}
.auth-brand-logo::after { display: none; }
.auth-brand-text { }
.auth-brand-name { font-family: var(--font-display); font-size: 22px; font-weight: 800; line-height: 1; }
.auth-brand-sub { font-size: 12px; color: var(--teal-400); margin-top: 4px; }

.auth-pitch-title {
  font-family: var(--font-display);
  font-size: 38px; font-weight: 800;
  line-height: 1.2;
  margin-bottom: 20px;
  letter-spacing: -0.02em;
}
.auth-pitch-body {
  font-size: 16px; color: rgba(255,255,255,0.7);
  line-height: 1.8;
  margin-bottom: 40px;
  max-width: 460px;
}

.auth-testimonial {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: var(--radius-lg);
  padding: 20px;
  position: relative;
}
.auth-testimonial-quote {
  font-size: 14px; line-height: 1.7;
  color: rgba(255,255,255,0.9);
  margin-bottom: 14px;
}
.auth-testimonial-author {
  display: flex; align-items: center; gap: 10px;
}
.auth-testimonial-avatar {
  width: 36px; height: 36px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--teal-400), var(--teal-600));
  display: flex; align-items: center; justify-content: center;
  font-weight: 600; font-size: 14px;
}
.auth-testimonial-name { font-size: 13px; font-weight: 600; }
.auth-testimonial-title { font-size: 11px; color: rgba(255,255,255,0.5); }

.auth-footer {
  position: relative; z-index: 2;
  font-size: 12px; color: rgba(255,255,255,0.4);
}

.auth-form-wrap {
  padding: 48px;
  display: flex; align-items: center; justify-content: center;
  background: var(--cream);
}
.auth-form {
  width: 100%; max-width: 420px;
}
.auth-form-header { margin-bottom: 36px; }
.auth-form-title {
  font-family: var(--font-display);
  font-size: 32px; font-weight: 800;
  color: var(--ink-900); margin-bottom: 8px;
}
.auth-form-subtitle {
  font-size: 15px; color: var(--gray-600);
}

/* Form controls */
.form-group { margin-bottom: 18px; }
.form-label {
  display: block;
  font-size: 13px; font-weight: 600;
  color: var(--ink-800);
  margin-bottom: 8px;
}
.form-input, .form-select, .form-textarea {
  width: 100%;
  padding: 12px 14px;
  font-family: var(--font-body);
  font-size: 14px;
  background: white;
  border: 1.5px solid var(--gray-200);
  border-radius: 10px;
  transition: all 0.2s var(--ease-out);
  color: var(--ink-900);
}
.form-input:focus, .form-select:focus, .form-textarea:focus {
  outline: none;
  border-color: var(--teal-500);
  box-shadow: 0 0 0 3px var(--teal-50);
}
.form-input::placeholder { color: var(--gray-400); }

.form-field-icon {
  position: relative;
}
.form-field-icon .form-input { padding-right: 42px; }
.form-field-icon i {
  position: absolute;
  right: 14px; top: 50%; transform: translateY(-50%);
  color: var(--gray-500); font-size: 18px;
}

.form-help {
  font-size: 12px; color: var(--gray-600);
  margin-top: 6px;
}

.form-row {
  display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 20px;
}
.form-check {
  display: flex; align-items: center; gap: 8px;
  font-size: 13px; cursor: pointer;
}
.form-check input { width: 16px; height: 16px; accent-color: var(--teal-500); }

.auth-switch {
  text-align: center;
  margin-top: 28px;
  font-size: 14px; color: var(--gray-600);
}
.auth-switch a { color: var(--ink-800); font-weight: 600; text-decoration: none; }
.auth-switch a:hover { color: var(--teal-600); }

.divider-or {
  display: flex; align-items: center; gap: 12px;
  margin: 24px 0;
  color: var(--gray-400); font-size: 12px;
}
.divider-or::before, .divider-or::after {
  content: ''; flex: 1; height: 1px; background: var(--gray-200);
}

/* خيارات نوع الحساب */
.account-type {
  display: grid; grid-template-columns: 1fr 1fr; gap: 10px;
  margin-bottom: 20px;
}
.type-option {
  padding: 16px; text-align: center;
  border: 2px solid var(--gray-200);
  border-radius: 12px; cursor: pointer;
  transition: all 0.2s var(--ease-out);
  background: white;
}
.type-option.active {
  border-color: var(--teal-500);
  background: var(--teal-50);
}
.type-option i {
  font-size: 28px; color: var(--gray-500);
  margin-bottom: 8px;
}
.type-option.active i { color: var(--teal-600); }
.type-option-title { font-size: 14px; font-weight: 600; color: var(--ink-900); margin-bottom: 2px; }
.type-option-desc { font-size: 11px; color: var(--gray-600); }

/* ============================================================
   📊 لوحة التحكم
   ============================================================ */
.welcome-section {
  background: linear-gradient(135deg, var(--ink-800) 0%, var(--ink-700) 60%, var(--teal-600) 120%);
  color: white;
  padding: 36px;
  border-radius: var(--radius-xl);
  margin-bottom: 28px;
  position: relative;
  overflow: hidden;
}
.welcome-section::before {
  content: '';
  position: absolute;
  top: -50%; left: -10%;
  width: 60%; height: 200%;
  background: radial-gradient(circle, rgba(31,143,164,0.3) 0%, transparent 60%);
  pointer-events: none;
}
.welcome-section::after {
  content: '';
  position: absolute;
  bottom: -80%; right: -5%;
  width: 40%; height: 200%;
  background: radial-gradient(circle, rgba(255,255,255,0.08) 0%, transparent 60%);
  pointer-events: none;
}
.welcome-inner { position: relative; z-index: 2; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 20px; }
.welcome-greeting { font-size: 14px; color: rgba(255,255,255,0.75); margin-bottom: 4px; }
.welcome-title {
  font-family: var(--font-display);
  font-size: 28px; font-weight: 800;
  color: white;
  margin-bottom: 8px;
}
.welcome-sub { font-size: 14px; color: rgba(255,255,255,0.8); max-width: 500px; }

.welcome-date {
  padding: 10px 18px;
  background: rgba(255,255,255,0.1);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 10px;
  font-size: 13px;
  color: rgba(255,255,255,0.9);
  display: flex; align-items: center; gap: 8px;
}

/* الإحصائيات */
.stats-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-bottom: 28px;
}

.stat-tile {
  background: var(--paper);
  border: 1px solid var(--gray-200);
  border-radius: var(--radius-lg);
  padding: 22px;
  position: relative;
  transition: all 0.2s var(--ease-out);
}
.stat-tile:hover {
  border-color: var(--gray-300);
  box-shadow: var(--shadow-sm);
}

.stat-tile-header {
  display: flex; justify-content: space-between; align-items: flex-start;
  margin-bottom: 16px;
}

.stat-tile-icon {
  width: 42px; height: 42px;
  border-radius: 11px;
  display: flex; align-items: center; justify-content: center;
}
.stat-tile-icon i { font-size: 22px; }

.stat-ink   { background: var(--ink-100); color: var(--ink-800); }
.stat-teal  { background: var(--teal-50); color: var(--teal-600); }
.stat-success { background: var(--success-bg); color: var(--success); }
.stat-warning { background: var(--warning-bg); color: var(--warning); }

.stat-trend {
  font-size: 12px; font-weight: 600;
  padding: 3px 8px;
  border-radius: 100px;
  display: flex; align-items: center; gap: 3px;
}
.stat-trend.up   { background: var(--success-bg); color: var(--success); }
.stat-trend.down { background: var(--danger-bg); color: var(--danger); }

.stat-tile-value {
  font-family: var(--font-display);
  font-size: 32px; font-weight: 800;
  color: var(--ink-900);
  line-height: 1;
  margin-bottom: 4px;
}
.stat-tile-label { font-size: 13px; color: var(--gray-600); }

/* شبكة المحتوى الرئيسية */
.content-grid {
  display: grid;
  grid-template-columns: 2fr 1fr;
  gap: 20px;
}

/* قائمة النشاطات/الطلبات */
.section-card {
  background: var(--paper);
  border: 1px solid var(--gray-200);
  border-radius: var(--radius-lg);
  overflow: hidden;
}
.section-card-header {
  padding: 18px 22px;
  border-bottom: 1px solid var(--gray-200);
  display: flex; justify-content: space-between; align-items: center;
}
.section-card-title {
  font-family: var(--font-display);
  font-size: 16px; font-weight: 700;
  color: var(--ink-900);
}
.section-card-body { padding: 8px; }

.activity-item {
  display: flex; align-items: flex-start; gap: 14px;
  padding: 14px 16px;
  border-radius: 10px;
  transition: background 0.15s;
  cursor: pointer;
}
.activity-item:hover { background: var(--gray-100); }

.activity-marker {
  width: 36px; height: 36px;
  border-radius: 10px;
  background: var(--teal-50);
  color: var(--teal-600);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.activity-marker i { font-size: 18px; }

.activity-content { flex: 1; min-width: 0; }
.activity-title { font-size: 14px; font-weight: 600; color: var(--ink-900); margin-bottom: 2px; }
.activity-desc { font-size: 12px; color: var(--gray-600); line-height: 1.5; }
.activity-time { font-size: 11px; color: var(--gray-500); white-space: nowrap; padding-top: 4px; }

/* Badges */
.badge {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 3px 10px;
  font-size: 11px; font-weight: 600;
  border-radius: 100px;
}
.badge-success  { background: var(--success-bg); color: var(--success); }
.badge-warning  { background: var(--warning-bg); color: var(--warning); }
.badge-danger   { background: var(--danger-bg);  color: var(--danger);  }
.badge-info     { background: var(--ink-100);    color: var(--ink-800); }
.badge-teal     { background: var(--teal-50);    color: var(--teal-600); }
.badge-soft     { background: var(--gray-100);   color: var(--gray-700); }

/* إجراءات سريعة */
.quick-actions { display: flex; flex-direction: column; gap: 2px; }
.quick-action {
  display: flex; align-items: center; gap: 12px;
  padding: 12px 14px;
  border-radius: 10px;
  text-decoration: none;
  color: var(--ink-900);
  transition: all 0.15s;
  border: 1px solid transparent;
}
.quick-action:hover {
  background: var(--gray-100);
  border-color: var(--gray-200);
}
.quick-action-icon {
  width: 36px; height: 36px; border-radius: 9px;
  background: var(--ink-100); color: var(--ink-800);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.quick-action-icon i { font-size: 18px; }
.quick-action-content { flex: 1; min-width: 0; }
.quick-action-title { font-size: 14px; font-weight: 600; color: var(--ink-900); }
.quick-action-desc { font-size: 12px; color: var(--gray-600); }
.quick-action > i { color: var(--gray-400); font-size: 16px; }

/* ============================================================
   📄 صفحة التقديم
   ============================================================ */
.application-layout {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 28px;
}

.step-rail {
  background: var(--paper);
  border: 1px solid var(--gray-200);
  border-radius: var(--radius-lg);
  padding: 24px;
  height: fit-content;
  position: sticky; top: 100px;
}
.step-rail-title {
  font-family: var(--font-display);
  font-size: 14px; font-weight: 700;
  color: var(--ink-900);
  margin-bottom: 20px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--gray-200);
}
.step-list { display: flex; flex-direction: column; gap: 2px; }
.step-item {
  display: flex; align-items: center; gap: 12px;
  padding: 10px 12px;
  border-radius: 8px;
  cursor: pointer;
  transition: background 0.15s;
}
.step-item:hover { background: var(--gray-100); }
.step-item.active { background: var(--ink-100); }
.step-item.done { }
.step-num {
  width: 28px; height: 28px; border-radius: 8px;
  background: var(--gray-100); color: var(--gray-600);
  display: flex; align-items: center; justify-content: center;
  font-size: 13px; font-weight: 700;
  flex-shrink: 0;
}
.step-item.active .step-num { background: var(--ink-800); color: white; }
.step-item.done .step-num { background: var(--success); color: white; }
.step-label { font-size: 13px; font-weight: 500; color: var(--ink-900); }
.step-item.done .step-label { color: var(--gray-600); text-decoration: line-through; text-decoration-thickness: 1px; }

.application-form {
  background: var(--paper);
  border: 1px solid var(--gray-200);
  border-radius: var(--radius-lg);
  padding: 36px;
}

.form-section-title {
  font-family: var(--font-display);
  font-size: 20px; font-weight: 700;
  color: var(--ink-900);
  margin-bottom: 8px;
}
.form-section-subtitle {
  font-size: 14px; color: var(--gray-600);
  margin-bottom: 28px;
}

.ai-assist {
  display: flex; align-items: flex-start; gap: 14px;
  padding: 16px 18px;
  background: var(--teal-50);
  border: 1px solid var(--teal-100);
  border-radius: 12px;
  margin-bottom: 24px;
}
.ai-assist-icon {
  width: 36px; height: 36px; border-radius: 10px;
  background: var(--teal-500); color: white;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.ai-assist-icon i { font-size: 18px; }
.ai-assist-content { flex: 1; }
.ai-assist-title { font-size: 13px; font-weight: 700; color: var(--teal-600); margin-bottom: 4px; }
.ai-assist-desc { font-size: 13px; color: var(--gray-700); line-height: 1.6; }
.ai-assist-btn {
  padding: 6px 12px;
  background: white; border: 1px solid var(--teal-200);
  color: var(--teal-600); font-size: 12px; font-weight: 600;
  border-radius: 8px; cursor: pointer;
  white-space: nowrap;
  transition: all 0.15s;
}
.ai-assist-btn:hover { background: var(--teal-500); color: white; border-color: var(--teal-500); }

/* Dropzone */
.dropzone {
  border: 2px dashed var(--gray-300);
  border-radius: 12px;
  padding: 36px 24px;
  text-align: center;
  cursor: pointer;
  transition: all 0.2s;
  background: var(--gray-50);
}
.dropzone:hover {
  border-color: var(--teal-500);
  background: var(--teal-50);
}
.dropzone-icon {
  width: 48px; height: 48px; margin: 0 auto 12px;
  border-radius: 12px; background: white;
  border: 1px solid var(--gray-200);
  display: flex; align-items: center; justify-content: center;
}
.dropzone-icon i { font-size: 24px; color: var(--teal-500); }
.dropzone-text { font-size: 14px; color: var(--gray-700); font-weight: 500; margin-bottom: 4px; }
.dropzone-hint { font-size: 12px; color: var(--gray-500); }

.file-item {
  display: flex; align-items: center; gap: 12px;
  padding: 12px 14px;
  background: white;
  border: 1px solid var(--gray-200);
  border-radius: 10px;
  margin-bottom: 8px;
}
.file-item-icon {
  width: 40px; height: 40px; border-radius: 10px;
  background: var(--ink-100); color: var(--ink-800);
  display: flex; align-items: center; justify-content: center;
}
.file-item-icon i { font-size: 20px; }
.file-item-info { flex: 1; min-width: 0; }
.file-item-name { font-size: 13px; font-weight: 600; color: var(--ink-900); }
.file-item-meta { font-size: 11px; color: var(--gray-600); }
.file-item-remove {
  width: 30px; height: 30px; border-radius: 8px;
  border: none; background: var(--gray-100);
  color: var(--gray-600); cursor: pointer;
  display: flex; align-items: center; justify-content: center;
}
.file-item-remove:hover { background: var(--danger-bg); color: var(--danger); }

/* التنقل بين الخطوات */
.form-footer {
  display: flex; justify-content: space-between;
  margin-top: 32px; padding-top: 24px;
  border-top: 1px solid var(--gray-200);
}

/* ============================================================
   📋 التقييم
   ============================================================ */
.evaluation-layout {
  display: grid;
  grid-template-columns: 1fr 380px;
  gap: 24px;
}

.eval-criteria { display: flex; flex-direction: column; gap: 18px; margin-bottom: 24px; }
.criterion {
  padding: 20px;
  border: 1px solid var(--gray-200);
  border-radius: 12px;
  background: white;
}
.criterion-header {
  display: flex; justify-content: space-between; align-items: flex-start;
  margin-bottom: 14px;
}
.criterion-title { font-size: 15px; font-weight: 700; color: var(--ink-900); }
.criterion-desc { font-size: 12px; color: var(--gray-600); margin-top: 2px; }
.criterion-score {
  display: flex; align-items: center; gap: 2px;
}
.score-dot {
  width: 22px; height: 22px; border-radius: 6px;
  border: 1.5px solid var(--gray-300);
  display: flex; align-items: center; justify-content: center;
  font-size: 11px; font-weight: 600;
  cursor: pointer; background: white;
  transition: all 0.1s;
  color: var(--gray-600);
}
.score-dot:hover { border-color: var(--teal-400); }
.score-dot.active {
  background: var(--ink-800); color: white; border-color: var(--ink-800);
}

.applicant-card {
  padding: 20px;
  border: 1px solid var(--gray-200);
  border-radius: 12px;
  background: white;
  margin-bottom: 16px;
}
.applicant-header {
  display: flex; align-items: center; gap: 14px;
  margin-bottom: 16px;
}
.applicant-avatar {
  width: 52px; height: 52px; border-radius: 12px;
  background: linear-gradient(135deg, var(--ink-700), var(--teal-600));
  color: white;
  display: flex; align-items: center; justify-content: center;
  font-size: 20px; font-weight: 700;
}
.applicant-name { font-size: 15px; font-weight: 700; color: var(--ink-900); }
.applicant-info { font-size: 12px; color: var(--gray-600); display: flex; gap: 10px; margin-top: 2px; }

.project-summary { }
.summary-row {
  display: flex; justify-content: space-between;
  padding: 8px 0;
  border-bottom: 1px solid var(--gray-100);
  font-size: 13px;
}
.summary-row:last-child { border-bottom: none; }
.summary-label { color: var(--gray-600); }
.summary-value { color: var(--ink-900); font-weight: 500; }

/* ============================================================
   📌 صفحة المشروع + المهام
   ============================================================ */
.project-header {
  padding: 28px;
  background: var(--paper);
  border: 1px solid var(--gray-200);
  border-radius: var(--radius-lg);
  margin-bottom: 20px;
}
.project-title {
  font-family: var(--font-display);
  font-size: 24px; font-weight: 800;
  color: var(--ink-900); margin-bottom: 8px;
}
.project-meta {
  display: flex; gap: 24px; margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--gray-200);
}
.project-meta-item {
  display: flex; align-items: center; gap: 8px;
  font-size: 13px;
  color: var(--gray-700);
}
.project-meta-item i { color: var(--gray-500); font-size: 16px; }
.project-meta-item strong { color: var(--ink-900); }

/* Tabs */
.tabs {
  display: flex; gap: 4px;
  border-bottom: 1px solid var(--gray-200);
  margin-bottom: 20px;
}
.tab {
  padding: 10px 16px;
  font-size: 14px; font-weight: 500;
  color: var(--gray-600); cursor: pointer;
  border-bottom: 2px solid transparent;
  margin-bottom: -1px;
  transition: all 0.15s;
  display: flex; align-items: center; gap: 6px;
}
.tab:hover { color: var(--ink-800); }
.tab.active { color: var(--ink-800); border-bottom-color: var(--ink-800); font-weight: 600; }
.tab-count {
  padding: 1px 7px; border-radius: 100px;
  background: var(--gray-100); color: var(--gray-700);
  font-size: 11px; font-weight: 600;
}
.tab.active .tab-count { background: var(--ink-100); color: var(--ink-800); }

/* كانبان المهام */
.kanban {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
}

.kanban-col {
  background: var(--gray-50);
  border-radius: var(--radius-lg);
  padding: 14px;
  min-height: 500px;
}
.kanban-col-header {
  display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 14px;
  padding: 0 6px;
}
.kanban-col-title {
  font-family: var(--font-display);
  font-size: 13px; font-weight: 700;
  color: var(--ink-800);
  display: flex; align-items: center; gap: 8px;
}
.kanban-col-title::before {
  content: ''; width: 8px; height: 8px; border-radius: 50%;
}
.kanban-col-pending::before { background: var(--gray-400); }
.kanban-col-progress::before { background: var(--warning); }
.kanban-col-review::before { background: var(--teal-500); }
.kanban-col-done::before { background: var(--success); }

.kanban-col-count {
  font-size: 11px; font-weight: 600;
  padding: 2px 8px; border-radius: 100px;
  background: white; color: var(--gray-700);
  border: 1px solid var(--gray-200);
}

.task-card {
  background: white;
  border: 1px solid var(--gray-200);
  border-radius: 10px;
  padding: 14px;
  margin-bottom: 8px;
  cursor: pointer;
  transition: all 0.15s;
}
.task-card:hover {
  border-color: var(--teal-400);
  box-shadow: var(--shadow-sm);
  transform: translateY(-1px);
}
.task-card-header {
  display: flex; justify-content: space-between;
  margin-bottom: 10px;
}
.task-card-title {
  font-size: 13px; font-weight: 600;
  color: var(--ink-900);
  line-height: 1.4;
}
.task-card-priority {
  width: 4px; border-radius: 100px;
  margin-left: 10px;
  flex-shrink: 0;
}
.task-priority-high    { background: var(--danger); }
.task-priority-medium  { background: var(--warning); }
.task-priority-low     { background: var(--gray-400); }

.task-card-body { margin-bottom: 10px; }
.task-card-desc {
  font-size: 12px; color: var(--gray-600);
  line-height: 1.5;
}
.task-card-footer {
  display: flex; justify-content: space-between; align-items: center;
  font-size: 11px;
}
.task-card-due {
  color: var(--gray-600);
  display: flex; align-items: center; gap: 4px;
}
.task-card-due i { font-size: 13px; }
.task-card-due.overdue { color: var(--danger); }
.task-card-assignee {
  width: 24px; height: 24px; border-radius: 6px;
  background: linear-gradient(135deg, var(--ink-700), var(--teal-600));
  color: white;
  display: flex; align-items: center; justify-content: center;
  font-size: 10px; font-weight: 600;
}

/* ============================================================
   🎓 شبكة الخريجين
   ============================================================ */
.alumni-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.alumni-card {
  background: var(--paper);
  border: 1px solid var(--gray-200);
  border-radius: var(--radius-lg);
  overflow: hidden;
  transition: all 0.25s var(--ease-out);
}
.alumni-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--shadow-lg);
  border-color: var(--teal-400);
}
.alumni-cover {
  height: 120px;
  background: linear-gradient(135deg, var(--ink-800), var(--teal-600));
  position: relative;
}
.alumni-cover::after {
  content: '';
  position: absolute; inset: 0;
  background-image: radial-gradient(circle at 20% 50%, rgba(255,255,255,0.1) 0%, transparent 50%);
}
.alumni-body { padding: 20px; }
.alumni-badges {
  display: flex; gap: 6px; margin-bottom: 12px;
}
.alumni-title {
  font-family: var(--font-display);
  font-size: 17px; font-weight: 700;
  color: var(--ink-900);
  margin-bottom: 6px;
  line-height: 1.3;
}
.alumni-desc {
  font-size: 13px; color: var(--gray-700);
  line-height: 1.6;
  margin-bottom: 16px;
}
.alumni-footer {
  display: flex; justify-content: space-between; align-items: center;
  padding-top: 14px;
  border-top: 1px solid var(--gray-200);
}
.alumni-author {
  display: flex; align-items: center; gap: 8px;
}
.alumni-author-avatar {
  width: 28px; height: 28px; border-radius: 7px;
  background: linear-gradient(135deg, var(--teal-500), var(--ink-700));
  color: white;
  display: flex; align-items: center; justify-content: center;
  font-size: 11px; font-weight: 600;
}
.alumni-author-name { font-size: 12px; font-weight: 600; color: var(--ink-900); }
.alumni-year { font-size: 11px; color: var(--gray-600); }

/* ============================================================
   👤 الملف الشخصي
   ============================================================ */
.profile-layout {
  display: grid;
  grid-template-columns: 340px 1fr;
  gap: 28px;
}
.profile-sidebar {
  background: var(--paper);
  border: 1px solid var(--gray-200);
  border-radius: var(--radius-lg);
  overflow: hidden;
  height: fit-content;
}
.profile-cover {
  height: 80px;
  background: linear-gradient(135deg, var(--ink-800), var(--teal-600));
}
.profile-info {
  padding: 0 24px 24px;
  text-align: center;
  margin-top: -48px;
}
.profile-avatar-lg {
  width: 96px; height: 96px; border-radius: 24px;
  background: white;
  border: 4px solid white;
  display: flex; align-items: center; justify-content: center;
  font-family: var(--font-display);
  font-size: 36px; font-weight: 800;
  color: var(--ink-800);
  box-shadow: var(--shadow-md);
  margin: 0 auto 16px;
  background-image: linear-gradient(135deg, var(--ink-100), var(--teal-100));
}
.profile-name {
  font-family: var(--font-display);
  font-size: 19px; font-weight: 700;
  color: var(--ink-900);
  margin-bottom: 4px;
}
.profile-role {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 3px 12px;
  background: var(--teal-50); color: var(--teal-600);
  border-radius: 100px;
  font-size: 12px; font-weight: 600;
}
.profile-stats {
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 8px; margin-top: 20px;
  padding: 16px 0; border-top: 1px solid var(--gray-200);
}
.profile-stat-value {
  font-family: var(--font-display);
  font-size: 20px; font-weight: 800;
  color: var(--ink-800); line-height: 1;
}
.profile-stat-label {
  font-size: 11px; color: var(--gray-600);
  margin-top: 4px;
}

/* ============================================================
   🦶 التذييل العام (Global Footer)
   ============================================================ */
.site-footer {
  background: linear-gradient(180deg, var(--ink-900) 0%, #081028 100%);
  color: rgba(255,255,255,0.75);
  padding: 64px 32px 0;
  margin-top: auto;
  position: relative;
  overflow: hidden;
}
.site-footer::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--teal-500), var(--teal-300), var(--teal-500));
}

.footer-inner {
  max-width: 1400px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr 1.2fr;
  gap: 48px;
  padding-bottom: 48px;
}

.footer-brand .brand-logo {
  width: 48px; height: 48px;
  border-radius: 12px;
  font-size: 26px;
}
.footer-brand-name {
  font-family: var(--font-display);
  font-size: 24px; font-weight: 800;
  color: white;
  margin-bottom: 4px;
}
.footer-brand-desc {
  font-size: 14px;
  line-height: 1.8;
  margin: 16px 0 20px;
  color: rgba(255,255,255,0.65);
}
.footer-tasseel {
  display: inline-flex; align-items: center; gap: 10px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  padding: 8px 14px;
  border-radius: 100px;
  font-size: 12px;
  color: rgba(255,255,255,0.8);
}
.footer-tasseel::before {
  content: '';
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--teal-400);
  box-shadow: 0 0 0 3px rgba(46, 153, 173, 0.3);
}

.footer-col-title {
  font-family: var(--font-display);
  font-size: 14px;
  font-weight: 700;
  color: white;
  margin-bottom: 18px;
  letter-spacing: 0.02em;
}

.footer-links {
  list-style: none;
  display: flex; flex-direction: column;
  gap: 12px;
}
.footer-links a {
  color: rgba(255,255,255,0.65);
  text-decoration: none;
  font-size: 13px;
  transition: all 0.2s;
  display: flex; align-items: center; gap: 6px;
}
.footer-links a:hover {
  color: var(--teal-300);
  transform: translateX(-4px);
}

.footer-contact-item {
  display: flex; align-items: flex-start; gap: 10px;
  margin-bottom: 12px;
  font-size: 13px;
  color: rgba(255,255,255,0.7);
  line-height: 1.7;
}
.footer-contact-item i {
  color: var(--teal-400);
  font-size: 16px;
  margin-top: 2px;
  flex-shrink: 0;
}

.footer-social {
  display: flex; gap: 10px;
  margin-top: 16px;
}
.footer-social a {
  width: 38px; height: 38px;
  border-radius: 10px;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  display: flex; align-items: center; justify-content: center;
  color: rgba(255,255,255,0.7);
  transition: all 0.25s;
  font-size: 18px;
}
.footer-social a:hover {
  background: var(--teal-500);
  border-color: var(--teal-500);
  color: white;
  transform: translateY(-2px);
}

.footer-bottom {
  border-top: 1px solid rgba(255,255,255,0.08);
  padding: 24px 0;
  display: flex; justify-content: space-between; align-items: center;
  flex-wrap: wrap; gap: 16px;
  max-width: 1400px;
  margin: 0 auto;
}
.footer-copy {
  font-size: 12px;
  color: rgba(255,255,255,0.55);
}
.footer-compliance {
  display: flex; gap: 16px; align-items: center;
  flex-wrap: wrap;
}
.footer-badge {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 6px 12px;
  border-radius: 100px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  font-size: 11px;
  color: rgba(255,255,255,0.75);
}
.footer-badge i { color: var(--success); font-size: 13px; }
.footer-badge.ssl i { color: var(--teal-400); }

/* ============================================================
   📱 قائمة الجوال (Mobile Menu) + Hamburger
   ============================================================ */
.hamburger-btn {
  display: none;
  background: transparent;
  border: 1px solid var(--gray-200);
  border-radius: 10px;
  width: 44px; height: 44px;
  cursor: pointer;
  color: var(--ink-800);
  font-size: 22px;
  align-items: center; justify-content: center;
}
.hamburger-btn:hover { background: var(--gray-100); }

.mobile-drawer {
  position: fixed;
  top: 0; right: -320px;
  width: 300px; height: 100vh;
  background: white;
  box-shadow: var(--shadow-xl);
  z-index: 9998;
  transition: right 0.3s var(--ease-out);
  padding: 24px;
  overflow-y: auto;
}
.mobile-drawer.open { right: 0; }

.mobile-drawer-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(15, 26, 58, 0.5);
  backdrop-filter: blur(4px);
  z-index: 9997;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s;
}
.mobile-drawer-backdrop.open {
  opacity: 1;
  pointer-events: all;
}

.mobile-drawer-header {
  display: flex; justify-content: space-between; align-items: center;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--gray-200);
  margin-bottom: 20px;
}
.mobile-drawer-close {
  background: var(--gray-100);
  border: none;
  width: 36px; height: 36px;
  border-radius: 10px;
  cursor: pointer;
  color: var(--gray-700);
  display: flex; align-items: center; justify-content: center;
  font-size: 18px;
}

.mobile-nav { display: flex; flex-direction: column; gap: 4px; }
.mobile-nav .nav-link {
  padding: 14px 16px;
  border-radius: 12px;
  font-size: 15px;
}
.mobile-nav .nav-link.active {
  background: var(--teal-50);
  color: var(--teal-600);
}

/* ============================================================
   🔔 لوحة الإشعارات (Notifications Panel)
   ============================================================ */
.notif-panel {
  position: fixed;
  top: 70px; left: -420px;
  width: 400px; max-height: calc(100vh - 90px);
  background: white;
  border-radius: 16px;
  box-shadow: var(--shadow-xl);
  z-index: 200;
  overflow: hidden;
  transition: left 0.3s var(--ease-out);
  display: flex; flex-direction: column;
}
.notif-panel.open { left: 20px; }

.notif-panel-header {
  padding: 20px;
  border-bottom: 1px solid var(--gray-200);
  display: flex; justify-content: space-between; align-items: center;
}
.notif-panel-title {
  font-family: var(--font-display);
  font-size: 18px; font-weight: 700;
  color: var(--ink-900);
}
.notif-mark-all {
  font-size: 12px;
  color: var(--teal-600);
  text-decoration: none;
  font-weight: 500;
}
.notif-tabs {
  display: flex; gap: 4px;
  padding: 12px 20px 0;
  border-bottom: 1px solid var(--gray-200);
}
.notif-tab {
  padding: 10px 14px;
  font-size: 13px;
  color: var(--gray-600);
  border-bottom: 2px solid transparent;
  cursor: pointer;
  font-weight: 500;
  transition: all 0.2s;
}
.notif-tab.active {
  color: var(--teal-600);
  border-bottom-color: var(--teal-500);
}
.notif-list {
  flex: 1;
  overflow-y: auto;
  padding: 8px;
}
.notif-item {
  padding: 14px;
  border-radius: 10px;
  cursor: pointer;
  display: flex; gap: 12px;
  transition: background 0.15s;
}
.notif-item:hover { background: var(--gray-100); }
.notif-item.unread { background: var(--teal-50); }
.notif-item-icon {
  width: 36px; height: 36px;
  border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  font-size: 16px;
}
.notif-item-title {
  font-size: 13px;
  font-weight: 600;
  color: var(--ink-900);
  margin-bottom: 4px;
}
.notif-item-desc {
  font-size: 12px;
  color: var(--gray-600);
  line-height: 1.5;
}
.notif-item-time {
  font-size: 11px;
  color: var(--gray-500);
  margin-top: 6px;
}

/* ============================================================
   🎈 الزر العائم (Floating Action Button - FAB)
   ============================================================ */
.fab-support {
  position: fixed;
  bottom: 100px; left: 20px;
  width: 56px; height: 56px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--teal-500), var(--teal-600));
  color: white;
  border: none;
  cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 8px 24px rgba(31, 143, 164, 0.4);
  z-index: 150;
  font-size: 24px;
  transition: all 0.3s var(--ease-out);
}
.fab-support:hover {
  transform: scale(1.08) translateY(-2px);
  box-shadow: 0 12px 32px rgba(31, 143, 164, 0.5);
}
.fab-support::after {
  content: '';
  position: absolute;
  top: -2px; right: -2px;
  width: 14px; height: 14px;
  border-radius: 50%;
  background: #3BC171;
  border: 2px solid white;
}

/* ============================================================
   📭 الحالات البديلة (Empty / Loading / Error)
   ============================================================ */
.empty-state {
  text-align: center;
  padding: 64px 32px;
  display: flex; flex-direction: column; align-items: center;
  gap: 20px;
}
.empty-state-illus {
  width: 140px; height: 140px;
  border-radius: 50%;
  background: radial-gradient(circle, var(--teal-50) 0%, transparent 70%);
  display: flex; align-items: center; justify-content: center;
  color: var(--teal-400);
  font-size: 64px;
}
.empty-state-title {
  font-family: var(--font-display);
  font-size: 22px;
  font-weight: 700;
  color: var(--ink-900);
}
.empty-state-desc {
  font-size: 14px;
  color: var(--gray-600);
  max-width: 400px;
  line-height: 1.7;
}

/* Skeleton Loading */
@keyframes skeleton-shimmer {
  0% { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}
.skeleton {
  background: linear-gradient(90deg,
    var(--gray-100) 25%,
    var(--gray-200) 50%,
    var(--gray-100) 75%);
  background-size: 200% 100%;
  animation: skeleton-shimmer 1.5s infinite;
  border-radius: 8px;
}
.skeleton-text { height: 14px; margin-bottom: 10px; }
.skeleton-title { height: 22px; width: 60%; margin-bottom: 14px; }
.skeleton-card {
  background: white;
  border-radius: 14px;
  padding: 20px;
  border: 1px solid var(--gray-200);
}

/* Toast notifications */
.toast-container {
  position: fixed;
  top: 90px; left: 24px;
  z-index: 500;
  display: flex; flex-direction: column; gap: 10px;
}
.toast {
  background: white;
  border-radius: 12px;
  padding: 14px 18px;
  box-shadow: var(--shadow-lg);
  border-right: 4px solid var(--success);
  min-width: 280px; max-width: 380px;
  display: flex; align-items: flex-start; gap: 12px;
  animation: toast-in 0.3s var(--ease-out);
}
.toast.toast-error { border-right-color: var(--danger); }
.toast.toast-warning { border-right-color: var(--warning); }
.toast.toast-info { border-right-color: var(--teal-500); }
@keyframes toast-in {
  from { transform: translateX(-20px); opacity: 0; }
  to { transform: translateX(0); opacity: 1; }
}
.toast-icon { font-size: 20px; margin-top: 2px; }
.toast.toast-success .toast-icon { color: var(--success); }
.toast.toast-error .toast-icon { color: var(--danger); }
.toast-content { flex: 1; }
.toast-title {
  font-size: 14px; font-weight: 600;
  color: var(--ink-900);
  margin-bottom: 2px;
}
.toast-desc { font-size: 12px; color: var(--gray-600); }

/* Progress in step rail */
.step-item.active .step-progress-mini {
  height: 3px;
  background: var(--gray-200);
  border-radius: 100px;
  margin-top: 8px;
  overflow: hidden;
}
.step-item.active .step-progress-mini-fill {
  height: 100%;
  background: var(--teal-500);
  border-radius: 100px;
  transition: width 0.3s;
}

/* ============================================================
   📱 شريط التنقل السفلي للجوال (Bottom Navigation)
   ============================================================ */
.mobile-bottom-nav {
  display: none;
  position: fixed;
  bottom: 0; left: 0; right: 0;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(12px);
  border-top: 1px solid var(--gray-200);
  padding: 8px 0 calc(8px + env(safe-area-inset-bottom));
  z-index: 90;
  justify-content: space-around;
}
.mobile-bottom-nav a {
  flex: 1;
  display: flex; flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 8px 4px;
  color: var(--gray-600);
  text-decoration: none;
  font-size: 11px;
  font-weight: 500;
  position: relative;
  min-height: 44px;
  justify-content: center;
}
.mobile-bottom-nav a i { font-size: 20px; }
.mobile-bottom-nav a.active {
  color: var(--teal-600);
}
.mobile-bottom-nav a.active::before {
  content: '';
  position: absolute;
  top: 0;
  width: 24px; height: 3px;
  background: var(--teal-500);
  border-radius: 0 0 100px 100px;
}


/* ============================================================
   ⚙️  لوحة التحكم الإدارية (Admin CMS)
   ============================================================ */
.admin-shell {
  display: grid;
  grid-template-columns: 280px 1fr;
  min-height: calc(100vh - 70px);
  background: var(--cream);
}

.admin-sidebar {
  background: linear-gradient(180deg, var(--ink-900) 0%, var(--ink-800) 100%);
  color: white;
  padding: 24px 16px;
  overflow-y: auto;
  position: sticky; top: 70px;
  height: calc(100vh - 70px);
}

.admin-sidebar-header {
  padding: 0 8px 20px;
  border-bottom: 1px solid rgba(255,255,255,0.08);
  margin-bottom: 16px;
  display: flex; align-items: center; gap: 12px;
}
.admin-sidebar-title {
  font-family: var(--font-display);
  font-size: 16px; font-weight: 700;
  color: white;
}
.admin-sidebar-sub {
  font-size: 11px; color: rgba(255,255,255,0.5);
  margin-top: 2px;
}
.admin-sidebar-icon {
  width: 36px; height: 36px;
  border-radius: 10px;
  background: rgba(31,143,164,0.2);
  color: var(--teal-400);
  display: flex; align-items: center; justify-content: center;
  font-size: 18px;
}

.admin-nav-group {
  margin-bottom: 20px;
}
.admin-nav-group-title {
  font-size: 11px; font-weight: 600;
  color: rgba(255,255,255,0.45);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 0 12px 8px;
}
.admin-nav-link {
  display: flex; align-items: center; gap: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  color: rgba(255,255,255,0.7);
  text-decoration: none;
  font-size: 13.5px;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  margin-bottom: 2px;
  border: none; background: transparent; width: 100%; text-align: right;
  font-family: inherit;
}
.admin-nav-link i { font-size: 18px; flex-shrink: 0; color: rgba(255,255,255,0.5); }
.admin-nav-link:hover {
  background: rgba(255,255,255,0.06);
  color: white;
}
.admin-nav-link:hover i { color: var(--teal-400); }
.admin-nav-link.active {
  background: linear-gradient(90deg, rgba(31,143,164,0.25), rgba(31,143,164,0.1));
  color: white;
  box-shadow: inset 3px 0 0 var(--teal-400);
}
.admin-nav-link.active i { color: var(--teal-400); }
.admin-nav-badge {
  margin-right: auto;
  background: var(--teal-500);
  color: white;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 100px;
}

.admin-main {
  padding: 32px 40px;
  overflow-x: auto;
  max-width: 100%;
}

.admin-header {
  display: flex; justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 28px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--gray-200);
  gap: 20px;
  flex-wrap: wrap;
}
.admin-title {
  font-family: var(--font-display);
  font-size: 26px; font-weight: 800;
  color: var(--ink-900);
  margin-bottom: 4px;
}
.admin-subtitle {
  font-size: 14px; color: var(--gray-600);
  line-height: 1.7;
}

.admin-save-bar {
  position: sticky; bottom: 20px;
  background: var(--ink-900);
  color: white;
  padding: 14px 20px;
  border-radius: 14px;
  display: flex; align-items: center; justify-content: space-between;
  gap: 16px;
  box-shadow: 0 12px 32px rgba(15,26,58,0.3);
  z-index: 50;
  margin-top: 24px;
  opacity: 0;
  transform: translateY(20px);
  pointer-events: none;
  transition: all 0.3s var(--ease-out);
}
.admin-save-bar.visible {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
.admin-save-bar-text {
  font-size: 14px;
  display: flex; align-items: center; gap: 10px;
}
.admin-save-bar-text i { color: var(--warning); font-size: 18px; }
.admin-save-bar-actions { display: flex; gap: 8px; }

.admin-section {
  background: white;
  border-radius: 16px;
  padding: 28px;
  margin-bottom: 24px;
  border: 1px solid var(--gray-200);
  box-shadow: var(--shadow-xs);
}
.admin-section-header {
  display: flex; align-items: flex-start; justify-content: space-between;
  gap: 16px; margin-bottom: 20px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--gray-100);
}
.admin-section-title {
  font-family: var(--font-display);
  font-size: 17px; font-weight: 700;
  color: var(--ink-900);
  display: flex; align-items: center; gap: 10px;
}
.admin-section-title i {
  width: 34px; height: 34px;
  border-radius: 9px;
  background: var(--teal-50);
  color: var(--teal-600);
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 18px;
}
.admin-section-desc {
  font-size: 13px; color: var(--gray-600);
  margin-top: 4px; line-height: 1.7;
}

/* Admin Panel Tabs */
.admin-panel { display: none; }
.admin-panel.active { display: block; animation: fadeIn 0.3s var(--ease-out); }

/* Stats cards في Admin Dashboard */
.admin-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-bottom: 24px;
}
.admin-stat {
  background: white;
  border-radius: 14px;
  padding: 20px;
  border: 1px solid var(--gray-200);
  position: relative;
  overflow: hidden;
}
.admin-stat::before {
  content: ''; position: absolute;
  top: 0; right: 0; width: 4px; height: 100%;
  background: var(--teal-500);
}
.admin-stat.ink::before { background: var(--ink-800); }
.admin-stat.success::before { background: var(--success); }
.admin-stat.warning::before { background: var(--warning); }
.admin-stat-label {
  font-size: 12px; color: var(--gray-600);
  font-weight: 500;
  display: flex; align-items: center; gap: 6px;
  margin-bottom: 8px;
}
.admin-stat-value {
  font-family: var(--font-display);
  font-size: 32px; font-weight: 800;
  color: var(--ink-900);
  line-height: 1;
}
.admin-stat-change {
  font-size: 12px;
  color: var(--success);
  margin-top: 8px;
  display: flex; align-items: center; gap: 4px;
}

/* Repeater — قائمة قابلة للإضافة والحذف */
.admin-repeater { display: flex; flex-direction: column; gap: 12px; }
.admin-repeater-item {
  background: var(--gray-100);
  border: 1px solid var(--gray-200);
  border-radius: 12px;
  padding: 16px;
  position: relative;
  transition: all 0.2s;
}
.admin-repeater-item:hover {
  background: white;
  box-shadow: var(--shadow-sm);
}
.admin-repeater-item-header {
  display: flex; justify-content: space-between; align-items: center;
  margin-bottom: 12px;
}
.admin-repeater-item-num {
  background: var(--ink-800);
  color: white;
  width: 26px; height: 26px;
  border-radius: 7px;
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 13px; font-weight: 700;
  font-family: var(--font-display);
}
.admin-repeater-item-actions {
  display: flex; gap: 6px;
}
.admin-icon-btn {
  background: white;
  border: 1px solid var(--gray-200);
  width: 32px; height: 32px;
  border-radius: 8px;
  cursor: pointer;
  display: inline-flex; align-items: center; justify-content: center;
  color: var(--gray-700);
  transition: all 0.15s;
}
.admin-icon-btn:hover {
  background: var(--teal-50);
  color: var(--teal-600);
  border-color: var(--teal-100);
}
.admin-icon-btn.danger:hover {
  background: var(--danger-bg);
  color: var(--danger);
  border-color: #F5C0C0;
}

.admin-add-btn {
  border: 2px dashed var(--gray-300);
  background: transparent;
  border-radius: 12px;
  padding: 14px;
  color: var(--gray-600);
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  width: 100%;
  display: flex; align-items: center; justify-content: center; gap: 8px;
  transition: all 0.2s;
  font-family: inherit;
}
.admin-add-btn:hover {
  border-color: var(--teal-500);
  color: var(--teal-600);
  background: var(--teal-50);
}

/* Two-column grid للنماذج */
.admin-grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.admin-grid-3 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 16px;
}

/* ImagePicker — رفع وعرض الصور */
.admin-image-picker {
  border: 2px dashed var(--gray-300);
  border-radius: 12px;
  padding: 20px;
  text-align: center;
  background: var(--gray-100);
  cursor: pointer;
  transition: all 0.2s;
  display: flex; flex-direction: column;
  align-items: center; gap: 12px;
}
.admin-image-picker:hover {
  border-color: var(--teal-500);
  background: var(--teal-50);
}
.admin-image-preview {
  width: 120px; height: 120px;
  background: white;
  border-radius: 12px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  border: 1px solid var(--gray-200);
}
.admin-image-preview.wide {
  width: 200px; height: 80px;
  background-size: contain;
}
.admin-image-picker-label {
  font-size: 13px;
  color: var(--gray-700);
  font-weight: 500;
}
.admin-image-picker-hint {
  font-size: 11px;
  color: var(--gray-600);
}

/* Color Picker للإعدادات */
.admin-color-picker {
  display: flex; align-items: center; gap: 12px;
  padding: 10px 14px;
  background: var(--gray-100);
  border-radius: 10px;
}
.admin-color-swatch {
  width: 36px; height: 36px;
  border-radius: 8px;
  border: 2px solid white;
  box-shadow: 0 0 0 1px var(--gray-200);
}
.admin-color-input {
  flex: 1;
  background: transparent;
  border: none;
  font-family: monospace;
  font-size: 14px;
  color: var(--ink-900);
}

/* Admin Toggle Switch */
.admin-toggle {
  display: flex; align-items: center; justify-content: space-between;
  padding: 14px 16px;
  background: var(--gray-100);
  border-radius: 10px;
  margin-bottom: 10px;
}
.admin-toggle-info { flex: 1; }
.admin-toggle-title {
  font-size: 14px; font-weight: 600;
  color: var(--ink-900);
  margin-bottom: 2px;
}
.admin-toggle-desc {
  font-size: 12px; color: var(--gray-600);
}
.toggle-switch {
  position: relative;
  width: 44px; height: 24px;
  background: var(--gray-300);
  border-radius: 100px;
  cursor: pointer;
  transition: background 0.2s;
  flex-shrink: 0;
}
.toggle-switch::after {
  content: '';
  position: absolute;
  top: 2px; right: 2px;
  width: 20px; height: 20px;
  background: white;
  border-radius: 50%;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  transition: transform 0.2s;
}
.toggle-switch.on { background: var(--teal-500); }
.toggle-switch.on::after { transform: translateX(-20px); }
.toggle-switch input { display: none; }

/* Admin Responsive */
@media (max-width: 900px) {
  .admin-shell { grid-template-columns: 1fr; }
  .admin-sidebar { position: static; height: auto; }
  .admin-main { padding: 20px; }
  .admin-stats { grid-template-columns: repeat(2, 1fr); }
  .admin-grid-2, .admin-grid-3 { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .admin-stats { grid-template-columns: 1fr; }
}


/* lg: لابتوب صغير */
@media (max-width: 1200px) {
  .app-topbar-inner { padding: 14px 20px; }
  .topbar-nav { gap: 8px; }
  .topbar-nav .nav-link { padding: 8px 12px; font-size: 13px; }
}

/* md: تابلت */
@media (max-width: 1024px) {
  .hero-content, .auth-shell, .content-grid, .application-layout, .evaluation-layout, .profile-layout {
    grid-template-columns: 1fr !important;
  }
  .auth-sidebar {
    display: block;
    padding: 32px;
    min-height: auto;
  }
  .auth-sidebar-content { padding: 0; }
  .auth-testimonial { display: none; }
  .features-grid, .alumni-grid, .stats-grid { grid-template-columns: repeat(2, 1fr); }
  .kanban { grid-template-columns: repeat(2, 1fr); }
  .hero-title { font-size: 38px; }
  .topbar-nav { display: none; }
  .hamburger-btn { display: inline-flex; }
  .footer-inner {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 32px;
  }
  .footer-brand { grid-column: 1 / -1; }
}

/* sm: جوال كبير */
@media (max-width: 900px) {
  .page-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  .evaluation-layout, .application-layout {
    gap: 16px;
  }
  .user-details { display: none; }
  .welcome-inner { flex-direction: column; align-items: flex-start; gap: 14px; }
}

/* xs: جوال */
@media (max-width: 640px) {
  .app-main, .landing-hero, .features-section { padding: 20px 16px; }
  .features-grid, .alumni-grid, .stats-grid, .kanban { grid-template-columns: 1fr; }
  .hero-title { font-size: 30px; }
  .section-title { font-size: 28px; }
  .welcome-title { font-size: 22px; }
  .landing-nav-links { display: none; }
  .hero-ctas { flex-direction: column; }
  .hero-ctas .btn { width: 100%; justify-content: center; }
  .project-meta { flex-direction: column; align-items: flex-start; }
  .tabs { overflow-x: auto; flex-wrap: nowrap; }
  .tab { white-space: nowrap; }
  .criterion-score { flex-wrap: wrap; gap: 6px; }
  .score-dot { width: 32px; height: 32px; font-size: 14px; } /* WCAG 2.5.8 target size */
  body { padding-bottom: 72px; } /* مساحة لشريط التنقل السفلي */
  .mobile-bottom-nav { display: flex; }
  .demo-switcher { bottom: 80px; } /* رفع المتبدّل فوق bottom-nav */
  .footer-inner {
    grid-template-columns: 1fr;
    gap: 32px;
    padding-bottom: 32px;
  }
  .footer-brand { grid-column: auto; }
  .fab-support { bottom: 88px; width: 48px; height: 48px; font-size: 20px; }
  .site-footer { padding: 48px 20px 0; }
  .footer-bottom { flex-direction: column; text-align: center; }
}

/* xxs: iPhone SE */
@media (max-width: 375px) {
  .hero-title { font-size: 26px; }
  .stat-tile-value { font-size: 28px; }
  .app-topbar-inner { padding: 12px 16px; gap: 12px; }
  .brand-tag { display: none; }
}

/* طباعة */
@media print {
  .app-topbar, .demo-switcher, .mobile-bottom-nav, .fab-support,
  .hamburger-btn, .notif-panel, .mobile-drawer, .mobile-drawer-backdrop,
  aside, .step-rail { display: none !important; }
  .page { display: block !important; }
  body { background: white; }
  .section-card { box-shadow: none; border: 1px solid #ccc; }
}


/* ============================================================
   🗺️  شريط التنقل السفلي (خاص بالنموذج فقط)
   ============================================================ */
.demo-switcher {
  position: fixed;
  bottom: 20px; left: 50%; transform: translateX(-50%);
  background: rgba(15, 26, 58, 0.95);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,0.1);
  padding: 8px;
  border-radius: 100px;
  display: flex; gap: 4px;
  z-index: 9999;
  max-width: calc(100vw - 40px);
  overflow-x: auto;
  box-shadow: var(--shadow-xl);
}

.demo-switcher::-webkit-scrollbar { display: none; }

.demo-chip {
  padding: 8px 14px;
  font-size: 12px; font-weight: 500;
  color: rgba(255,255,255,0.7);
  background: transparent;
  border: none;
  border-radius: 100px;
  cursor: pointer;
  white-space: nowrap;
  transition: all 0.2s;
  font-family: var(--font-body);
}
.demo-chip:hover { color: white; background: rgba(255,255,255,0.1); }
.demo-chip.active {
  background: var(--teal-500); color: white;
  font-weight: 600;
}

/* ============================================================
   🆕 v4 — كيف تعمل المنصة (Journey Timeline)
   ============================================================ */
.journey-section {
  padding: 80px 32px;
  background: var(--cream);
}
.journey-inner {
  max-width: 1200px; margin: 0 auto;
}
.journey-header {
  text-align: center;
  margin-bottom: 60px;
}
.journey-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
  position: relative;
}
.journey-steps::before {
  content: '';
  position: absolute;
  top: 40px;
  right: 12.5%;
  left: 12.5%;
  height: 2px;
  background: linear-gradient(90deg, var(--teal-100), var(--teal-400), var(--teal-100));
  z-index: 0;
}
.journey-step {
  position: relative;
  text-align: center;
  padding: 0 16px;
}
.journey-step-circle {
  width: 80px; height: 80px;
  margin: 0 auto 20px;
  border-radius: 50%;
  background: var(--paper);
  border: 3px solid var(--teal-400);
  display: flex; align-items: center; justify-content: center;
  font-size: 32px;
  color: var(--teal-600);
  position: relative;
  z-index: 1;
  box-shadow: 0 4px 12px rgba(22, 126, 146, 0.15);
}
.journey-step:nth-child(2) .journey-step-circle { background: var(--teal-50); }
.journey-step:nth-child(3) .journey-step-circle { background: var(--teal-100); }
.journey-step:nth-child(4) .journey-step-circle {
  background: var(--ink-800); color: var(--teal-300);
  border-color: var(--ink-800);
}
.journey-step-num {
  position: absolute;
  top: -10px; right: 50%;
  transform: translateX(50%);
  width: 28px; height: 28px;
  background: var(--ink-800); color: white;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-weight: 700; font-size: 14px;
  border: 3px solid var(--cream);
}
.journey-step-title {
  font-family: var(--font-display);
  font-size: 18px;
  font-weight: 700;
  color: var(--ink-900);
  margin-bottom: 8px;
}
.journey-step-desc {
  font-size: 13px;
  color: var(--gray-600);
  line-height: 1.7;
}

/* ============================================================
   🆕 v4 — شهادات المستفيدين
   ============================================================ */
.testimonials-section {
  padding: 80px 32px;
  background: var(--paper);
  border-top: 1px solid var(--gray-100);
  border-bottom: 1px solid var(--gray-100);
}
.testimonials-inner {
  max-width: 1200px; margin: 0 auto;
}
.testimonials-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 48px;
}
.testimonial-card {
  background: var(--cream);
  border: 1px solid var(--gray-200);
  border-radius: 20px;
  padding: 32px 28px;
  position: relative;
  transition: all 0.3s var(--ease-out);
}
.testimonial-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 32px rgba(30, 42, 94, 0.08);
  border-color: var(--teal-300);
}
.testimonial-quote-icon {
  position: absolute;
  top: 20px; left: 20px;
  font-size: 32px;
  color: var(--teal-300);
  opacity: 0.4;
}
.testimonial-text {
  font-size: 15px;
  line-height: 1.9;
  color: var(--gray-700);
  margin-bottom: 24px;
  min-height: 110px;
  font-weight: 400;
}
.testimonial-footer {
  display: flex; align-items: center; gap: 12px;
  padding-top: 20px;
  border-top: 1px solid var(--gray-200);
}
.testimonial-avatar {
  width: 48px; height: 48px;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--ink-700), var(--teal-600));
  color: white;
  display: flex; align-items: center; justify-content: center;
  font-weight: 700;
  font-family: var(--font-display);
}
.testimonial-name {
  font-weight: 700;
  font-size: 14px;
  color: var(--ink-900);
}
.testimonial-role {
  font-size: 12px;
  color: var(--gray-600);
}

/* ============================================================
   🆕 v4 — FAQ
   ============================================================ */
.faq-section {
  padding: 80px 32px;
  background: var(--cream);
}
.faq-inner {
  max-width: 860px; margin: 0 auto;
}
.faq-list {
  margin-top: 48px;
}
.faq-item {
  background: var(--paper);
  border: 1px solid var(--gray-200);
  border-radius: 14px;
  margin-bottom: 12px;
  overflow: hidden;
  transition: all 0.2s var(--ease-out);
}
.faq-item[open] {
  border-color: var(--teal-400);
  box-shadow: 0 4px 12px rgba(22, 126, 146, 0.08);
}
.faq-question {
  padding: 20px 24px;
  font-weight: 700;
  font-size: 15px;
  color: var(--ink-900);
  cursor: pointer;
  display: flex; align-items: center; justify-content: space-between;
  gap: 16px;
  list-style: none;
  font-family: var(--font-display);
}
.faq-question::-webkit-details-marker { display: none; }
.faq-question::after {
  content: '+';
  font-size: 28px;
  color: var(--teal-600);
  line-height: 1;
  transition: transform 0.2s;
  font-weight: 300;
}
.faq-item[open] .faq-question::after {
  transform: rotate(45deg);
}
.faq-answer {
  padding: 0 24px 20px;
  font-size: 14px;
  line-height: 1.9;
  color: var(--gray-700);
}

/* ============================================================
   🆕 v4 — Final CTA
   ============================================================ */
.final-cta {
  padding: 80px 32px;
  background: linear-gradient(135deg, var(--ink-800) 0%, var(--ink-900) 50%, #0a1028 100%);
  color: white;
  position: relative;
  overflow: hidden;
}
.final-cta::before {
  content: '';
  position: absolute;
  top: 0; right: 0;
  width: 60%; height: 100%;
  background: radial-gradient(circle at 70% 50%, rgba(31, 143, 164, 0.3) 0%, transparent 70%);
}
.final-cta-inner {
  max-width: 900px; margin: 0 auto;
  text-align: center;
  position: relative;
  z-index: 2;
}
.final-cta h2 {
  font-family: var(--font-display);
  font-size: 44px;
  font-weight: 800;
  color: white;
  margin-bottom: 20px;
  line-height: 1.2;
}
.final-cta p {
  font-size: 17px;
  color: rgba(255, 255, 255, 0.75);
  margin-bottom: 36px;
  line-height: 1.8;
}

/* ============================================================
   🆕 v4 — حل تجاوز العنوان الرئيسي
   ============================================================ */
@media (max-width: 1440px) {
  .hero-title { font-size: 44px !important; }
}
@media (max-width: 1200px) {
  .hero-title { font-size: 38px !important; }
}

/* ============================================================
   🆕 v4 — Password Strength Meter
   ============================================================ */
.password-strength {
  margin-top: 8px;
}
.strength-bar {
  height: 4px;
  background: var(--gray-200);
  border-radius: 100px;
  overflow: hidden;
  margin-bottom: 6px;
}
.strength-fill {
  height: 100%;
  width: 0%;
  transition: all 0.3s var(--ease-out);
  border-radius: 100px;
}
.strength-fill.weak   { width: 25%; background: var(--danger); }
.strength-fill.medium { width: 50%; background: var(--warning); }
.strength-fill.good   { width: 75%; background: var(--teal-500); }
.strength-fill.strong { width: 100%; background: var(--success); }
.strength-label {
  font-size: 11px;
  font-weight: 600;
}
.strength-label.weak { color: var(--danger); }
.strength-label.medium { color: var(--warning); }
.strength-label.good { color: var(--teal-600); }
.strength-label.strong { color: var(--success); }

/* Show password toggle */
.password-field {
  position: relative;
}
.password-toggle {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  color: var(--gray-500);
  cursor: pointer;
  padding: 4px;
  border-radius: 4px;
  display: flex; align-items: center; justify-content: center;
}
.password-toggle:hover { color: var(--ink-800); background: var(--gray-100); }
.password-field input { padding-left: 44px !important; }

/* ============================================================
   🆕 v4 — Auto-save indicator
   ============================================================ */
.autosave-indicator {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: var(--gray-600);
  padding: 4px 10px;
  border-radius: 100px;
  background: var(--gray-100);
}
.autosave-indicator.saving {
  background: var(--warning-bg);
  color: var(--warning);
}
.autosave-indicator.saved {
  background: var(--success-bg);
  color: var(--success);
}
.autosave-dot {
  width: 6px; height: 6px; border-radius: 50%;
  background: currentColor;
}
.autosave-indicator.saving .autosave-dot {
  animation: pulse 1s ease-in-out infinite;
}
@keyframes pulse {
  0%, 100% { opacity: 0.4; }
  50% { opacity: 1; }
}

/* ============================================================
   🆕 v4 — Tabs content في صفحة المشروع
   ============================================================ */
.tab-panel { display: none; }
.tab-panel.active { display: block; animation: fadeIn 0.3s var(--ease-out); }

/* Agreement tab */
.agreement-viewer {
  background: var(--paper);
  border: 1px solid var(--gray-200);
  border-radius: 14px;
  overflow: hidden;
}
.agreement-header {
  padding: 20px 24px;
  border-bottom: 1px solid var(--gray-200);
  background: var(--cream);
  display: flex; align-items: center; justify-content: space-between;
}
.agreement-body {
  padding: 32px;
}
.agreement-status {
  padding: 16px 20px;
  background: var(--success-bg);
  border-right: 3px solid var(--success);
  border-radius: 10px;
  margin-bottom: 24px;
}
.agreement-clauses {
  font-size: 14px;
  line-height: 1.9;
  color: var(--gray-700);
}
.agreement-clause {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--gray-100);
}
.agreement-clause:last-child { border-bottom: none; }
.agreement-clause h4 {
  color: var(--ink-800);
  font-size: 15px;
  margin-bottom: 8px;
}

/* Documents tab */
.docs-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 16px;
}
.doc-card {
  background: var(--paper);
  border: 1px solid var(--gray-200);
  border-radius: 12px;
  padding: 20px;
  display: flex; flex-direction: column; gap: 12px;
  transition: all 0.2s var(--ease-out);
  cursor: pointer;
}
.doc-card:hover {
  border-color: var(--teal-400);
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(30, 42, 94, 0.08);
}
.doc-icon {
  width: 48px; height: 48px;
  border-radius: 12px;
  background: var(--danger-bg);
  color: var(--danger);
  display: flex; align-items: center; justify-content: center;
  font-size: 24px;
}
.doc-icon.xlsx { background: var(--success-bg); color: var(--success); }
.doc-icon.docx { background: var(--ink-100); color: var(--ink-800); }
.doc-icon.image { background: var(--teal-50); color: var(--teal-600); }
.doc-name {
  font-weight: 600; font-size: 14px; color: var(--ink-900);
}
.doc-meta {
  font-size: 12px; color: var(--gray-600);
  display: flex; align-items: center; gap: 12px;
}

/* Reports tab */
.report-card {
  background: var(--paper);
  border: 1px solid var(--gray-200);
  border-radius: 14px;
  padding: 24px;
  margin-bottom: 16px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 20px;
  align-items: center;
}
.report-number {
  width: 56px; height: 56px;
  border-radius: 14px;
  background: var(--ink-100);
  color: var(--ink-800);
  display: flex; align-items: center; justify-content: center;
  font-family: var(--font-display);
  font-size: 20px; font-weight: 800;
}
.report-title {
  font-size: 15px; font-weight: 700;
  color: var(--ink-900); margin-bottom: 4px;
}
.report-period {
  font-size: 13px; color: var(--gray-600);
}

/* Discussions tab */
.discussion-thread {
  background: var(--paper);
  border: 1px solid var(--gray-200);
  border-radius: 14px;
  margin-bottom: 12px;
  overflow: hidden;
}
.thread-header {
  padding: 16px 20px;
  border-bottom: 1px solid var(--gray-200);
  display: flex; align-items: center; justify-content: space-between;
  background: var(--cream);
}
.thread-title {
  font-weight: 700; font-size: 15px; color: var(--ink-900);
}
.thread-meta {
  font-size: 12px; color: var(--gray-600);
}
.thread-body {
  padding: 16px 20px;
  display: flex; gap: 12px;
}
.thread-avatar {
  width: 36px; height: 36px;
  border-radius: 10px;
  background: linear-gradient(135deg, var(--ink-700), var(--teal-600));
  color: white;
  display: flex; align-items: center; justify-content: center;
  font-weight: 600;
  flex-shrink: 0;
}
.thread-preview {
  font-size: 13px;
  color: var(--gray-700);
  line-height: 1.7;
}

/* ============================================================
   🆕 v4 — Error pages
   ============================================================ */
.error-page {
  min-height: 100vh;
  display: flex; align-items: center; justify-content: center;
  padding: 32px;
  background: var(--cream);
  flex-direction: column;
}
.error-visual {
  font-family: var(--font-display);
  font-size: 180px;
  font-weight: 900;
  color: var(--ink-100);
  line-height: 1;
  letter-spacing: -0.05em;
  margin-bottom: -30px;
  position: relative;
}
.error-visual::after {
  content: attr(data-num);
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, var(--ink-800), var(--teal-500));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  opacity: 0.25;
}
.error-title {
  font-family: var(--font-display);
  font-size: 36px;
  font-weight: 800;
  color: var(--ink-900);
  margin-bottom: 12px;
}
.error-desc {
  font-size: 16px;
  color: var(--gray-600);
  max-width: 500px;
  text-align: center;
  line-height: 1.8;
  margin-bottom: 32px;
}
.error-actions {
  display: flex; gap: 12px;
}

/* ============================================================
   🆕 v4 — Responsive improvements
   ============================================================ */
@media (max-width: 900px) {
  .journey-steps, .testimonials-grid {
    grid-template-columns: 1fr !important;
    gap: 32px;
  }
  .journey-steps::before { display: none; }
  .final-cta h2 { font-size: 28px; }
  .error-visual { font-size: 120px; }
}

/* ============================================================
   🆕 v5 — تحسينات مستوى المنصة
   Team: UX Director + Accessibility + Frontend Architect
   ============================================================ */

/* ==== v5.1 Character Counter ==== */
.textarea-wrap { position: relative; }
.char-counter {
  position: absolute;
  bottom: 10px;
  left: 14px;
  font-size: 11px;
  color: var(--gray-500);
  background: rgba(255, 255, 255, 0.85);
  padding: 2px 8px;
  border-radius: 100px;
  pointer-events: none;
  font-variant-numeric: tabular-nums;
  transition: color 0.15s;
}
.char-counter.warn { color: var(--warning); font-weight: 600; }
.char-counter.err  { color: var(--danger); font-weight: 700; }

/* ==== v5.2 Tooltips ==== */
[data-tooltip] {
  position: relative;
}
[data-tooltip]::before,
[data-tooltip]::after {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.15s 0.4s var(--ease-out), transform 0.15s 0.4s var(--ease-out);
  z-index: 10000;
}
[data-tooltip]::before {
  content: attr(data-tooltip);
  bottom: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%) translateY(4px);
  padding: 6px 10px;
  background: var(--ink-900);
  color: white;
  border-radius: 6px;
  font-size: 12px;
  white-space: nowrap;
  font-weight: 500;
  box-shadow: var(--shadow-md);
}
[data-tooltip]::after {
  content: '';
  bottom: calc(100% + 2px);
  left: 50%;
  transform: translateX(-50%);
  border: 5px solid transparent;
  border-top-color: var(--ink-900);
}
[data-tooltip]:hover::before,
[data-tooltip]:focus-visible::before {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}
[data-tooltip]:hover::after,
[data-tooltip]:focus-visible::after {
  opacity: 1;
}

/* ==== v5.3 Toast Notifications ==== */
.toast-stack {
  position: fixed;
  top: 80px;
  left: 24px;
  z-index: 10001;
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-width: 360px;
}
.toast {
  background: white;
  border: 1px solid var(--gray-200);
  border-radius: 12px;
  box-shadow: var(--shadow-lg);
  padding: 12px 16px 12px 14px;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-width: 300px;
  animation: toastIn 0.3s var(--ease-out);
  border-right: 4px solid var(--teal-500);
  position: relative;
}
.toast.toast-success { border-right-color: var(--success); }
.toast.toast-warning { border-right-color: var(--warning); }
.toast.toast-danger  { border-right-color: var(--danger); }

.toast-icon {
  width: 32px; height: 32px;
  border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  background: var(--teal-50);
  color: var(--teal-600);
}
.toast.toast-success .toast-icon { background: var(--success-bg); color: var(--success); }
.toast.toast-warning .toast-icon { background: var(--warning-bg); color: var(--warning); }
.toast.toast-danger  .toast-icon { background: var(--danger-bg);  color: var(--danger); }
.toast-icon i { font-size: 18px; }

.toast-body { flex: 1; min-width: 0; }
.toast-title {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 13px;
  color: var(--ink-900);
  margin-bottom: 2px;
}
.toast-msg {
  font-size: 13px;
  color: var(--gray-700);
  line-height: 1.5;
}
.toast-close {
  background: none; border: none;
  color: var(--gray-500);
  cursor: pointer;
  padding: 2px;
  border-radius: 4px;
  align-self: flex-start;
}
.toast-close:hover { background: var(--gray-100); color: var(--gray-700); }

@keyframes toastIn {
  from { opacity: 0; transform: translateX(-20px); }
  to   { opacity: 1; transform: translateX(0); }
}
@keyframes toastOut {
  to { opacity: 0; transform: translateX(-20px); }
}

/* ==== v5.4 Notifications Panel ==== */
.notif-panel {
  position: fixed;
  top: 0;
  left: -440px;
  width: 400px;
  height: 100vh;
  background: white;
  box-shadow: var(--shadow-xl);
  z-index: 9999;
  transition: left 0.3s var(--ease-out);
  display: flex;
  flex-direction: column;
  border-right: 1px solid var(--gray-200);
}
.notif-panel.open { left: 0; }

.notif-panel-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(15, 26, 58, 0.4);
  z-index: 9998;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s;
}
.notif-panel-backdrop.open { opacity: 1; pointer-events: auto; }

.notif-panel-header {
  padding: 20px 24px;
  border-bottom: 1px solid var(--gray-200);
  display: flex; justify-content: space-between; align-items: center;
}
.notif-panel-title {
  font-family: var(--font-display);
  font-size: 18px;
  font-weight: 700;
  color: var(--ink-900);
}
.notif-panel-tabs {
  display: flex; gap: 4px;
  padding: 12px 16px 0;
  border-bottom: 1px solid var(--gray-200);
}
.notif-panel-tab {
  padding: 8px 14px;
  font-size: 13px;
  color: var(--gray-600);
  cursor: pointer;
  border-bottom: 2px solid transparent;
  margin-bottom: -1px;
  transition: all 0.15s;
}
.notif-panel-tab:hover { color: var(--ink-800); }
.notif-panel-tab.active {
  color: var(--ink-800);
  border-bottom-color: var(--teal-500);
  font-weight: 600;
}
.notif-panel-body {
  flex: 1;
  overflow-y: auto;
  padding: 8px;
}
.notif-panel-item {
  padding: 14px 16px;
  border-radius: 10px;
  display: flex;
  gap: 12px;
  cursor: pointer;
  transition: background 0.15s;
  border-right: 3px solid transparent;
}
.notif-panel-item:hover { background: var(--gray-100); }
.notif-panel-item.unread {
  background: var(--teal-50);
  border-right-color: var(--teal-500);
}
.notif-panel-item.unread:hover { background: var(--teal-100); }

.notif-item-icon {
  width: 36px; height: 36px;
  border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  background: var(--ink-100); color: var(--ink-800);
  flex-shrink: 0;
}
.notif-item-icon i { font-size: 18px; }
.notif-item-icon.accent { background: var(--teal-50); color: var(--teal-600); }
.notif-item-icon.success { background: var(--success-bg); color: var(--success); }
.notif-item-icon.warning { background: var(--warning-bg); color: var(--warning); }

.notif-item-content { flex: 1; min-width: 0; }
.notif-item-title {
  font-size: 13px;
  font-weight: 700;
  color: var(--ink-900);
  margin-bottom: 2px;
}
.notif-item-desc {
  font-size: 12px;
  color: var(--gray-600);
  line-height: 1.5;
}
.notif-item-time {
  font-size: 11px;
  color: var(--gray-500);
  margin-top: 4px;
}
.notif-panel-footer {
  padding: 14px 20px;
  border-top: 1px solid var(--gray-200);
  display: flex; justify-content: space-between; align-items: center;
  font-size: 13px;
}
.notif-panel-footer a {
  color: var(--teal-600);
  text-decoration: none;
  font-weight: 600;
}
.notif-panel-footer a:hover { color: var(--teal-700); }

/* ==== v5.5 Bottom Nav للجوال ==== */
.bottom-nav {
  display: none;
  position: fixed;
  bottom: 0; left: 0; right: 0;
  background: white;
  border-top: 1px solid var(--gray-200);
  padding: 8px 8px calc(8px + env(safe-area-inset-bottom, 0));
  z-index: 90;
  justify-content: space-around;
  box-shadow: 0 -4px 12px rgba(15, 26, 58, 0.05);
}
.bottom-nav-item {
  flex: 1;
  display: flex; flex-direction: column;
  align-items: center;
  gap: 2px;
  padding: 8px 4px;
  text-decoration: none;
  color: var(--gray-500);
  font-size: 11px;
  font-weight: 500;
  min-height: 48px;
  border-radius: 8px;
  transition: color 0.15s;
}
.bottom-nav-item i { font-size: 22px; }
.bottom-nav-item.active {
  color: var(--teal-600);
}
.bottom-nav-item.active i {
  color: var(--teal-500);
}

/* ==== v5.6 FAB (Floating Action Button) ==== */
.fab-support {
  position: fixed;
  bottom: 24px;
  left: 24px;
  width: 56px; height: 56px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--teal-500), var(--teal-600));
  color: white;
  border: none;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer;
  box-shadow: 0 6px 16px rgba(22, 126, 146, 0.3);
  z-index: 95;
  transition: all 0.2s var(--ease-out);
}
.fab-support:hover {
  transform: scale(1.08) translateY(-2px);
  box-shadow: 0 10px 24px rgba(22, 126, 146, 0.4);
}
.fab-support i { font-size: 26px; }

/* ==== v5.7 Accessibility: Focus rings ==== */
*:focus { outline: none; }
button:focus-visible,
a:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
[tabindex]:focus-visible,
details summary:focus-visible,
.score-dot:focus-visible,
.tab:focus-visible,
.nav-link:focus-visible,
.demo-chip:focus-visible,
.notif-btn:focus-visible,
.user-chip:focus-visible {
  outline: 2px solid var(--teal-500);
  outline-offset: 2px;
  border-radius: 6px;
}
.btn:focus-visible {
  box-shadow: 0 0 0 4px var(--teal-100);
}

/* Skip-to-content link (a11y) */
.skip-link {
  position: absolute;
  top: -40px;
  right: 10px;
  background: var(--ink-800);
  color: white;
  padding: 10px 16px;
  border-radius: 8px;
  text-decoration: none;
  font-size: 13px;
  font-weight: 600;
  z-index: 10000;
  transition: top 0.2s;
}
.skip-link:focus-visible {
  top: 10px;
}

/* sr-only للنصوص البديلة لقارئ الشاشة */
.sr-only {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* ==== v5.8 Pagination للخريجين ==== */
.pagination {
  display: flex; align-items: center; justify-content: center;
  gap: 6px;
  margin-top: 32px;
  padding-top: 28px;
  border-top: 1px solid var(--gray-200);
}
.page-btn {
  min-width: 40px; height: 40px;
  padding: 0 12px;
  border: 1px solid var(--gray-200);
  background: white;
  border-radius: 8px;
  font-weight: 600;
  font-size: 14px;
  color: var(--ink-800);
  cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: all 0.15s;
}
.page-btn:hover:not(:disabled) {
  border-color: var(--teal-400);
  background: var(--teal-50);
}
.page-btn.active {
  background: var(--ink-800);
  border-color: var(--ink-800);
  color: white;
}
.page-btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
.page-info {
  color: var(--gray-600);
  font-size: 13px;
  margin: 0 12px;
}

/* ==== v5.9 Sort dropdown ==== */
.sort-dropdown {
  position: relative;
}

/* ==== v5.10 Success Confirmation Page ==== */
.success-hero {
  max-width: 540px;
  margin: 0 auto;
  padding: 80px 32px;
  text-align: center;
}
.success-circle {
  width: 120px; height: 120px;
  margin: 0 auto 32px;
  border-radius: 50%;
  background: var(--success-bg);
  display: flex; align-items: center; justify-content: center;
  position: relative;
  animation: successPop 0.6s var(--ease-out);
}
.success-circle::before {
  content: '';
  position: absolute;
  inset: -8px;
  border-radius: 50%;
  border: 2px solid var(--success);
  opacity: 0.3;
  animation: successRing 1.2s var(--ease-out);
}
.success-circle i {
  font-size: 60px;
  color: var(--success);
}
@keyframes successPop {
  0% { transform: scale(0); }
  70% { transform: scale(1.1); }
  100% { transform: scale(1); }
}
@keyframes successRing {
  from { transform: scale(0.95); opacity: 0.6; }
  to   { transform: scale(1.15); opacity: 0; }
}
.success-title {
  font-family: var(--font-display);
  font-size: 32px;
  font-weight: 800;
  color: var(--ink-900);
  margin-bottom: 12px;
}
.success-subtitle {
  font-size: 16px;
  color: var(--gray-700);
  line-height: 1.8;
  margin-bottom: 32px;
}
.success-refnum {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 10px 20px;
  background: var(--ink-50);
  border: 1px dashed var(--ink-600);
  border-radius: 12px;
  font-family: var(--font-display);
  font-weight: 700;
  color: var(--ink-800);
  margin-bottom: 32px;
}
.success-next {
  text-align: right;
  background: var(--paper);
  border: 1px solid var(--gray-200);
  border-radius: 14px;
  padding: 24px;
  margin-top: 32px;
}
.success-next-title {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 15px;
  color: var(--ink-900);
  margin-bottom: 14px;
}
.success-next-list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.success-next-list li {
  display: flex;
  gap: 12px;
  padding: 10px 0;
  font-size: 14px;
  color: var(--gray-700);
  line-height: 1.6;
  border-bottom: 1px solid var(--gray-100);
}
.success-next-list li:last-child { border-bottom: none; }
.success-next-list li i {
  color: var(--teal-500);
  font-size: 20px;
  flex-shrink: 0;
  margin-top: 2px;
}

/* ==== v5.11 Email Verification Page ==== */
.verify-page {
  min-height: 100vh;
  display: flex; align-items: center; justify-content: center;
  padding: 32px;
  background: var(--cream);
}
.verify-card {
  max-width: 440px;
  width: 100%;
  background: white;
  border: 1px solid var(--gray-200);
  border-radius: 18px;
  padding: 40px 32px;
  text-align: center;
  box-shadow: var(--shadow-sm);
}
.verify-icon-wrap {
  width: 80px; height: 80px;
  margin: 0 auto 24px;
  border-radius: 50%;
  background: var(--teal-50);
  display: flex; align-items: center; justify-content: center;
}
.verify-icon-wrap i {
  font-size: 40px;
  color: var(--teal-600);
}

/* ==== v5.12 Real-time score calc ==== */
.eval-total {
  padding: 16px 20px;
  background: linear-gradient(135deg, var(--ink-800), var(--ink-700));
  border-radius: 12px;
  display: flex; justify-content: space-between; align-items: center;
  color: white;
  margin-bottom: 18px;
}
.eval-total-label {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.7);
  margin-bottom: 2px;
}
.eval-total-value {
  font-family: var(--font-display);
  font-size: 32px;
  font-weight: 800;
  line-height: 1;
}
.eval-total-meta {
  text-align: left;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.7);
}

/* ==== v5.13 Kanban add task button ==== */
.kanban-add-task {
  width: 100%;
  padding: 10px;
  border: 2px dashed var(--gray-300);
  background: transparent;
  border-radius: 8px;
  color: var(--gray-600);
  font-size: 13px;
  font-weight: 500;
  cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  gap: 6px;
  margin-top: 8px;
  transition: all 0.15s;
}
.kanban-add-task:hover {
  border-color: var(--teal-400);
  color: var(--teal-600);
  background: var(--teal-50);
}

/* ==== v5.14 Verified badge ==== */
.verified-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--teal-600);
  font-size: 13px;
  font-weight: 600;
}
.verified-badge i { font-size: 16px; }

/* ==== v5.15 Print CSS ==== */
@media print {
  .app-topbar, .app-footer, .demo-switcher,
  .notif-panel, .notif-panel-backdrop,
  .bottom-nav, .fab-support,
  .toast-stack, .skip-link { display: none !important; }
  body { background: white; }
  .page { display: block !important; }
  a { color: black; text-decoration: underline; }
  .card, .section-card { box-shadow: none; border: 1px solid #ccc; }
}

/* ==== v5.16 Responsive breakpoints مُحسّنة ==== */
@media (max-width: 900px) {
  .bottom-nav { display: flex; }
  .topbar-nav { display: none !important; }
  .app-main { padding-bottom: 80px; }
  .fab-support { bottom: 88px; }
  .demo-switcher { bottom: 80px; }
}
@media (max-width: 640px) {
  .notif-panel { width: 100%; left: -100%; }
}
@media (max-width: 375px) {
  .app-main { padding: 16px 12px 80px; }
  .welcome-title { font-size: 20px; }
  .stat-tile-value { font-size: 26px; }
  .page-title { font-size: 22px; }
}

/* ==== v5.17 prefers-reduced-motion (مُحسّن) ==== */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
  .fc-1, .fc-2, .fc-3 { animation: none !important; }
}

/* ==== v5.18 touch targets (WCAG 2.5.8) ==== */
@media (pointer: coarse) {
  .score-dot { min-width: 28px; min-height: 28px; }
  .nav-link, .bottom-nav-item, .notif-btn, .user-chip { min-height: 44px; }

/* ============================================================
   v6 — Footer مُحسَّن ومرتب
   ============================================================ */
.app-footer {
  background: var(--ink-900);
  color: white;
  padding: 64px 24px 24px;
  margin-top: 60px;
  direction: rtl;
}
.footer-inner {
  max-width: 1280px;
  margin: 0 auto;
}
.footer-grid {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr 1fr 1.3fr;
  gap: 48px;
  margin-bottom: 40px;
  align-items: start;
}
.footer-col {
  text-align: right;
}
.footer-col-brand .footer-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
  text-decoration: none;
  color: white;
}
.footer-col-brand .brand-logo {
  background: var(--teal-500);
  color: white;
  width: 48px;
  height: 48px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-weight: 800;
  font-size: 24px;
  flex-shrink: 0;
}
.footer-col-brand .brand-name {
  color: white;
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 18px;
  line-height: 1.2;
}
.footer-col-brand .brand-tag {
  color: rgba(255,255,255,0.55);
  font-size: 12px;
  margin-top: 2px;
}
.footer-desc {
  color: rgba(255,255,255,0.65);
  font-size: 13px;
  line-height: 2;
  max-width: 320px;
}
.footer-title {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 14px;
  color: white;
  margin: 0 0 18px;
  letter-spacing: 0.3px;
}
.footer-col ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer-col ul li {
  margin-bottom: 10px;
}
.footer-col ul li a {
  color: rgba(255,255,255,0.62);
  text-decoration: none;
  font-size: 13px;
  transition: color 0.15s;
}
.footer-col ul li a:hover {
  color: white;
}
.footer-contact li {
  display: flex;
  align-items: center;
  gap: 8px;
  color: rgba(255,255,255,0.62);
  font-size: 13px;
  margin-bottom: 10px;
}
.footer-contact li i {
  color: var(--teal-400);
  font-size: 16px;
  flex-shrink: 0;
}
.footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 24px;
  border-top: 1px solid rgba(255,255,255,0.08);
  color: rgba(255,255,255,0.45);
  font-size: 12px;
  flex-wrap: wrap;
  gap: 16px;
}
.footer-badges {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}
.footer-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: rgba(255,255,255,0.55);
  font-size: 12px;
}
.footer-badge i { color: var(--teal-400); font-size: 14px; }

@media (max-width: 1024px) {
  .footer-grid {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 36px;
  }
  .footer-col-brand {
    grid-column: 1 / -1;
  }
}
@media (max-width: 640px) {
  .footer-grid {
    grid-template-columns: 1fr 1fr;
    gap: 28px;
  }
  .footer-col-brand {
    grid-column: 1 / -1;
  }
  .footer-bottom {
    flex-direction: column;
    text-align: center;
    align-items: center;
  }
  .app-footer { padding: 48px 20px 20px; }
}
@media (max-width: 420px) {
  .footer-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
