/* أيقونات محلية خفيفة؛ تمنع تنزيل خط Font Awesome وملف CSS كامل. */
.fa-solid,.fa-regular{display:inline-block;width:1.25em;text-align:center;font-style:normal;font-family:Arial,sans-serif;line-height:1}
.fa-house::before{content:"⌂"}.fa-chart-pie::before{content:"◕"}.fa-folder-open::before{content:"▣"}.fa-newspaper::before{content:"▤"}
.fa-users::before{content:"♟"}.fa-tag::before{content:"◆"}.fa-key::before{content:"⚿"}.fa-star::before{content:"★"}
.fa-right-to-bracket::before{content:"↪"}.fa-arrow-right-from-bracket::before{content:"↩"}.fa-arrow-right::before{content:"→"}.fa-chevron-left::before{content:"‹"}
.fa-file-pdf::before{content:"PDF";font-size:.62em;font-weight:800}.fa-file-excel::before{content:"XLS";font-size:.58em;font-weight:800}.fa-file-word::before{content:"DOC";font-size:.58em;font-weight:800}
.fa-eye::before{content:"◉"}.fa-eye-slash::before{content:"⊘"}.fa-xmark::before{content:"×"}.fa-check::before{content:"✓"}
.fa-clock::before{content:"◷"}.fa-calendar::before{content:"▦"}.fa-copy::before{content:"▢"}.fa-rotate-right::before{content:"↻"}
.fa-user-plus::before{content:"+♟";font-size:.72em}.fa-paper-plane::before{content:"➤"}.fa-share-from-square::before{content:"↗"}
/* ════════════════════════════════════
   DESIGN SYSTEM
════════════════════════════════════ */
:root {
  /* ─ الثيم الفاتح (ذكاء AI) — خلفية بيضاء + أزرق #2563EB + برتقالي #FF8C00 ─ */
  --ink:      #FFFFFF;       /* الخلفية العامة — أبيض نقي */
  --ink2:     #F8FAFC;       /* خلفية الأقسام */
  --ink3:     #F1F5F9;       /* خلفية البطاقات */
  --ink4:     #E2E8F0;       /* فواصل ناعمة */
  --panel:    #FFFFFF;       /* لوحات الإدارة/النماذج */
  --panel2:   #F8FAFC;
  /* ─ ألوان الهوية ─ */
  --gold:     #2563EB;
  --gold2:    #3B82F6;
  --gold3:    #60A5FA;
  --gold-dim: rgba(37,99,235,0.08);
  --gold-glow:rgba(37,99,235,0.22);
  --accent:       #C2410C;
  --accent-dim:   rgba(255,140,0,0.08);
  --accent-glow:  rgba(255,140,0,0.25);
  --teal:     #0EA5E9;
  --teal-dim: rgba(14,165,233,0.08);
  --rose:     #EF4444;
  --green:    #10B981;
  --border:   rgba(37,99,235,0.18);
  --border2:  rgba(15,23,42,0.08);
  --border3:  rgba(15,23,42,0.04);
  --text:     #0F172A;                       /* النص الأساسي — كحلي داكن */
  --text2:    rgba(15,23,42,0.72);
  --text3:    #475569;
  --text4:    rgba(15,23,42,0.2);
  --shadow:   0 4px 20px rgba(37,99,235,0.08);
  --shadow-lg:0 12px 40px rgba(37,99,235,0.14);
  --r:        12px;
  --r2:       20px;
  --r3:       28px;
  --transition: all 0.3s cubic-bezier(0.4,0,0.2,1);
}

* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:auto; }
body {
  font-family:'Cairo',sans-serif;
  background:var(--ink);
  background-image:
    linear-gradient(rgba(37,99,235,0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(37,99,235,0.04) 1px, transparent 1px);
  background-size:48px 48px;
  color:var(--text);
  min-height:100vh;
  overflow-x:hidden;
  cursor:auto;
  display:flex;
  flex-direction:column;
}

/* ─── CUSTOM CURSOR ─── */
.cursor {
  position:fixed; z-index:9999; pointer-events:none;
  width:10px; height:10px; background:var(--gold);
  border-radius:50%; transform:translate(-50%,-50%);
  transition:transform 0.1s, width 0.3s, height 0.3s, opacity 0.3s;
}
.cursor-ring {
  position:fixed; z-index:9998; pointer-events:none;
  width:36px; height:36px;
  border:1.5px solid rgba(37,99,235,0.45);
  border-radius:50%; transform:translate(-50%,-50%);
  transition:transform 0.12s ease, width 0.3s, height 0.3s;
}
.cursor.expand { width:20px; height:20px; }
.cursor-ring.expand { width:56px; height:56px; border-color:var(--gold); }
/* إخفاء المؤشر المخصص ومؤشر النظام على الأجهزة اللمسية */
@media (hover:none),(pointer:coarse){
  .cursor,.cursor-ring{display:none!important;}
  *{cursor:none!important;}
}

/* ─── SCROLLBAR ─── */
::-webkit-scrollbar { width:6px; }
::-webkit-scrollbar-track { background:var(--ink2); }
::-webkit-scrollbar-thumb { background:var(--gold); border-radius:3px; }
::-webkit-scrollbar-thumb:hover { background:var(--gold2); }

/* ─── PAGE SYSTEM ─── */
.page { display:none; }
.page.active { display:block; flex:1 0 auto; animation:pageIn 0.5s cubic-bezier(0.4,0,0.2,1); min-height:calc(100vh - 68px); }
@keyframes pageIn {
  from { opacity:0; transform:translateY(20px); }
  to   { opacity:1; transform:none; }
}

/* ─── NAV ─── */
nav {
  position:fixed; top:0; left:0; right:0; z-index:200;
  height:68px; padding:0 48px;
  display:flex; align-items:center; justify-content:space-between;
  background:rgba(255,255,255,0.85);
  backdrop-filter:blur(24px) saturate(180%);
  border-bottom:1px solid var(--border2);
  transition:var(--transition);
}
nav.scrolled {
  background:rgba(255,255,255,0.96);
  border-bottom-color:var(--border);
  box-shadow:0 4px 28px rgba(37,99,235,0.10);
}
.nav-logo {
  display:flex; align-items:center; gap:10px;
  cursor:pointer; text-decoration:none;
}
.logo-mark {
  width:38px; height:38px;
  background:linear-gradient(135deg,var(--gold),var(--gold2));
  border-radius:10px;
  display:flex; align-items:center; justify-content:center;
  font-family:'Cairo',sans-serif; font-size:1.3rem; color:#fff;
  font-weight:700;
  box-shadow:0 0 20px var(--gold-glow);
  transition:var(--transition);
}
.nav-logo:hover .logo-mark { transform:rotate(-5deg) scale(1.05); }
/* الشعار: تحويل المحتوى الأبيض الأصلي إلى الأزرق #2563EB */
.brand-logo-img {
  display:block;
  filter:none;
  transition:transform 0.25s ease;
}
.nav-logo:hover .brand-logo-img { transform: scale(1.04); }
.logo-text {
  font-family:'Cairo',sans-serif; font-size:1.5rem;
  color:var(--gold);
  -webkit-text-fill-color:var(--gold);
  font-weight:800;
  letter-spacing:0.2px;
}
.logo-sub {
  font-size:0.65rem; color:var(--text3); font-weight:500;
  display:block; margin-top:-4px; letter-spacing:0.5px;
  -webkit-text-fill-color:var(--text3);
}
.nav-links { display:flex; gap:4px; align-items:center; }
.nav-link {
  font-size:0.8rem; font-weight:500; color:var(--text2);
  padding:7px 14px; border-radius:8px; cursor:pointer;
  transition:var(--transition); border:1px solid transparent;
  position:relative;
}
.nav-link::after {
  content:''; position:absolute; bottom:4px; right:50%; left:50%;
  height:1px; background:var(--gold);
  transition:all 0.3s; opacity:0;
}
.nav-link:hover { color:var(--text); background:var(--border3); }
.nav-link:hover::after { right:14px; left:14px; opacity:1; }
.nav-link.active { color:var(--gold); }
.nav-cta {
  background:linear-gradient(135deg,var(--gold),#1D4ED8);
  color:#fff; font-family:'Cairo',sans-serif;
  font-size:0.82rem; font-weight:700; padding:9px 22px;
  border-radius:10px; cursor:pointer; border:none;
  transition:var(--transition); position:relative; overflow:hidden;
  letter-spacing:0.3px;
}
.nav-cta::before {
  content:''; position:absolute; inset:0;
  background:linear-gradient(135deg,#60A5FA,var(--gold));
  opacity:0; transition:opacity 0.3s;
}
.nav-cta:hover::before { opacity:1; }
.nav-cta:hover { transform:translateY(-1px); box-shadow:0 6px 24px var(--gold-glow); }
.nav-cta span { position:relative; z-index:1; }

/* ─── TABLET NAV ─── */
@media(min-width:641px) and (max-width:1024px){
  nav { height:78px; padding:0 32px; }
  .logo-text { font-size:1.65rem; }
  .logo-img { height:38px !important; }
  .logo-mark { width:42px; height:42px; font-size:1.45rem; }
  .nav-link { font-size:0.72rem; padding:6px 8px; }
  .nav-login-btn { font-size:0.88rem; padding:8px 18px; }
}
/* ─── AUTH NAV ─── */
.nav-login-btn {
  font-size:0.8rem; font-weight:600; color:var(--text2);
  padding:7px 16px; border-radius:8px; cursor:pointer;
  border:1px solid var(--border2); background:transparent;
  font-family:'Cairo',sans-serif; transition:var(--transition);
}
.nav-login-btn:hover { color:var(--text); border-color:var(--border); background:var(--border3); }
.nav-user-info {
  display:flex; align-items:center; gap:6px;
  font-family:'Cairo',sans-serif;
}
.nav-user-name {
  font-size:0.82rem; font-weight:700; color:var(--text);
}
.nav-user-role {
  font-size:0.72rem; font-weight:400; color:var(--text3);
}
@media (max-width:768px) {
  .nav-user-info { display:none !important; }
}
.nav-avatar {
  width:36px; height:36px; border-radius:50%;
  background:linear-gradient(135deg,var(--gold),#1D4ED8);
  color:#fff; font-family:'Cairo',sans-serif;
  font-size:0.95rem; font-weight:700; cursor:pointer;
  display:none; align-items:center; justify-content:center;
  position:relative; transition:var(--transition);
  box-shadow:0 0 0 2px var(--border);
}
.nav-avatar:hover { box-shadow:0 0 0 3px var(--gold); }
.nav-dropdown {
  position:absolute; top:calc(100% + 10px); left:0;
  background:var(--panel); border:1.5px solid var(--border);
  border-radius:var(--r2); min-width:190px;
  box-shadow:0 16px 48px rgba(0,0,0,0.5);
  padding:8px; display:none; z-index:500;
  animation:fadeIn 0.2s ease;
}
.nav-avatar.open .nav-dropdown { display:block; }
.nav-dropdown-user { padding:10px 12px 12px; border-bottom:1px solid var(--border2); margin-bottom:6px; }
.nd-name  { font-size:0.82rem; font-weight:700; color:var(--text); }
.nd-email { font-size:0.68rem; color:var(--text3); margin-top:2px; }
.nd-item  {
  padding:9px 12px; border-radius:8px; cursor:pointer;
  font-size:0.78rem; color:var(--text2);
  display:flex; align-items:center; gap:8px;
  transition:var(--transition);
}
.nd-item:hover { background:var(--border3); color:var(--text); }
.nd-item.danger { color:var(--rose); }
.nd-item.danger:hover { background:rgba(248,113,113,0.08); }

/* ─── ADMIN GRANT-POINTS MODAL ─── */
#admin-grant-modal .mbox { max-width:380px; }
#admin-grant-modal .mgp-field { display:flex;flex-direction:column;gap:6px;margin-bottom:14px; }
#admin-grant-modal .mgp-label { font-size:0.8rem;color:var(--text3); }
#admin-grant-modal .mgp-input { background:var(--ink2);border:1px solid var(--border2);border-radius:8px;padding:10px 14px;color:var(--text);font-family:'Cairo',sans-serif;font-size:0.9rem;width:100%;box-sizing:border-box;direction:rtl; }
#admin-grant-modal .mgp-input:focus { outline:none;border-color:var(--gold); }
#admin-grant-modal .mgp-btns { display:flex;gap:10px;margin-top:18px; }

/* ─── AUTH MODAL ─── */
#auth-modal .mbox { max-width:440px; }

/* ─── AUTH MODAL — mobile fit (centered) ─── */
@media (max-width:520px) {
  #auth-modal {
    padding:16px;
    align-items:center;
    justify-content:center;
  }
  #auth-modal .mbox {
    max-width:100%;
    border-radius:20px;
    max-height:88dvh;
    overflow-y:auto;
    overflow-x:hidden;
    margin:auto;
  }
  #auth-modal .mbox-head { padding:16px 20px; }
  #auth-modal .mbox-body { padding:16px 20px 24px; }
  #auth-modal .fgroup { margin-bottom:14px; }
  #auth-modal .auth-row { grid-template-columns:1fr; gap:0; }
  #auth-modal .auth-row .fgroup { margin-bottom:14px; }
  #auth-modal .auth-submit { padding:12px; font-size:0.88rem; }
  #auth-modal .auth-tabs { margin-bottom:16px; }
}
.auth-tabs {
  display:flex; background:var(--ink3);
  border-radius:10px; padding:4px; margin-bottom:24px; gap:4px;
}
.auth-tab {
  flex:1; padding:9px; border-radius:8px; cursor:pointer;
  font-family:'Cairo',sans-serif; font-size:0.82rem; font-weight:600;
  text-align:center; color:var(--text3); border:none;
  background:transparent; transition:var(--transition);
}
.auth-tab.active { background:var(--panel); color:var(--text); box-shadow:0 2px 8px rgba(0,0,0,0.3); }
.auth-screen { display:none; }
.auth-screen.active { display:block; animation:fadeIn 0.2s ease; }
.auth-link {
  font-size:0.75rem; color:var(--gold2); cursor:pointer;
  text-decoration:underline; background:none; border:none;
  font-family:'Cairo',sans-serif; padding:0;
}
.auth-link:hover { color:var(--gold3); }
.auth-error {
  background:rgba(248,113,113,0.1); border:1px solid rgba(248,113,113,0.3);
  border-radius:8px; padding:10px 14px;
  color:var(--rose); font-size:0.78rem; margin-bottom:16px;
  display:none;
}
.auth-error.show { display:block; }
.auth-footer { text-align:center; margin-top:16px; font-size:0.75rem; color:var(--text3); }
.mlabel {
  display:block; font-size:0.7rem; font-weight:700; color:var(--text3);
  margin-bottom:7px; letter-spacing:1px; text-transform:uppercase;
}
.minput {
  width:100%; background:var(--ink2); border:1px solid var(--border2);
  border-radius:var(--r); padding:12px 14px; color:var(--text);
  font-family:'Cairo',sans-serif; font-size:0.85rem;
  transition:var(--transition);
}
.minput:focus { border-color:var(--gold); outline:none; box-shadow:0 0 0 3px var(--gold-dim); }
.pw-wrap { position:relative; }
.pw-wrap .minput { padding-left:40px; }
.pw-eye {
  position:absolute; left:12px; top:50%; transform:translateY(-50%);
  background:none; border:none; cursor:pointer; color:var(--text3);
  font-size:0.95rem; padding:4px; line-height:1;
  transition:color 0.2s;
}
.pw-eye:hover { color:var(--gold); }
.auth-submit {
  width:100%; background:linear-gradient(135deg,var(--gold),#1D4ED8);
  color:#fff; border:none; padding:14px;
  border-radius:12px; font-size:0.92rem; font-weight:700;
  cursor:pointer; font-family:'Cairo',sans-serif;
  transition:var(--transition); margin-top:4px;
  display:flex; align-items:center; justify-content:center; gap:8px;
}
.auth-submit:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgba(37,99,235,0.4); }
.auth-submit:disabled { opacity:0.6; cursor:not-allowed; transform:none; }
.auth-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.reset-token-box {
  background:var(--ink3); border:1px solid var(--border);
  border-radius:10px; padding:14px 16px; margin-top:16px;
  font-size:0.72rem; color:var(--text2); display:none;
  word-break:break-all; line-height:1.8;
}
.reset-token-box.show { display:block; }

/* ─── CANVAS BACKGROUND ─── */
#hero-canvas {
  position:absolute; inset:0; z-index:0;
  opacity:0.6;
}

/* ════════════════════════════════════
   HOME PAGE
════════════════════════════════════ */
.hero {
  position:relative; min-height:100vh;
  display:flex; flex-direction:column; justify-content:center;
  padding:120px 48px 80px; overflow:hidden;
}
.hero-bg {
  position:absolute; inset:0; z-index:0;
  background:
    radial-gradient(ellipse 70% 60% at 80% 20%, rgba(37,99,235,0.10) 0%, transparent 60%),
    radial-gradient(ellipse 50% 50% at 10% 80%, rgba(255,140,0,0.07) 0%, transparent 60%),
    radial-gradient(ellipse 40% 40% at 50% 50%, rgba(96,165,250,0.06) 0%, transparent 70%),
    linear-gradient(180deg, #FFFFFF 0%, #F1F6FF 100%);
}
.hero-grid {
  position:absolute; inset:0; z-index:0;
  background-image:
    linear-gradient(rgba(37,99,235,0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(37,99,235,0.06) 1px, transparent 1px);
  background-size:60px 60px;
  mask-image:radial-gradient(ellipse 100% 100% at 50% 0%, black 30%, transparent 80%);
}

.hero-content { position:relative; z-index:2; max-width:1200px; margin:0 auto; width:100%; }
.hero-eyebrow {
  display:inline-flex; align-items:center; gap:10px;
  margin-bottom:32px; opacity:0; animation:fadeUp 0.8s 0.2s ease forwards;
}
.eyebrow-line {
  width:32px; height:1px;
  background:linear-gradient(90deg,transparent,var(--gold));
}
.eyebrow-text {
  font-size:0.7rem; font-weight:600; color:var(--gold);
  letter-spacing:3px; text-transform:uppercase;
}

.hero-title {
  font-family:'Cairo',sans-serif;
  font-size:clamp(1.12rem,2.56vw,2.16rem);
  line-height:1.15; font-weight:700;
  margin-bottom:24px;
  opacity:0; animation:fadeUp 0.8s 0.35s ease forwards;
}
.hero-title .line-2 {
  color:var(--text);
  -webkit-text-fill-color:var(--text);
  display:inline-block;
}
.hero-title .line-3 { color:var(--text); font-style:italic; }

.hero-desc {
  max-width:540px; color:var(--text2); font-size:1rem;
  line-height:1.9; font-weight:300; margin-bottom:44px;
  opacity:0; animation:fadeUp 0.8s 0.5s ease forwards;
}

.hero-actions {
  display:flex; gap:16px; align-items:center; flex-wrap:wrap;
  opacity:0; animation:fadeUp 0.8s 0.65s ease forwards;
}
.btn-hero {
  display:inline-flex; align-items:center; gap:10px;
  background:linear-gradient(135deg,var(--gold),#1D4ED8);
  color:#fff; font-family:'Cairo',sans-serif;
  font-size:0.95rem; font-weight:700; padding:16px 36px;
  border-radius:14px; cursor:pointer; border:none;
  transition:var(--transition); position:relative; overflow:hidden;
}
.btn-hero:hover {
  transform:translateY(-3px);
  box-shadow:0 16px 40px rgba(37,99,235,0.4);
}
.btn-hero-icon {
  width:20px; height:20px;
  background:rgba(255,255,255,0.22); border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-size:0.75rem;
}
.btn-ghost {
  display:inline-flex; align-items:center; gap:8px;
  color:var(--text2); font-size:1.06rem; font-weight:600;
  font-family:'Tajawal','Cairo',sans-serif; letter-spacing:0.3px;
  padding:16px 28px; border-radius:14px; cursor:pointer;
  border:1px solid var(--border2); background:transparent;
  transition:var(--transition);
}
.btn-ghost:hover {
  border-color:var(--border); color:var(--text);
  background:var(--border3);
}

/* HERO VISUAL */
.hero-visual {
  position:absolute; left:0; top:50%; transform:translateY(-50%);
  width:45%; z-index:1; pointer-events:none;
  opacity:0; animation:fadeLeft 1s 0.8s ease forwards;
}
.hero-card-float {
  background:var(--panel);
  border:1px solid var(--border); border-radius:var(--r3);
  padding:28px; position:relative; overflow:hidden;
  backdrop-filter:blur(20px);
}
.hero-card-float::before {
  content:'';
  position:absolute; top:0; right:0; left:0; height:1px;
  background:linear-gradient(90deg,transparent,#3B82F6,transparent);
}
.hc-label {
  font-size:0.65rem; font-weight:600; color:var(--gold);
  letter-spacing:2px; text-transform:uppercase; margin-bottom:16px;
  display:flex; align-items:center; gap:8px;
}
.hc-label::before { content:''; width:6px; height:6px; background:var(--gold); border-radius:50%; animation:pulse 2s infinite; }
@keyframes pulse { 0%,100%{opacity:1;transform:scale(1);} 50%{opacity:0.5;transform:scale(0.8);} }

.hc-title { font-family:'Cairo',sans-serif; font-size:1.1rem; margin-bottom:20px; color:var(--text); }
.hc-metrics { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:16px; }
.hc-metric {
  background:var(--ink3); border:1px solid var(--border2);
  border-radius:12px; padding:14px;
}
.hc-metric-val { font-family:'Cairo',sans-serif; font-size:1.4rem; color:var(--gold); font-weight:700; }
.hc-metric-key { font-size:0.68rem; color:var(--text3); margin-top:2px; }
.hc-bar {
  background:var(--ink3); border-radius:8px; height:6px;
  margin-bottom:8px; overflow:hidden;
}
.hc-bar-fill {
  height:100%; border-radius:8px;
  background:linear-gradient(90deg,#3B82F6,#38BDF8);
  animation:barGrow 2s 1.5s ease both;
  transform-origin:right;
}
@keyframes barGrow { from{transform:scaleX(0);} to{transform:scaleX(1);} }
.hc-bar-label { display:flex; justify-content:space-between; font-size:0.68rem; color:var(--text3); }

@keyframes fadeUp { from{opacity:0;transform:translateY(30px);} to{opacity:1;transform:none;} }
@keyframes spin { to { transform:rotate(360deg); } }
@keyframes fadeLeft { from{opacity:0;transform:translate(40px,-50%);} to{opacity:0.9;transform:translate(0,-50%);} }

/* HERO STATS */
.hero-stats-row {
  display:flex; gap:0; margin-top:64px; padding-top:40px;
  border-top:1px solid var(--border2); max-width:600px;
  opacity:0; animation:fadeUp 0.8s 0.8s ease forwards;
}
.hstat { flex:1; text-align:center; padding:0 24px; position:relative; }
.hstat+.hstat::after {
  content:''; position:absolute; right:0; top:0; bottom:0;
  width:1px; background:var(--border2);
}
.hstat-n {
  font-family:'Cairo',sans-serif; font-size:2rem;
  background:linear-gradient(135deg,var(--gold),var(--teal));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text; font-weight:700; display:block;
}
.hstat-l { font-size:0.72rem; color:var(--text3); margin-top:4px; font-weight:300; }

/* ════════════════════════════════════
   SECTION COMMONS
════════════════════════════════════ */
.section { padding:100px 48px; max-width:1200px; margin:0 auto; }
.section-eyebrow {
  display:flex; align-items:center; gap:12px; margin-bottom:16px;
}
.eyebrow-dot {
  width:8px; height:8px; border-radius:50%;
  background:#3B82F6; box-shadow:0 0 10px rgba(59,130,246,0.4);
}
.eyebrow-tag {
  font-size:0.68rem; font-weight:600; color:var(--gold);
  letter-spacing:3px; text-transform:uppercase;
}
.section-title {
  font-family:'Cairo',sans-serif;
  font-size:clamp(1.6rem,3vw,2.4rem);
  font-weight:700; line-height:1.25; margin-bottom:16px;
}
.section-title .accent {
  background:linear-gradient(135deg,var(--gold),var(--teal));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text;
}
.section-sub {
  color:var(--text2); font-size:0.92rem;
  max-width:480px; line-height:1.9; font-weight:300;
}

/* ─── DIVIDER ─── */
.divider {
  height:1px; max-width:1200px; margin:0 auto;
  background:linear-gradient(90deg,transparent,var(--border),transparent);
}

/* ════════════════════════════════════
   HOW IT WORKS
════════════════════════════════════ */
.hiw-section {
  padding:100px 48px;
  background:linear-gradient(180deg,#FFFFFF 0%,#F1F6FF 100%);
  position:relative; overflow:hidden;
}
.hiw-section::before {
  content:'';
  position:absolute; top:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg,transparent,var(--border),transparent);
}
.hiw-grid {
  max-width:1200px; margin:0 auto;
  display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center;
}
.hiw-steps { display:flex; flex-direction:column; gap:0; }
.hiw-step {
  display:flex; gap:24px; padding:28px 0;
  border-bottom:1px solid var(--border3);
  cursor:pointer; transition:var(--transition);
  position:relative;
}
.hiw-step:last-child { border-bottom:none; }
.hiw-step:hover { padding-right:8px; }
.hiw-step-num {
  width:44px; height:44px; border-radius:12px; flex-shrink:0;
  background:var(--panel); border:1px solid var(--border2);
  display:flex; align-items:center; justify-content:center;
  font-family:'Cairo',sans-serif; font-size:1rem; color:var(--text3);
  transition:var(--transition); margin-top:2px;
}
.hiw-step:hover .hiw-step-num,
.hiw-step.active .hiw-step-num {
  background:var(--gold-dim); border-color:var(--gold);
  color:var(--gold); box-shadow:0 0 20px var(--gold-glow);
}
.hiw-step-content h3 { font-size:0.95rem; font-weight:700; margin-bottom:6px; }
.hiw-step-content p { font-size:0.78rem; color:var(--text3); line-height:1.7; }
.hiw-step.active .hiw-step-content h3 { color:var(--gold); }
.hiw-step.active .hiw-step-content p { color:var(--text2); }

.hiw-visual {
  background:var(--panel); border:1px solid var(--border);
  border-radius:var(--r3); overflow:hidden; position:relative;
}
.hiw-visual::before {
  content:'';
  position:absolute; top:0; right:0; left:0; height:1px;
  background:linear-gradient(90deg,transparent,#3B82F6,transparent);
}
.hiw-screen { padding:32px; }
.hiw-screen-tab {
  display:flex; gap:8px; margin-bottom:24px;
}
.hiw-tab {
  font-size:0.7rem; font-weight:600; padding:6px 14px;
  border-radius:20px; color:var(--text3); background:var(--ink3);
  transition:var(--transition); cursor:pointer;
}
.hiw-tab.active { background:var(--gold-dim); color:var(--gold); border:1px solid var(--border); }
.hiw-output { display:none; }
.hiw-output.active { display:block; animation:fadeUp 0.4s ease; }
.hiw-chart {
  background:var(--ink3); border-radius:var(--r);
  padding:20px; margin-bottom:12px;
}
.hiw-chart-bars {
  display:flex; align-items:flex-end; gap:8px; height:80px;
}
.chart-bar {
  flex:1; border-radius:4px 4px 0 0;
  background:linear-gradient(0deg,#2563EB,#60A5FA);
  opacity:0.7; transition:opacity 0.2s;
  animation:barUp 1s ease both;
}
.chart-bar:nth-child(1){height:30%;animation-delay:0.1s;}
.chart-bar:nth-child(2){height:50%;animation-delay:0.2s;}
.chart-bar:nth-child(3){height:70%;animation-delay:0.3s;}
.chart-bar:nth-child(4){height:60%;animation-delay:0.4s;}
.chart-bar:nth-child(5){height:85%;animation-delay:0.5s;}
.chart-bar:nth-child(6){height:95%;animation-delay:0.6s;}
.chart-bar:hover{opacity:1;}
@keyframes barUp{from{height:0!important;}to{}}
.hiw-kpi {
  display:grid; grid-template-columns:1fr 1fr 1fr; gap:8px;
}
.kpi-box {
  background:var(--ink3); border-radius:10px; padding:12px;
  text-align:center; border:1px solid var(--border3);
}
.kpi-val { font-family:'Cairo',sans-serif; font-size:1.1rem; color:var(--gold); font-weight:700; }
.kpi-key { font-size:0.62rem; color:var(--text3); margin-top:2px; }

/* ════════════════════════════════════
   FEATURES
════════════════════════════════════ */
.features-section {
  padding:100px 48px;
  background:var(--ink);
  position:relative;
}
.features-layout {
  max-width:1200px; margin:0 auto;
  display:grid; grid-template-columns:1fr 2fr; gap:64px; align-items:start;
}
.features-sticky { position:sticky; top:100px; }
.features-grid {
  display:grid; grid-template-columns:1fr 1fr; gap:12px;
}
.feat-card {
  background:var(--panel); border:1px solid var(--border2);
  border-radius:var(--r2); padding:28px;
  transition:var(--transition); position:relative; overflow:hidden;
  cursor:default;
}
.feat-card::after {
  content:'';
  position:absolute; inset:0; border-radius:var(--r2);
  background:linear-gradient(135deg,var(--gold-dim),transparent);
  opacity:0; transition:opacity 0.3s;
}
.feat-card:hover { border-color:var(--border); transform:translateY(-4px); }
.feat-card:hover::after { opacity:1; }
.feat-icon {
  width:52px; height:52px; border-radius:14px;
  background:var(--ink3); border:1px solid var(--border2);
  display:flex; align-items:center; justify-content:center;
  font-size:1.4rem; margin-bottom:18px;
  transition:var(--transition); position:relative; z-index:1;
}
.feat-card:hover .feat-icon {
  background:var(--gold-dim); border-color:var(--border);
  box-shadow:0 0 20px var(--gold-glow);
}
.feat-title { font-size:0.95rem; font-weight:700; margin-bottom:8px; position:relative; z-index:1; }
.feat-desc { font-size:0.78rem; color:var(--text3); line-height:1.8; position:relative; z-index:1; }

/* ════════════════════════════════════
   PRICING
════════════════════════════════════ */
.pricing-section {
  padding:100px 48px;
  background:radial-gradient(ellipse 80% 60% at 50% 0%, rgba(37,99,235,0.06) 0%,transparent 70%),
    linear-gradient(180deg,#FFFFFF 0%,#F1F6FF 100%);
  position:relative;
}
.pricing-header { text-align:center; margin-bottom:64px; }
.pricing-header .section-eyebrow { justify-content:center; }
.pricing-header .section-sub { margin:0 auto; text-align:center; }
.pricing-grid {
  max-width:1000px; margin:0 auto;
  display:grid; grid-template-columns:1fr 1fr 1fr; gap:16px;
}
.plan-card {
  background:var(--panel); border:1.5px solid var(--border2);
  border-radius:var(--r3); padding:36px; position:relative;
  transition:var(--transition); overflow:hidden;
}
.plan-card::before {
  content:''; position:absolute; inset:0;
  background:linear-gradient(145deg,var(--gold-dim),transparent);
  opacity:0; transition:opacity 0.4s;
}
.plan-card:hover { border-color:var(--border); transform:translateY(-6px); }
.plan-card:hover::before { opacity:1; }
.plan-card.featured {
  background:linear-gradient(145deg,#FFFFFF,#F1F6FF);
  border-color:var(--gold);
  box-shadow:0 0 60px rgba(37,99,235,0.18), 0 20px 60px rgba(37,99,235,0.12);
}
.plan-card.featured::before { opacity:0.5; }
.featured-badge {
  position:absolute; top:-1px; right:50%; transform:translateX(50%);
  background:linear-gradient(135deg,var(--gold),#1D4ED8);
  color:#fff; font-size:0.62rem; font-weight:700;
  padding:5px 18px; border-radius:0 0 12px 12px; white-space:nowrap;
  letter-spacing:0.5px;
}
.plan-name {
  font-size:0.68rem; font-weight:700; color:var(--text3);
  letter-spacing:3px; text-transform:uppercase; margin-bottom:14px;
  position:relative;
}
.plan-card.featured .plan-name { color:var(--gold); }
.plan-price {
  font-family:'Cairo',sans-serif; font-size:3rem; font-weight:700;
  line-height:1; margin-bottom:6px; position:relative; color:var(--text);
}
.plan-card.featured .plan-price {
  background:linear-gradient(135deg,var(--gold),var(--teal));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text;
}
.plan-price sub { font-size:1rem; vertical-align:super; }
.plan-price sup { font-size:1.2rem; }
.plan-period { font-size:0.72rem; color:var(--text3); margin-bottom:28px; font-weight:300; }
.plan-divider { height:1px; background:var(--border2); margin-bottom:24px; }
.plan-card.featured .plan-divider { background:var(--border); }
.plan-features { list-style:none; margin-bottom:32px; display:flex; flex-direction:column; gap:10px; }
.plan-features li {
  display:flex; align-items:flex-start; gap:10px;
  font-size:0.8rem; color:var(--text2); line-height:1.5;
}
.plan-features li .check {
  width:18px; height:18px; border-radius:50%; flex-shrink:0;
  background:rgba(52,211,153,0.12); border:1px solid rgba(52,211,153,0.3);
  display:flex; align-items:center; justify-content:center;
  font-size:0.6rem; color:var(--green); margin-top:1px;
}
.plan-features li.no { opacity:0.35; }
.plan-features li.no .check { background:var(--border3); border-color:var(--border2); color:var(--text3); }
.btn-plan {
  width:100%; padding:13px; border-radius:12px; cursor:pointer;
  font-family:'Cairo',sans-serif;
  font-size:0.85rem; font-weight:700; transition:var(--transition);
  border:1.5px solid var(--border2); background:transparent; color:var(--text);
}
.btn-plan:hover { border-color:var(--gold); color:var(--gold); background:var(--gold-dim); }
.btn-plan.primary {
  background:linear-gradient(135deg,var(--gold),#1D4ED8);
  color:#fff; border-color:transparent;
}
.btn-plan.primary:hover {
  transform:translateY(-2px);
  box-shadow:0 8px 24px var(--gold-glow);
}

/* ════════════════════════════════════
   TESTIMONIALS
════════════════════════════════════ */
.testi-section {
  padding:100px 48px;
  background:var(--ink); position:relative;
}
.testi-grid {
  max-width:1200px; margin:40px auto 0;
  display:grid; grid-template-columns:repeat(3,1fr); gap:16px;
}
.testi-card {
  background:var(--panel); border:1px solid var(--border2);
  border-radius:var(--r3); padding:32px; position:relative;
  transition:var(--transition);
}
.testi-card:hover { border-color:var(--border); transform:translateY(-4px); }
.testi-card:nth-child(2) { transform:translateY(-8px); }
.testi-card:nth-child(2):hover { transform:translateY(-12px); }
.quote-mark {
  font-family:'Cairo',sans-serif; font-size:4rem; line-height:1;
  color:var(--gold); opacity:0.2; position:absolute;
  top:20px; left:24px; pointer-events:none; user-select:none;
}
.testi-stars {
  color:var(--gold); font-size:0.82rem; margin-bottom:16px;
  letter-spacing:2px;
}
.testi-text {
  font-size:0.82rem; color:var(--text2); line-height:1.9;
  margin-bottom:24px; font-weight:300;
}
.testi-author { display:flex; align-items:center; gap:14px; }
.testi-avatar {
  width:44px; height:44px; border-radius:50%;
  background:linear-gradient(135deg,var(--gold-dim),var(--teal-dim));
  border:1.5px solid var(--border); display:flex; align-items:center;
  justify-content:center; font-size:1.1rem; flex-shrink:0;
}
.testi-name { font-size:0.85rem; font-weight:700; }
.testi-role { font-size:0.7rem; color:var(--text3); margin-top:2px; }
.reviews-summary{display:none;align-items:center;justify-content:center;gap:12px;margin:18px auto 0;color:var(--text2);font-size:.86rem}
.review-verified{display:inline-flex;align-items:center;gap:5px;color:#15803D;background:#DCFCE7;border:1px solid #86EFAC;border-radius:999px;padding:3px 9px;font-size:.68rem;font-weight:700}
.review-form{max-width:680px;margin:28px auto 0;background:#fff;border:1px solid rgba(37,99,235,.2);border-radius:18px;padding:24px;color:#0F172A;box-shadow:0 8px 28px rgba(37,99,235,.08)}
.review-stars-input{display:flex;justify-content:center;gap:6px;direction:ltr;margin:12px 0}.review-stars-input button{border:0;background:transparent;color:#CBD5E1;font-size:1.8rem;cursor:pointer;padding:2px}.review-stars-input button.active{color:#F59E0B}
.review-form textarea{width:100%;min-height:100px;resize:vertical;border:1px solid #CBD5E1;border-radius:10px;padding:12px;font:inherit;color:#0F172A;background:#fff;box-sizing:border-box}.review-form textarea:focus{outline:3px solid rgba(37,99,235,.18);border-color:#2563EB}
.review-empty{grid-column:1/-1;text-align:center;padding:28px;color:var(--text3);background:var(--panel);border:1px dashed var(--border2);border-radius:14px}

/* ════════════════════════════════════
   INLINE PAYMENT SYSTEM
════════════════════════════════════ */
@keyframes ip-spin   { to { transform: rotate(360deg); } }
@keyframes ip-fadeIn { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:translateY(0); } }
@keyframes ip-pulse  { 0%,100% { box-shadow:0 0 0 0 rgba(52,211,153,0.5); } 50% { box-shadow:0 0 0 14px rgba(52,211,153,0); } }
@keyframes ip-confetti {
  0%   { transform:translateY(-10px) rotate(0deg);   opacity:1; }
  100% { transform:translateY(80px)  rotate(720deg); opacity:0; }
}

/* ══════════════════════════════════════
   PAYMENT MODAL OVERLAY
══════════════════════════════════════ */
#payment-modal-overlay {
  display: none;
  position: fixed; inset: 0; z-index: 9999;
  background: rgba(15,23,42,0.55);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  align-items: center; justify-content: center;
  padding: 16px;
  animation: ip-fadeIn 0.25s ease;
}
#payment-modal-overlay.open { display: flex; }

/* البطاقة الرئيسية */
#payment-modal-card {
  background: #FFFFFF;
  border: 1px solid rgba(37,99,235,0.18);
  border-radius: 24px;
  width: 100%; max-width: 420px;
  max-height: 95vh;
  overflow: hidden;
  box-shadow: 0 30px 80px rgba(37,99,235,0.22);
  animation: ip-slideUp 0.3s cubic-bezier(0.34,1.56,0.64,1);
  scrollbar-width: none;
}
#payment-modal-card::-webkit-scrollbar { display: none; }
@keyframes ip-slideUp {
  from { transform: translateY(40px); opacity: 0; }
  to   { transform: translateY(0);    opacity: 1; }
}

/* رأس المودال */
.pmo-header {
  display: flex; align-items: center; justify-content: space-between;
  padding: 14px 24px 10px;
  border-bottom: 1px solid rgba(37,99,235,0.10);
}
.pmo-logo {
  display: flex; align-items: center; gap: 10px;
}
.pmo-logo img { height:28px; width:auto; display:block; filter:none; }
.pmo-logo-text {
  font-family: 'Cairo',sans-serif; font-size: 0.9rem;
  font-weight: 800; color: #2563EB;
}
.pmo-close {
  background: rgba(37,99,235,0.08); border: none;
  color: #475569; width: 34px; height: 34px;
  border-radius: 50%; font-size: 1rem;
  cursor: pointer; transition: all 0.2s;
  display: flex; align-items: center; justify-content: center;
}
.pmo-close:hover { background: rgba(220,38,38,0.10); color: #DC2626; }

/* السعر */
.pmo-price-row {
  text-align: center; padding: 8px 24px 6px;
  border-bottom: 1px solid rgba(37,99,235,0.10);
}
.pmo-price-label { color: #64748B; font-size: 0.7rem; font-family:'Cairo',sans-serif; margin-bottom: 0; }
.pmo-price-amount {
  font-size: 1.6rem; font-weight: 900; color: #2563EB;
  font-family: 'Cairo',sans-serif; direction: rtl; margin: -2px 0;
}
.pmo-price-sub { color: #475569; font-size: 0.7rem; font-family:'Cairo',sans-serif; margin-top: 0; }

/* جسم المودال */
.pmo-body { padding: 14px 24px; }

/* عند عرض الـ iframe — نحذف الـ padding */
.pmo-body:has(#ipc-iframe-wrap:not([style*="display:none"])) { padding: 0; }

/* ── Loader ── */
#ipc-loader {
  display: flex; flex-direction: column;
  align-items: center; justify-content: center;
  padding: 24px 24px; gap: 14px;
}
.ipc-spinner {
  width: 48px; height: 48px;
  border: 3px solid rgba(37,99,235,0.15);
  border-top-color: #2563EB;
  border-radius: 50%;
  animation: ip-spin 0.8s linear infinite;
}
#ipc-loader p {
  color: #475569; font-size: 0.88rem;
  font-family: 'Cairo',sans-serif; margin: 0; text-align: center;
}

/* ── iframe wrapper ── */
#ipc-iframe-wrap {
  border-radius: 12px;
  overflow: hidden;
  animation: ip-fadeIn 0.4s ease;
  position: relative;
  background: #fff;
}
.ipc-secure-bar {
  display: flex; align-items: center; justify-content: center; gap: 6px;
  background: #F1F6FF; color: #475569;
  font-size: 0.7rem; font-family:'Cairo',sans-serif;
  padding: 7px; border-bottom: 1px solid rgba(37,99,235,0.12);
}
#ipc-iframe {
  width: 100%; height: 560px; border: none; display: block;
}
@media (max-width: 480px) { #ipc-iframe { height: 520px; } }

.ipc-cancel-row {
  padding: 12px; background: #F1F6FF;
  text-align: center; border-top: 1px solid rgba(37,99,235,0.10);
  border-radius: 0 0 12px 12px;
}
.ipc-cancel-btn {
  background: #FFFFFF; border: 1px solid rgba(37,99,235,0.20);
  color: #475569; border-radius: 8px;
  padding: 7px 22px; font-size: 0.8rem;
  cursor: pointer; font-family: 'Cairo',sans-serif;
  transition: all 0.2s;
}
.ipc-cancel-btn:hover { border-color: rgba(220,38,38,0.5); color: #DC2626; }

/* ── Success ── */
#ipc-success {
  padding: 48px 20px; text-align: center;
  position: relative; overflow: hidden;
  animation: ip-fadeIn 0.5s ease;
}
.ipc-success-icon {
  font-size: 3.5rem; margin-bottom: 14px;
  display: block; animation: ip-pulse 2s ease infinite;
}
#ipc-success h3 {
  color: #16A34A; font-family: 'Cairo',sans-serif;
  font-size: 1.5rem; font-weight: 900; margin: 0 0 10px;
}
#ipc-success p {
  color: #475569; font-size: 0.88rem;
  font-family: 'Cairo',sans-serif; margin: 0 0 24px; line-height: 1.7;
}
.ipc-confetti-dot {
  position: absolute; width: 8px; height: 8px; border-radius: 50%;
  animation: ip-confetti 1.5s ease forwards;
}

/* ── Timeout ── */
#ipc-timeout {
  padding: 40px 20px; text-align: center;
  animation: ip-fadeIn 0.4s ease;
}
#ipc-timeout p { color: #475569; font-family:'Cairo',sans-serif; margin: 8px 0 20px; font-size:0.88rem; }

/* ── Error ── */
#ipc-error {
  padding: 40px 20px; text-align: center;
  animation: ip-fadeIn 0.4s ease;
}
#ipc-error-text { color: #DC2626; font-size: 0.85rem; font-family:'Cairo',sans-serif; margin: 8px 0 20px; }

/* ── Shared buttons ── */
.ipc-retry-btn {
  background: linear-gradient(135deg,#2563EB,#1D4ED8);
  color: #fff; border: none; border-radius: 10px;
  padding: 12px 28px; font-size: 0.9rem; font-weight: 700;
  cursor: pointer; font-family: 'Cairo',sans-serif;
  box-shadow: 0 6px 20px rgba(37,99,235,0.35);
  transition: all 0.2s;
}
.ipc-retry-btn:hover { transform: translateY(-2px); box-shadow: 0 10px 28px rgba(37,99,235,0.5); }
.ipc-go-btn {
  background: linear-gradient(135deg,#16A34A,#15803D);
  color: #fff; border: none; border-radius: 10px;
  padding: 12px 24px; font-size: 0.88rem; font-weight: 700;
  cursor: pointer; font-family: 'Cairo',sans-serif;
  box-shadow: 0 6px 20px rgba(22,163,74,0.35);
  transition: all 0.2s; margin: 4px;
}
.ipc-go-btn:hover { transform: translateY(-2px); }

/* ── footer modal ── */
.pmo-footer {
  padding: 14px 24px 20px;
  border-top: 1px solid rgba(37,99,235,0.10);
  display: flex; gap: 16px; justify-content: center; flex-wrap: wrap;
  background: #F8FBFF;
}
.pmo-trust { color: #475569; font-size: 0.68rem; font-family:'Cairo',sans-serif; display:flex; align-items:center; gap:4px; font-weight: 600; }

/* ── inline-payment-container (hidden, replaced by modal) ── */
#inline-payment-container { display: none !important; }

/* بيانات الدفع تُدخل داخل Paymob Unified Checkout فقط */
#pmo-card-form .pmo-field-wrap,
#pmo-card-form .pmo-row,
#pmo-apple-btn,
#pmo-apple-divider { display:none !important; }

/* ══════════════════════════════════════
   CUSTOM PAYMENT FORM STYLES
══════════════════════════════════════ */

/* Apple Pay زر */
.pmo-apple-btn {
  width: 100%; padding: 14px;
  background: #000; color: #fff;
  border: none; border-radius: 12px;
  font-size: 1rem; font-weight: 600;
  cursor: pointer; font-family: -apple-system, 'Cairo', sans-serif;
  display: flex; align-items: center; justify-content: center; gap: 10px;
  margin-bottom: 10px; transition: opacity 0.2s;
  letter-spacing: 0.3px;
}
.pmo-apple-btn:hover { opacity: 0.88; }

/* Google Pay زر */
.pmo-google-btn {
  width: 100%; padding: 10px;
  background: #fff; color: #3c4043;
  border: 1.5px solid #dadce0; border-radius: 12px;
  cursor: pointer; font-family: 'Cairo', sans-serif;
  display: flex; align-items: center; justify-content: center;
  margin-bottom: 18px; transition: box-shadow 0.2s;
}
.pmo-google-btn:hover { box-shadow: 0 2px 8px rgba(0,0,0,0.15); }

/* فاصل */
.pmo-divider {
  display: flex; align-items: center; gap: 10px;
  margin-bottom: 18px;
}
.pmo-divider::before, .pmo-divider::after {
  content: ''; flex: 1;
  height: 1px; background: rgba(37,99,235,0.14);
}
.pmo-divider span {
  color: #64748B; font-size: 0.75rem;
  font-family: 'Cairo', sans-serif; white-space: nowrap;
}

/* حقل الإدخال */
.pmo-field-wrap {
  position: relative; margin-bottom: 10px;
}
.pmo-input {
  width: 100%; padding: 9px 42px 9px 16px;
  background: #F8FBFF;
  border: 1.5px solid rgba(37,99,235,0.18);
  border-radius: 10px; color: #0F172A;
  font-size: 1rem;
  font-family: 'Courier New', 'Consolas', monospace;
  line-height: 1.4;
  outline: none; box-sizing: border-box;
  transition: border-color 0.2s, background 0.2s, box-shadow 0.2s;
  direction: ltr; text-align: center;
}
.pmo-input::placeholder {
  color: #94A3B8;
  font-family: 'Cairo', sans-serif;
  font-size: 0.85rem;
  direction: rtl; text-align: center;
}
.pmo-input:focus {
  border-color: rgba(37,99,235,0.55);
  background: #FFFFFF;
  box-shadow: 0 0 0 3px rgba(37,99,235,0.10);
}
.pmo-input.error { border-color: rgba(220,38,38,0.6); background: rgba(220,38,38,0.04); }
.pmo-field-icon {
  position: absolute; left: 14px; top: 50%;
  transform: translateY(-50%); font-size: 1rem;
  pointer-events: none; user-select: none;
}

/* صف MM/YY + CVC */
.pmo-row { display: flex; gap: 10px; }
.pmo-row .pmo-field-wrap { margin-bottom: 0; }

/* رسالة الخطأ */
.pmo-form-error {
  background: rgba(220,38,38,0.06);
  border: 1px solid rgba(220,38,38,0.25);
  border-radius: 8px; padding: 10px 14px;
  color: #DC2626; font-size: 0.82rem;
  font-family: 'Cairo', sans-serif;
  margin-top: 10px; text-align: right; direction: rtl;
}

/* زر الدفع الرئيسي */
.pmo-pay-btn {
  width: 100%; padding: 15px;
  background: linear-gradient(135deg, #2563EB, #1D4ED8);
  color: #fff; border: none; border-radius: 12px;
  font-size: 1.05rem; font-weight: 800;
  cursor: pointer; font-family: 'Cairo', sans-serif;
  margin-top: 14px;
  box-shadow: 0 8px 24px rgba(37,99,235,0.35);
  transition: all 0.2s; letter-spacing: 0.5px;
}
.pmo-pay-btn:hover { transform: translateY(-1px); box-shadow: 0 12px 30px rgba(37,99,235,0.5); }
.pmo-pay-btn:disabled { opacity: 0.6; cursor: not-allowed; transform: none; }

/* ── CTA BAND ── */
/* ════════════════════════════════════
   CTA BAND
════════════════════════════════════ */
.cta-band {
  padding:100px 48px; text-align:center;
  background:linear-gradient(145deg,#F8FAFC,#EFF4FB);
  position:relative; overflow:hidden;
}
.cta-band::before {
  content:'';
  position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
  width:600px; height:600px;
  background:radial-gradient(circle,rgba(59,130,246,0.10) 0%,transparent 70%);
  pointer-events:none;
}
.cta-band-content { position:relative; z-index:1; max-width:600px; margin:0 auto; }
.cta-band h2 {
  font-family:'Cairo',sans-serif; font-size:clamp(1.6rem,3vw,2.4rem);
  font-weight:700; margin-bottom:16px; line-height:1.3;
}
.cta-band p { color:var(--text2); font-size:0.92rem; margin-bottom:36px; line-height:1.9; font-weight:300; }

/* ════════════════════════════════════
   TOOL PAGE
════════════════════════════════════ */
.tool-layout {
  display:grid; grid-template-columns:320px 1fr;
  min-height:calc(100vh - 68px); padding-top:68px;
}
.tool-sidebar {
  background:linear-gradient(180deg,#F8FAFC 0%,#EFF4FB 100%); border-left:1px solid var(--border2);
  padding:36px 24px; overflow-y:auto;
  position:sticky; top:68px; height:calc(100vh - 68px);
}
.sidebar-brand {
  display:flex; align-items:center; gap:10px; margin-bottom:32px;
  padding-bottom:24px; border-bottom:1px solid var(--border2);
}
.sidebar-brand-icon {
  width:36px; height:36px; background:var(--gold-dim);
  border:1px solid var(--border); border-radius:10px;
  display:flex; align-items:center; justify-content:center; font-size:1rem;
}
.sidebar-brand-text { font-family:'Cairo',sans-serif; font-size:1.1rem; color:var(--gold); }

.wizard-nav { display:flex; flex-direction:column; gap:4px; }
.wz-step {
  display:flex; align-items:center; gap:14px;
  padding:14px 16px; border-radius:var(--r); cursor:pointer;
  transition:var(--transition); border:1px solid transparent;
}
.wz-step:hover { background:var(--border3); }
.wz-step.active { background:rgba(59,130,246,0.1); border-color:rgba(59,130,246,0.3); }
.wz-num {
  width:30px; height:30px; border-radius:50%; flex-shrink:0;
  display:flex; align-items:center; justify-content:center;
  font-size:0.72rem; font-weight:700;
  background:var(--ink3); border:1.5px solid var(--border2);
  color:var(--text3); transition:var(--transition);
}
.wz-step.active .wz-num { background:var(--gold); color:var(--ink); border-color:var(--gold); }
.wz-step.done .wz-num { background:var(--green); color:var(--ink); border-color:var(--green); }
.wz-title { font-size:0.82rem; font-weight:600; color:var(--text2); }
.wz-step.active .wz-title { color:var(--gold); }
.wz-sub { font-size:0.68rem; color:var(--text3); margin-top:2px; }

.sidebar-tip {
  background:rgba(59,130,246,0.08); border:1px solid rgba(59,130,246,0.22);
  border-radius:var(--r2); padding:18px; margin-top:24px;
}
.sidebar-tip-label {
  font-size:0.65rem; font-weight:700; color:var(--gold);
  letter-spacing:1.5px; text-transform:uppercase; margin-bottom:8px;
}
.sidebar-tip-text { font-size:0.75rem; color:var(--text2); line-height:1.7; }
.sidebar-brand-tip { display:none; }

.tool-main { padding:48px 52px; overflow-y:auto; background:var(--ink); }
.form-step { display:none; }
.form-step.active { display:block; animation:fadeUp 0.4s ease; }
.step-title {
  font-family:'Cairo',sans-serif; font-size:1.4rem; font-weight:700;
  margin-bottom:6px;
}
.step-sub { color:var(--text3); font-size:0.82rem; margin-bottom:36px; line-height:1.7; }

.fgroup { margin-bottom:22px; }
.flabel {
  display:block; font-size:0.72rem; font-weight:600;
  color:var(--text2); margin-bottom:8px; letter-spacing:0.3px;
}
.finput, .fselect, .ftextarea {
  width:100%; background:var(--ink2);
  border:1.5px solid var(--border2);
  color:var(--text); font-family:'Cairo',sans-serif;
  font-size:0.85rem; padding:12px 16px; border-radius:var(--r);
  outline:none; transition:var(--transition); direction:rtl;
}
.finput:focus, .fselect:focus, .ftextarea:focus {
  border-color:var(--gold); background:var(--ink3);
  box-shadow:0 0 0 3px var(--gold-glow);
}
.fselect option { background:var(--ink2); }
.ftextarea { resize:vertical; min-height:90px; }

/* Workers Picker — slider + buttons */
.workers-picker {
  display:flex; align-items:center; gap:10px; max-width:400px;
}
.workers-range { flex:1; min-width:0; }
.wc-btn {
  width:36px; height:36px; border-radius:10px; cursor:pointer;
  font-size:1.1rem; font-weight:700; border:1.5px solid var(--border2);
  background:var(--ink2); color:var(--text); display:flex; align-items:center;
  justify-content:center; transition:all 0.2s; flex-shrink:0;
}
.wc-btn:hover { border-color:var(--gold); color:var(--gold); background:rgba(59,130,246,0.08); }
.wc-btn:active { transform:scale(0.92); }
.chip-check{cursor:pointer;display:inline-flex;align-items:center;}
.chip-check input{display:none;}
.chip-check span{padding:6px 14px;border-radius:20px;font-size:0.78rem;background:var(--ink2);border:1px solid var(--border);color:var(--text3);transition:all 0.2s;}
.chip-check input:checked+span{background:rgba(59,130,246,0.15);border-color:rgba(59,130,246,0.4);color:#60a5fa;font-weight:600;}

.sectors-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.sector-btn {
  background:var(--ink2); border:1.5px solid var(--border2);
  color:var(--text3); font-family:'Cairo',sans-serif;
  font-size:0.72rem; font-weight:600;
  padding:12px 8px; border-radius:12px; cursor:pointer;
  transition:var(--transition); text-align:center;
}
.sector-btn:hover { border-color:var(--border); color:var(--text); }
.sector-btn.selected {
  background:var(--gold-dim); border-color:var(--gold); color:var(--gold);
  box-shadow:0 0 14px var(--gold-glow);
}

.range-wrap { display:flex; align-items:center; gap:14px; }
.range-display {
  background:var(--gold-dim); border:1px solid var(--border);
  color:var(--gold); font-size:0.78rem; font-weight:700;
  padding:7px 16px; border-radius:10px; white-space:nowrap;
  min-width:130px; text-align:center; font-family:'Cairo',sans-serif;
}
input[type=range] {
  flex:1; -webkit-appearance:none; height:4px;
  background:linear-gradient(to left,var(--gold) var(--pct,40%),var(--border2) var(--pct,40%));
  border-radius:2px; outline:none; border:none; padding:0;
}
input[type=range]::-webkit-slider-thumb {
  -webkit-appearance:none; width:18px; height:18px;
  background:var(--gold); border-radius:50%; cursor:pointer;
  box-shadow:0 0 8px var(--gold-glow);
  border:2px solid var(--ink);
}

.step-nav { display:flex; gap:12px; margin-top:36px; }
.btn-next {
  background:linear-gradient(135deg,var(--gold),#1D4ED8);
  color:#fff; font-family:'Cairo',sans-serif;
  font-size:0.88rem; font-weight:700; padding:13px 32px;
  border-radius:12px; cursor:pointer; border:none;
  transition:var(--transition); display:flex; align-items:center; gap:8px;
}
.btn-next:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgba(37,99,235,0.4); }
.btn-back {
  background:transparent; color:var(--text2);
  font-family:'Cairo',sans-serif;
  font-size:0.88rem; font-weight:600; padding:13px 24px;
  border-radius:12px; cursor:pointer; border:1.5px solid var(--border2);
  transition:var(--transition);
}
.btn-back:hover { border-color:var(--border); color:var(--text); }

/* OUTPUT */
.output-wrap { display:none; }
.output-wrap.visible { display:block; animation:fadeUp 0.5s ease; }
.output-card {
  background:#ffffff; border:1.5px solid #BFDBFE;
  border-radius:var(--r3); overflow:hidden;
  box-shadow:0 8px 40px rgba(30,58,138,0.10);
}
.output-top {
  padding:20px 28px; background:#1e3a8a;
  border-bottom:3px solid #BFDBFE;
  display:flex; align-items:center; justify-content:space-between;
}
.output-top h3 {
  font-family:'Cairo',sans-serif; font-size:1rem; color:#ffffff;
  display:flex; align-items:center; gap:8px;
}
.output-actions { display:flex; gap:10px; align-items:center; flex-wrap:wrap; }

/* زر PDF الاحترافي */
.btn-pdf {
  display:flex; align-items:center; gap:8px;
  background:linear-gradient(135deg,#1D4ED8,#2563EB);
  border:1px solid rgba(99,155,255,0.4);
  border-radius:12px; padding:10px 16px;
  cursor:pointer; color:white; transition:all 0.2s;
  font-size:0.78rem; font-weight:700; font-family:'Cairo',sans-serif;
  box-shadow:0 4px 16px rgba(37,99,235,0.35);
}
.btn-pdf:hover { transform:translateY(-2px); box-shadow:0 6px 24px rgba(37,99,235,0.5); }


/* Paywall */
.section-locked {
  position:relative; filter:blur(6px);
  user-select:none; pointer-events:none;
  max-height:180px; overflow:hidden;
  opacity:0.45;
}
.study-paywall {
  position:relative; margin-top:-20px; z-index:20;
  background:linear-gradient(to top,rgba(11,17,32,1) 0%,rgba(11,17,32,0.92) 100%);
  padding:60px 20px 40px; text-align:center;
}
.paywall-card {
  background:var(--panel2);
  border:1px solid var(--border);
  border-radius:var(--r3);
  padding:44px 36px; max-width:540px; margin:0 auto;
  box-shadow:0 24px 64px rgba(0,0,0,0.45);
}
.paywall-icon { font-size:3rem; margin-bottom:16px; }
.paywall-title { font-family:'Cairo',sans-serif; font-size:1.5rem; color:var(--gold); margin-bottom:12px; font-weight:700; }
.paywall-desc { color:var(--text2); line-height:1.9; margin-bottom:24px; font-size:0.9rem; }
.paywall-features { display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin-bottom:28px; }
.paywall-features span { background:var(--gold-dim); border:1px solid var(--border); border-radius:8px; padding:7px 14px; font-size:0.78rem; color:var(--text); }
.paywall-btn {
  background:linear-gradient(135deg,var(--gold),#1D4ED8);
  color:#fff; border:none; padding:16px 40px;
  border-radius:14px; font-size:1.05rem; font-weight:700;
  cursor:pointer; font-family:'Cairo',sans-serif;
  transition:all 0.3s; letter-spacing:0.3px;
}
.paywall-btn:hover { transform:translateY(-3px); box-shadow:0 14px 36px var(--gold-glow); }
.paywall-note { font-size:0.72rem; color:var(--text3); margin-top:14px; line-height:1.8; }

/* ── بطاقة Paywall النقاط (داخل viewer) ── */
.study-paywall-card {
  background: linear-gradient(135deg, rgba(59,130,246,0.07) 0%, rgba(99,102,241,0.05) 100%);
  border: 1.5px solid rgba(59,130,246,0.28);
  border-radius: 20px;
  padding: 40px 28px 36px;
  text-align: center;
  margin: 36px 0 20px;
  position: relative;
}
.study-paywall-card::before {
  content: '';
  position: absolute; inset: 0; border-radius: 20px;
  background: linear-gradient(180deg, transparent 0%, rgba(11,17,32,0.6) 100%);
  pointer-events: none;
}
.paywall-lock-icon { font-size: 2.8rem; margin-bottom: 14px; line-height: 1; }
.paywall-title {
  font-family:'Cairo',sans-serif; font-size: 1.3rem;
  color: var(--gold); margin-bottom: 10px; font-weight: 700;
}
.paywall-subtitle {
  color: var(--text2); font-size: 0.88rem;
  line-height: 1.8; margin-bottom: 22px; max-width: 400px; margin-inline: auto;
}
.paywall-features {
  display: flex; flex-wrap: wrap; gap: 8px;
  justify-content: center; margin-bottom: 26px;
}
.paywall-features span {
  background: rgba(59,130,246,0.09); border: 1px solid rgba(59,130,246,0.2);
  border-radius: 8px; padding: 6px 14px;
  font-size: 0.78rem; color: var(--text);
}
.paywall-actions { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.paywall-btn-primary {
  background: linear-gradient(135deg,#3B82F6,#1D4ED8);
  color: #fff; border: none; padding: 14px 32px;
  border-radius: 12px; font-size: 1rem; font-weight: 700;
  cursor: pointer; font-family:'Cairo',sans-serif;
  transition: all 0.25s; box-shadow: 0 8px 24px rgba(59,130,246,0.3);
}
.paywall-btn-primary:hover { transform: translateY(-2px); box-shadow: 0 12px 32px rgba(59,130,246,0.45); }
.paywall-btn-secondary {
  background: transparent; color: var(--text2);
  border: 1px solid var(--border); padding: 14px 28px;
  border-radius: 12px; font-size: 0.9rem; font-weight: 600;
  cursor: pointer; font-family:'Cairo',sans-serif; transition: all 0.2s;
}
.paywall-btn-secondary:hover { border-color: rgba(59,130,246,0.5); color: var(--text); }
/* ── غلاف الحجب الشفاف — Best Practice Paywall ── */
.paywall-blur-wrapper {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  margin-top: 8px;
}
.paywall-blur-content {
  filter: blur(7px);
  user-select: none;
  pointer-events: none;
  opacity: 0.55;
}
.paywall-overlay {
  position: absolute;
  inset: 0;
  background: rgba(5, 10, 25, 0.78);
  z-index: 10;
  direction: rtl;
  /* لا padding هنا — المحتوى يُدار بـ sticky inner */
}
/* المحتوى الداخلي يتبع التمرير ويبقى مرئياً دائماً */
.paywall-overlay-inner {
  position: sticky;
  top: 68px; /* أسفل الشريط العلوي مباشرةً */
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 40px 24px 32px;
  pointer-events: auto;
}
.paywall-overlay-msg {
  font-family: 'Cairo', sans-serif;
  color: #e2e8f0;
  font-size: 1.02rem;
  line-height: 2.2;
  max-width: 520px;
  margin-bottom: 24px;
  margin-top: 0;
}
.paywall-overlay-link {
  color: #3B82F6;
  font-weight: 700;
  text-decoration: underline;
  cursor: pointer;
  border: none;
  background: none;
  font-size: 1.02rem;
  font-family: 'Cairo', sans-serif;
  padding: 0;
  display: inline;
}
.paywall-overlay-btn {
  background: linear-gradient(135deg, #3B82F6, #1D4ED8);
  color: #fff;
  border: none;
  border-radius: 12px;
  padding: 15px 40px;
  font-size: 1rem;
  font-weight: 700;
  cursor: pointer;
  font-family: 'Cairo', sans-serif;
  box-shadow: 0 8px 28px rgba(59, 130, 246, 0.4);
  transition: all 0.25s;
}
.paywall-overlay-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 36px rgba(59, 130, 246, 0.55);
}
/* شريط التحذير أعلى viewer للمستخدم بلا نقاط */
.points-warning-bar {
  background: rgba(251,191,36,0.08); border-bottom: 1px solid rgba(251,191,36,0.2);
  padding: 9px 20px; text-align: center;
  font-size: 0.82rem; color: #FBBF24; direction: rtl;
  display: flex; align-items: center; justify-content: center; gap: 10px;
  flex-wrap: wrap;
}
.points-warning-bar button {
  background: rgba(251,191,36,0.15); border: 1px solid rgba(251,191,36,0.4);
  color: #FBBF24; padding: 5px 16px; border-radius: 8px;
  cursor: pointer; font-size: 0.78rem; font-family:'Cairo',sans-serif;
  white-space: nowrap;
}

/* ══════════════════════════════════════
   صفحة نجاح الدفع — page-payment-success
══════════════════════════════════════ */
.pay-success-wrap {
  min-height: 100vh; display: flex; align-items: center; justify-content: center;
  padding: 60px 20px; direction: rtl;
  background: radial-gradient(ellipse 80% 60% at 50% 0%, rgba(52,211,153,0.07) 0%, transparent 70%);
}
.pay-success-card {
  max-width: 560px; width: 100%; text-align: center;
}
/* دائرة الاختيار المتحركة */
.pay-check-circle {
  width: 96px; height: 96px; border-radius: 50%;
  background: rgba(52,211,153,0.12); border: 2.5px solid #34D399;
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto 32px; position: relative;
  animation: checkPop 0.6s cubic-bezier(0.34,1.56,0.64,1);
}
@keyframes checkPop {
  0%   { transform:scale(0); opacity:0; }
  60%  { transform:scale(1.12); }
  100% { transform:scale(1); opacity:1; }
}
.pay-check-svg { width:48px; height:48px; stroke:#34D399; stroke-width:3; fill:none;
  stroke-dasharray:60; stroke-dashoffset:60; animation:drawCheck 0.5s 0.3s ease forwards; }
@keyframes drawCheck { to { stroke-dashoffset:0; } }
.pay-success-title {
  font-family:'Cairo',sans-serif; font-size:2rem; font-weight:800;
  color:#0F172A; margin-bottom:10px; line-height:1.3;
}
.pay-success-sub {
  color:#475569; font-size:1rem; margin-bottom:32px; line-height:1.8;
}
/* بطاقة النقاط */
.pay-points-card {
  background: linear-gradient(135deg, rgba(59,130,246,0.1), rgba(99,102,241,0.07));
  border: 1.5px solid rgba(59,130,246,0.25);
  border-radius: 18px; padding: 28px 24px; margin-bottom: 28px;
}
.pay-points-number {
  font-family:'Cairo',sans-serif; font-size: 3.5rem; font-weight: 900;
  color: #3B82F6; line-height: 1; margin-bottom: 6px;
  animation: countUp 0.8s 0.5s ease both;
}
@keyframes countUp { from { opacity:0; transform:translateY(20px); } to { opacity:1; transform:none; } }
.pay-points-label { color:#94A3B8; font-size:0.88rem; margin-bottom:20px; }
.pay-perks {
  display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 0;
}
.pay-perk {
  background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.07);
  border-radius: 10px; padding: 10px 14px;
  display: flex; align-items: center; gap: 8px;
  font-size: 0.8rem; color: var(--text2);
}
.pay-perk-icon { font-size: 1.1rem; flex-shrink: 0; }
/* أزرار الإجراء */
.pay-actions { display: flex; flex-direction: column; gap: 12px; }
.pay-btn-primary {
  background: linear-gradient(135deg, #3B82F6, #1D4ED8);
  color: #fff; border: none; padding: 18px 32px;
  border-radius: 14px; font-size: 1.05rem; font-weight: 700;
  cursor: pointer; font-family:'Cairo',sans-serif;
  transition: all 0.25s; box-shadow: 0 10px 32px rgba(59,130,246,0.35);
  display: flex; align-items: center; justify-content: center; gap: 10px;
}
.pay-btn-primary:hover { transform:translateY(-3px); box-shadow: 0 16px 40px rgba(59,130,246,0.5); }
.pay-btn-secondary {
  background: rgba(59,130,246,0.08); border: 1px solid rgba(59,130,246,0.22);
  color: #60A5FA; padding: 16px 32px; border-radius: 14px;
  font-size: 0.95rem; font-weight: 600; cursor: pointer;
  font-family:'Cairo',sans-serif; transition: all 0.2s;
  display: flex; align-items: center; justify-content: center; gap: 10px;
}
.pay-btn-secondary:hover { background: rgba(59,130,246,0.14); }
/* شريط الأمان */
.pay-security-bar {
  margin-top: 24px; display: flex; align-items: center;
  justify-content: center; gap: 16px; flex-wrap: wrap;
  color: #475569; font-size: 0.72rem;
}
.pay-security-bar span { display:flex; align-items:center; gap:4px; }
/* صفحة فشل الدفع */
.pay-fail-circle {
  width: 96px; height: 96px; border-radius: 50%;
  background: rgba(248,113,113,0.1); border: 2.5px solid #F87171;
  display: flex; align-items: center; justify-content: center;
  margin: 0 auto 32px;
  font-size: 3rem; line-height: 1;
  animation: checkPop 0.5s cubic-bezier(0.34,1.56,0.64,1);
}
@media(max-width:480px) {
  .pay-success-title { font-size:1.6rem; }
  .pay-perks { grid-template-columns:1fr; }
}

/* زر دراسة جديدة */
.btn-new {
  display:flex; align-items:center; gap:7px;
  background:rgba(16,185,129,0.1);
  border:1px solid rgba(16,185,129,0.3);
  border-radius:12px; padding:10px 16px;
  cursor:pointer; color:#10B981;
  font-size:0.78rem; font-weight:600;
  transition:all 0.2s;
}
.btn-new:hover { background:rgba(16,185,129,0.2); border-color:rgba(16,185,129,0.5); }
.oaction {
  background:var(--border3); border:1px solid var(--border2);
  color:var(--text2); font-family:'Cairo',sans-serif;
  font-size:0.72rem; font-weight:600; padding:7px 14px;
  border-radius:8px; cursor:pointer; transition:var(--transition);
}
.oaction:hover { border-color:var(--gold); color:var(--gold); background:var(--gold-dim); }
.output-body {
  padding:36px; line-height:1.9; font-size:0.85rem;
  color:#1e293b;
  background:#ffffff;
  scroll-behavior:smooth;
}
.output-body h2 {
  font-family:'Cairo',sans-serif; font-size:1.35rem; color:#1D4ED8;
  margin:32px 0 12px; padding-bottom:10px;
  border-bottom:2px solid #BFDBFE;
}
.output-body h2:first-child { margin-top:0; }
/* h3 = قسم رئيسي من ## | h2 = عنوان رئيسي من # */
.output-body h3 {
  font-family:'Cairo',sans-serif; font-size:1.15rem; color:#1D4ED8;
  margin:36px 0 14px; padding:10px 14px 10px 0;
  border-right:4px solid #3B82F6; padding-right:14px;
  background:rgba(59,130,246,0.06); border-radius:0 8px 8px 0;
  clear:both;
}
.output-body h3:first-child { margin-top:0; }
/* h4 = قسم فرعي من ### */
.output-body h4 {
  font-size:0.92rem; color:#334155; margin:18px 0 8px; font-weight:700;
  padding-bottom:5px; border-bottom:1px dashed #CBD5E1;
  clear:both;
}
.output-body p { margin-bottom:10px; color:#334155; }
.output-body ul { padding-right:20px; margin-bottom:10px; color:#334155; }
.output-body li { margin-bottom:6px; color:#334155; }
.output-body hr { border:none; border-top:1.5px solid #CBD5E1; margin:18px 0; clear:both; }
/* كل study-section يأخذ عرض كامل في عمود واحد */
.output-body .study-section {
  display:block; width:100%; clear:both;
  margin-bottom:28px;
  padding-bottom:8px;
}
.output-body .table-wrap {
  display:block; width:100%; clear:both;
  overflow-x:auto; -webkit-overflow-scrolling:touch;
  margin:20px 0 28px; border-radius:10px;
  box-shadow:0 2px 14px rgba(0,0,0,0.10);
  border:1px solid #BFDBFE;
}
.output-body table {
  display:table; width:max-content; min-width:100%;
  table-layout:auto; border-collapse:collapse;
  font-size:0.82rem; background:#ffffff;
}
.output-body th {
  background:#1D4ED8 !important; color:#ffffff !important;
  padding:10px 16px; text-align:center;
  border:1px solid #2563EB; font-weight:700; font-size:0.82rem;
  white-space:nowrap; /* عناوين الأعمدة لا تُكسر */
}
.output-body td {
  padding:8px 14px; border:1px solid #DBEAFE;
  color:#1e293b !important; background:#ffffff !important;
  font-size:0.82rem; white-space:normal; text-align:right;
  vertical-align:top; min-width:90px;
  word-break:break-word; overflow-wrap:break-word;
}
.output-body tr:nth-child(even) td { background:#EFF6FF !important; color:#1e293b !important; }
.output-body tr:hover td { background:#DBEAFE !important; transition:background 0.15s; }

/* ════ فهرس المحتويات في الصفحة ════ */
.study-toc {
  background:var(--panel2); border:1px solid var(--border3);
  border-right:5px solid #1D4ED8;
  border-radius:14px; padding:20px 24px;
  margin-bottom:32px;
  max-height:420px; overflow-y:auto;
}
.study-toc-head {
  font-size:1.05rem; font-weight:800; color:#1D4ED8;
  margin-bottom:16px; display:flex; align-items:center; gap:8px;
}
.study-toc-row {
  display:flex; align-items:center; gap:8px;
  padding:10px 6px; border-bottom:1px dashed var(--border);
  font-size:0.85rem; cursor:pointer; transition:background 0.15s;
  border-radius:6px; direction:rtl; flex-wrap:nowrap;
}
.study-toc-row:last-child { border-bottom:none; }
.study-toc-row:hover { background:rgba(59,130,246,0.07); }
.study-toc-title { color:var(--text); font-weight:700; flex-shrink:1; white-space:normal; word-break:break-word; }
.study-toc-dots {
  flex:1; border-bottom:1.5px dotted #94A3B8;
  margin:0 6px; min-width:20px; height:1px; align-self:center;
}
.study-toc-num {
  color:#1D4ED8; font-size:0.78rem; font-weight:800;
  flex-shrink:0; min-width:22px; text-align:left;
}

.typing-state {
  padding:40px 28px; display:flex; align-items:center; gap:14px;
  color:var(--text3); font-size:0.82rem;
}
.typing-dots { display:flex; gap:6px; }
.dot {
  width:8px; height:8px; border-radius:50%; background:var(--gold);
  animation:dotBounce 1.3s infinite ease-in-out;
}
.dot:nth-child(2){animation-delay:0.2s;}
.dot:nth-child(3){animation-delay:0.4s;}
@keyframes dotBounce{0%,60%,100%{transform:translateY(0);}30%{transform:translateY(-10px);}}

/* ════════════════════════════════════
   BLOG PAGE
════════════════════════════════════ */
.page-hero {
  padding:140px 48px 72px;
  background:linear-gradient(180deg,#FFFFFF 0%,#F1F6FF 100%);
  position:relative; text-align:right; overflow:hidden;
}
.page-hero::after {
  content:'';
  position:absolute; bottom:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg,transparent,var(--border),transparent);
}
.articles-grid {
  display:grid; grid-template-columns:repeat(3,1fr); gap:20px;
  padding:0 48px; max-width:1200px; margin:52px auto 80px;
}
.article-card {
  background:var(--panel); border:1px solid var(--border2);
  border-radius:var(--r3); overflow:hidden; cursor:pointer;
  transition:var(--transition); display:flex; flex-direction:column;
}
.article-card:hover { transform:translateY(-6px); border-color:var(--border); }
.article-thumb {
  height:180px; display:flex; align-items:center; justify-content:center;
  font-size:3.5rem; position:relative; overflow:hidden;
}
.article-thumb::after {
  content:''; position:absolute; inset:0;
  background:linear-gradient(180deg,transparent 40%,var(--panel));
}
.article-body { padding:24px; flex:1; display:flex; flex-direction:column; }
.article-cat {
  font-size:0.62rem; font-weight:700; color:var(--gold);
  letter-spacing:2px; text-transform:uppercase; margin-bottom:10px;
}
.article-title { font-size:0.95rem; font-weight:700; margin-bottom:10px; line-height:1.55; }
.article-excerpt { font-size:0.77rem; color:var(--text3); line-height:1.8; margin-bottom:16px; flex:1; }
.article-footer {
  display:flex; justify-content:space-between; align-items:center;
  font-size:0.7rem; color:var(--text3); padding-top:14px;
  border-top:1px solid var(--border2);
}
.article-read { color:var(--gold); font-weight:700; display:flex; align-items:center; gap:4px; }

/* ══ صفحات المقالات ══ */
.internal-link { color:var(--gold); text-decoration:underline; text-decoration-style:dotted; text-underline-offset:3px; cursor:pointer; transition:color 0.2s; }
.internal-link:hover { color:#fbbf24; text-decoration-style:solid; }
.art-page { max-width:860px; margin:0 auto; padding:90px 24px 80px; }
.art-breadcrumb { display:flex; align-items:center; gap:8px; font-size:0.78rem; color:var(--text3); margin-bottom:28px; flex-wrap:wrap; position:sticky; top:68px; z-index:150; background:var(--bg); padding:12px 0; border-bottom:1px solid var(--border2); }
.art-breadcrumb span { cursor:pointer; color:var(--gold); } .art-breadcrumb span:hover { text-decoration:underline; }
.art-breadcrumb i { font-size:0.65rem; color:var(--text3); }
.art-hero { margin-bottom:36px; }
.art-cat-badge { display:inline-flex; align-items:center; gap:6px; background:rgba(59,130,246,0.12); color:var(--gold); border:1px solid rgba(59,130,246,0.25); padding:4px 14px; border-radius:20px; font-size:0.78rem; font-weight:700; margin-bottom:16px; }
.art-h1 { font-size:clamp(1.4rem,3vw,2rem); font-weight:900; line-height:1.4; margin-bottom:16px; color:var(--text); }
.art-meta { display:flex; align-items:center; gap:16px; font-size:0.78rem; color:var(--text3); flex-wrap:wrap; padding-bottom:20px; border-bottom:1px solid var(--border3); margin-bottom:32px; }
.art-meta-item { display:flex; align-items:center; gap:5px; }
.art-toc { background:var(--panel2); border:1px solid var(--border3); border-right:3px solid var(--gold); border-radius:12px; padding:20px 24px; margin-bottom:36px; }
.art-toc-title { font-size:0.82rem; font-weight:800; color:var(--text3); text-transform:uppercase; letter-spacing:1px; margin-bottom:12px; }
.art-toc ol { padding-right:20px; margin:0; }
.art-toc li { margin:6px 0; font-size:0.85rem; color:var(--text3); cursor:pointer; }
.art-toc li:hover { color:var(--gold); }
.art-body h2 { font-size:1.15rem; font-weight:800; color:var(--text); margin:36px 0 14px; padding-right:14px; border-right:4px solid var(--gold); }
.art-body h3 { font-size:1rem; font-weight:700; color:var(--text); margin:24px 0 10px; }
.art-body p { font-size:0.88rem; line-height:1.95; color:var(--text3); margin-bottom:14px; }
.art-body ul,.art-body ol { padding-right:22px; margin:12px 0 16px; }
.art-body li { font-size:0.87rem; line-height:1.85; color:var(--text3); margin-bottom:6px; }
.art-body strong { color:var(--text); font-weight:700; }
.art-table-wrap { overflow-x:auto; margin:18px 0 24px; border-radius:10px; border:1px solid var(--border3); }
.art-table { width:100%; border-collapse:collapse; font-size:0.83rem; }
.art-table th { background:var(--panel2); color:var(--gold); font-weight:700; padding:11px 14px; text-align:right; border-bottom:2px solid var(--border3); white-space:nowrap; }
.art-table td { padding:10px 14px; border-bottom:1px solid var(--border3); color:var(--text3); text-align:right; }
.art-table tr:last-child td { border-bottom:none; font-weight:700; color:var(--text); background:var(--panel2); }
.art-formula { background:var(--ink2); border:1px solid var(--border3); border-radius:10px; padding:18px 22px; margin:20px 0; font-size:0.88rem; color:var(--teal); font-weight:700; text-align:center; direction:ltr; }
.art-callout { background:rgba(59,130,246,0.07); border-right:4px solid var(--gold); border-radius:0 10px 10px 0; padding:16px 20px; margin:20px 0; font-size:0.86rem; color:var(--text3); }
.art-callout strong { color:var(--gold); }
.art-cta { background:linear-gradient(135deg,var(--ink2),var(--panel2)); border:1px solid var(--border3); border-radius:16px; padding:32px 28px; text-align:center; margin:48px 0 36px; }
.art-cta h3 { font-size:1.1rem; font-weight:800; margin-bottom:10px; }
.art-cta p { font-size:0.84rem; color:var(--text3); margin-bottom:20px; }
.art-related { margin-top:48px; padding-top:32px; border-top:1px solid var(--border3); }
.art-related-title { font-size:0.9rem; font-weight:800; color:var(--text3); margin-bottom:18px; text-transform:uppercase; letter-spacing:0.5px; }
.art-related-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:14px; }
.art-related-card { background:var(--panel2); border:1px solid var(--border3); border-radius:12px; padding:16px; cursor:pointer; transition:var(--transition); }
.art-related-card:hover { border-color:var(--gold); transform:translateY(-3px); }
.art-related-cat { font-size:0.72rem; color:var(--gold); font-weight:700; margin-bottom:6px; }
.art-related-h { font-size:0.84rem; font-weight:700; color:var(--text); line-height:1.5; }
.art-back-btn { display:inline-flex; align-items:center; gap:7px; background:var(--panel2); border:1px solid var(--border3); color:var(--text3); padding:9px 18px; border-radius:30px; font-size:0.8rem; cursor:pointer; margin-bottom:28px; transition:var(--transition); }
.art-back-btn:hover { border-color:var(--gold); color:var(--gold); }

/* ════════════════════════════════════
   SAMPLES
════════════════════════════════════ */
.samples-grid {
  display:grid; grid-template-columns:1fr 1fr; gap:16px;
  padding:0 48px; max-width:1200px; margin:52px auto 80px;
}
.sample-card {
  background:var(--panel); border:1px solid var(--border2);
  border-radius:var(--r3); padding:28px; cursor:pointer;
  transition:var(--transition); display:flex; gap:20px; align-items:flex-start;
}
.sample-card:hover { border-color:var(--border); transform:translateX(-4px); }
.sample-icon {
  width:56px; height:56px; border-radius:16px;
  background:var(--ink3); border:1px solid var(--border2);
  display:flex; align-items:center; justify-content:center;
  font-size:1.6rem; flex-shrink:0; transition:var(--transition);
}
.sample-card:hover .sample-icon { background:var(--gold-dim); border-color:var(--border); }
.sample-info { flex:1; }
.sample-sector {
  font-size:0.62rem; font-weight:700; color:var(--gold);
  letter-spacing:2px; text-transform:uppercase; margin-bottom:6px;
}
.sample-title { font-size:0.95rem; font-weight:700; margin-bottom:8px; }
.sample-desc { font-size:0.75rem; color:var(--text3); line-height:1.7; margin-bottom:12px; }
.sample-tags { display:flex; gap:6px; flex-wrap:wrap; }
.stag {
  background:var(--ink3); border:1px solid var(--border2);
  color:var(--text3); font-size:0.62rem; font-weight:600;
  padding:3px 10px; border-radius:20px;
}

/* ════════════════════════════════════
   READY STUDIES PAGE
════════════════════════════════════ */
.ready-page { max-width:1200px; margin:0 auto; padding:110px 32px 80px; }
.ready-hero { text-align:center; margin-bottom:48px; }
.ready-badge {
  display:inline-block; background:rgba(59,130,246,0.12);
  border:1px solid rgba(59,130,246,0.35); color:#3B82F6;
  font-size:0.82rem; font-weight:700; padding:5px 18px;
  border-radius:20px; margin-bottom:14px;
}
.ready-hero h1 {
  font-size:2.2rem; font-weight:800;
  background:linear-gradient(135deg,#3B82F6,#34D399);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text; margin-bottom:10px;
}
.ready-hero p { color:var(--text3); font-size:1rem; max-width:580px; margin:0 auto; line-height:1.9; }
.ready-table-wrap {
  background:var(--panel); border-radius:18px;
  box-shadow:0 8px 40px rgba(0,0,0,0.4);
  border:1px solid var(--border2); overflow:hidden;
  margin-bottom:40px;
}
.ready-table {
  width:100%; border-collapse:collapse;
  direction:rtl; font-family:'Cairo',sans-serif;
}
.ready-table thead tr { background:linear-gradient(135deg,#1D4ED8,#1e40af); }
.ready-table th {
  padding:16px 20px; color:#fff; font-size:0.9rem;
  font-weight:700; text-align:right;
  border-bottom:2px solid rgba(255,255,255,0.1);
  white-space:nowrap;
}
.ready-table th:first-child { text-align:center; width:48px; }
.ready-table tbody tr { border-bottom:1px solid var(--border2); transition:background 0.15s; }
.ready-table tbody tr:last-child { border-bottom:none; }
.ready-table tbody tr:hover td { background:rgba(59,130,246,0.05); }
.ready-table td {
  padding:18px 20px; font-size:0.88rem; color:var(--text);
  text-align:right; vertical-align:middle;
}
.ready-table td:first-child { text-align:center; }
.ready-num {
  width:32px; height:32px; border-radius:50%;
  background:rgba(59,130,246,0.12); border:1px solid rgba(59,130,246,0.3);
  color:#3B82F6; font-weight:800; font-size:0.85rem;
  display:inline-flex; align-items:center; justify-content:center;
}
.ready-study-name { font-weight:800; color:var(--text); font-size:0.92rem; }
.ready-study-sub { font-size:0.72rem; color:var(--text3); margin-top:3px; }
.ready-capital-val { font-weight:800; color:#34D399; font-size:0.92rem; }
.ready-emp-val { font-weight:700; color:var(--text2); }
.view-study-btn {
  display:inline-flex; align-items:center; gap:7px;
  background:linear-gradient(135deg,#1D4ED8,#2563EB);
  color:#fff; border:none; border-radius:25px;
  padding:9px 20px; font-size:0.8rem; font-weight:700;
  cursor:pointer; transition:all 0.2s; white-space:nowrap;
  font-family:'Cairo',sans-serif;
}
.view-study-btn:hover { transform:translateY(-2px); box-shadow:0 6px 20px rgba(29,78,216,0.45); }
.view-study-btn i { font-size:0.75rem; }
/* Study Viewer Overlay */
.study-viewer-overlay {
  position:fixed; inset:0; z-index:9999;
  background:linear-gradient(180deg,#FFFFFF 0%,#F1F6FF 100%); overflow-y:auto; overflow-x:hidden;
  animation:fadeInUp 0.3s ease;
}
@keyframes fadeInUp { from{opacity:0;transform:translateY(20px)} to{opacity:1;transform:translateY(0)} }
.study-viewer-topbar {
  position:sticky; top:0; z-index:50;
  background:rgba(255,255,255,0.92); backdrop-filter:blur(12px);
  border-bottom:1px solid var(--border2);
  display:flex; align-items:center; justify-content:space-between;
  padding:12px 28px; gap:16px;
}
.study-viewer-topbar-title { font-size:0.92rem; font-weight:700; color:var(--text); }
.study-viewer-actions { display:flex; gap:10px; align-items:center; }
.study-viewer-close-btn {
  display:inline-flex; align-items:center; gap:6px;
  background:rgba(248,113,113,0.12); border:1px solid rgba(248,113,113,0.3);
  color:#F87171; border-radius:20px; padding:7px 16px;
  font-size:0.8rem; font-weight:700; cursor:pointer;
  font-family:'Cairo',sans-serif; transition:all 0.2s;
}
.study-viewer-close-btn:hover { background:rgba(248,113,113,0.2); }
.study-viewer-body {
  max-width:900px; margin:0 auto; padding:40px 24px 80px;
  width:100%; box-sizing:border-box;
  overflow-x:hidden; word-break:break-word; overflow-wrap:break-word;
}
/* ── جداول الـ study viewer على الجوال ── */
@media(max-width:768px){
  .study-viewer-body { padding:16px 12px 80px; overflow-x:hidden; }
  /* جداول داخل .table-wrap تتمرر داخلياً */
  .output-body .table-wrap {
    overflow-x:auto; -webkit-overflow-scrolling:touch;
    margin:12px 0 20px; border-radius:8px;
    max-width:100%; width:100%;
  }
  /* جداول بدون wrapper — تصبح block قابلة للتمرير بنفسها */
  .output-body table {
    display:block; overflow-x:auto; -webkit-overflow-scrolling:touch;
    font-size:0.72rem; min-width:0; max-width:100%;
  }
  .output-body th { padding:7px 8px; font-size:0.72rem; min-width:50px; white-space:nowrap; }
  .output-body td { padding:6px 8px; font-size:0.72rem; min-width:50px; word-break:break-word; }
  .output-body h2 { font-size:0.95rem; padding:9px 12px; }
  .output-body h3 { font-size:0.88rem; }
  .output-body p, .output-body li { font-size:0.88rem; line-height:1.7; }
  .study-viewer-actions { gap:6px; flex-wrap:wrap; }
  .study-viewer-close-btn { font-size:0.75rem; padding:7px 12px; }
}
/* Responsive ready page */
@media(max-width:768px){
  .ready-page { padding:90px 16px 60px; }
  .ready-table-wrap { overflow-x:auto; }
  .ready-table th, .ready-table td { padding:12px 14px; font-size:0.8rem; }
  .ready-hero h1 { font-size:1.6rem; }
}
@media(max-width:640px){
  /* تحويل جدول الدراسات الجاهزة إلى بطاقات */
  .ready-table-wrap { overflow-x:visible; background:transparent; border:none; box-shadow:none; }
  .ready-table { display:block; }
  .ready-table thead { display:none; }
  .ready-table tbody { display:flex; flex-direction:column; gap:16px; }
  .ready-sub-row { display:none !important; }

  /* البطاقة */
  .ready-table .ready-data-row {
    display:block; direction:rtl;
    background:#FFFFFF;
    border-radius:14px; overflow:hidden;
    box-shadow:0 8px 28px rgba(37,99,235,0.12);
    border:1px solid rgba(37,99,235,0.18);
    font-size:0;
  }
  .ready-table .ready-data-row td { display:none; font-size:1rem; }

  /* إخفاء خلية الرقم — الرقم سيظهر داخل العنوان */
  .ready-table .ready-data-row .col-num {
    display:none;
  }

  /* قسم الاسم والموقع — وسط البطاقة */
  .ready-table .ready-data-row .col-name {
    display:block; width:100%; box-sizing:border-box;
    padding:18px 16px 16px; text-align:center;
    border:none; font-size:1rem;
  }
  .ready-study-name {
    font-size:0.82rem !important; font-weight:800;
    color:#0F172A; line-height:1.9;
    margin-bottom:8px;
  }
  .ready-num-inline {
    display:inline-flex; align-items:center; justify-content:center;
    width:26px; height:26px; border-radius:50%;
    background:linear-gradient(135deg,#3B82F6,#2563EB);
    color:#fff; font-size:0.75rem; font-weight:800;
    vertical-align:middle; margin-left:4px;
    box-shadow:0 2px 8px rgba(59,130,246,0.4);
  }
  .ready-study-sub {
    font-size:0.68rem; color:#64748B;
    line-height:1.7;
  }

  /* شريط سفلي: رأس المال + الموظفين */
  .ready-table .ready-data-row td.ready-cap-td {
    display:inline-block; vertical-align:middle;
    width:50%; box-sizing:border-box;
    padding:10px 14px; text-align:center;
    background:rgba(59,130,246,0.15);
    border-top:1px solid rgba(78,160,210,0.2);
    font-size:1rem;
  }
  .ready-table .ready-data-row td.ready-cap-td .ready-capital-val {
    color:#5CB8E6; font-weight:800; font-size:0.82rem;
  }
  .ready-table .ready-data-row td.ready-emp-td {
    display:inline-block; vertical-align:middle;
    width:50%; box-sizing:border-box;
    padding:10px 14px; text-align:center;
    background:rgba(59,130,246,0.15);
    border-top:1px solid rgba(78,160,210,0.2);
    border-right:1px solid rgba(78,160,210,0.2);
    font-size:1rem;
  }
  .ready-table .ready-data-row td.ready-emp-td .ready-emp-val {
    color:rgba(180,210,230,0.9); font-weight:700; font-size:0.78rem;
  }

  /* إخفاء زر المشاهدة — البطاقة نفسها قابلة للنقر */
  .ready-table .ready-data-row td.ready-btn-td {
    display:none; font-size:1rem;
  }
}
.ready-num-inline { display:none; }
/* ── بطاقات الدراسات ── */
.ready-sub-row { display:none; }
.study-m-cell { display:none !important; padding:0; }
.study-card-inner { display:flex; align-items:center; gap:14px; padding:10px 14px; }
.study-card-name { flex:2; min-width:120px; overflow:hidden; }
.study-card-scroll { display:flex; flex:1; gap:14px; align-items:center; overflow-x:auto; scrollbar-width:none; }
.study-card-scroll::-webkit-scrollbar { display:none; }
.sc-field { display:flex; flex-direction:column; align-items:center; min-width:max-content; gap:2px; }
.sc-lbl { font-size:0.68rem; color:var(--text3); }
.sc-val { font-size:0.82rem; color:var(--text2); white-space:nowrap; }
@media(max-width:640px){
  #user-studies-table {
    display:block !important; border:none !important; background:transparent !important;
    width:100% !important; max-width:100vw !important;
    overflow:visible !important;
  }
  #user-studies-table thead { display:none !important; }
  #user-studies-table tbody {
    display:flex !important; flex-direction:column; gap:14px;
    width:100% !important;
  }
  #user-studies-table .study-row {
    display:flex !important; flex-direction:column;
    max-width:520px !important;
    margin:0 auto !important;
    background:#FFFFFF;
    border-radius:14px;
    border:1px solid var(--border2);
    overflow:hidden;
    box-shadow:0 4px 16px rgba(37,99,235,0.08);
  }
  .study-d-cell { display:none !important; }
  .study-m-cell {
    display:block !important; padding:0 !important;
    width:100% !important; max-width:100% !important;
    box-sizing:border-box !important;
  }

  /* كارد الجوال */
  .study-card-inner  {
    display:flex !important; flex-direction:column; gap:0; padding:0;
    width:100% !important; max-width:100% !important;
    box-sizing:border-box !important; overflow:hidden;
  }
  .study-card-name   {
    width:100% !important; padding:16px 14px 12px;
    border-bottom:none;
    box-sizing:border-box !important; text-align:center;
    word-wrap:break-word; overflow-wrap:break-word;
  }
  .study-card-name .dash-study-title {
    color:#0F172A !important; font-weight:800 !important;
    font-size:0.82rem !important; line-height:1.8 !important;
    white-space:normal !important; word-wrap:break-word !important;
    display:block !important;
  }
  .study-card-stats  {
    display:grid !important; grid-template-columns:1fr 1fr;
    gap:0; border-bottom:none;
    background:var(--ink2);
    border-top:1px solid var(--border2);
    width:100% !important; max-width:100% !important;
    box-sizing:border-box !important;
  }
  .study-card-stat   {
    padding:10px 8px; display:flex !important; flex-direction:column; gap:3px;
    align-items:center; text-align:center;
    border-left:1px solid var(--border2);
    min-width:0 !important; overflow:hidden;
    box-sizing:border-box !important;
  }
  .study-card-stat:nth-child(2n) { border-left:none; }
  .study-card-stat .sc-lbl { font-size:0.6rem; color:var(--text3); }
  .study-card-stat .sc-val {
    font-size:0.75rem; color:var(--text); font-weight:700;
    white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
    max-width:100%; display:block;
  }
  .study-card-footer {
    display:flex !important; align-items:center; justify-content:center;
    gap:14px;
    padding:12px 14px; width:100% !important;
    box-sizing:border-box !important;
    background:transparent;
    border-top:1px solid var(--border2);
    flex-wrap:wrap;
  }
}
/* ── بطاقات المقالات في الأدمن — جوال ── */
.art-m-cell { display:none !important; }
.ready-m-cell { display:none !important; }
@media(max-width:640px){
  .admin-art-row { display:block !important; margin:0 0 14px 0 !important; width:100% !important; }
  .art-d-cell { display:none !important; }
  .art-m-cell {
    display:block !important; padding:0 !important;
    width:100% !important; box-sizing:border-box;
  }
  .art-card-inner {
    background:#FFFFFF !important;
    border-radius:14px; overflow:hidden;
    border:1px solid var(--border2);
    box-shadow:0 4px 16px rgba(37,99,235,0.08);
    width:100% !important; box-sizing:border-box;
  }
  .art-card-body {
    padding:14px 16px 10px;
  }
  .art-card-body img {
    width:80% !important; max-height:140px !important;
    display:block; margin:0 auto 10px;
  }
  /* العنوان داخل البطاقة: تجاوز اللون الأبيض المضمّن inline */
  .art-card-inner a[style*="color:#fff"],
  .art-card-inner a[style*="color: #fff"] {
    color: var(--text) !important;
  }
  /* عناصر الإحصائيات الفرعية (border-top الفاصل) */
  .art-card-inner div[style*="border-top:1px solid rgba(78,160,210"] {
    border-top-color: var(--border2) !important;
  }
  .art-card-inner span[style*="color:rgba(180,210,230"] {
    color: var(--text3) !important;
  }
  .art-card-actions {
    display:flex; gap:8px; padding:10px 16px 14px;
    border-top:1px solid var(--border2);
    background:transparent;
  }
  /* إخفاء thead الجدول على الجوال */
  #admin-articles-tbody { display:flex; flex-direction:column; gap:0; width:100% !important; }
  .data-table thead { display:none !important; }
  .data-table { width:100% !important; min-width:unset !important; table-layout:fixed; }
  /* عناوين الأعمدة على الجوال عبر data-label */
  .data-table td[data-label]::before {
    content: attr(data-label);
    display: block;
    font-size: 0.62rem;
    font-weight: 700;
    color: var(--text3);
    margin-bottom: 2px;
    letter-spacing: 0.3px;
  }
  /* بطاقات الدراسات الجاهزة للجوال */
  .ready-admin-row { display:block !important; margin:0 0 14px 0 !important; width:100% !important; }
  .ready-d-cell { display:none !important; }
  .ready-m-cell {
    display:block !important; padding:0 !important;
    width:100% !important; box-sizing:border-box;
  }
  #admin-ready-tbody { display:flex; flex-direction:column; gap:0; width:100% !important; }

  /* ── بطاقات المقالات + الدراسات الجاهزة (واجهة المستخدم) — تلوين خفيف على الجوال ── */
  .article-card,
  .sample-card {
    background: var(--ink2) !important;
    border-color: var(--border3) !important;
  }

  /* ── تبويب دراسات المستخدمين في الآدمن — بطاقات ── */
  #admin-page-studies-admin .data-table { min-width:0 !important; width:100% !important; }
  #admin-page-studies-admin div[style*="overflow-x"] { overflow-x:visible !important; }
  #admin-studies-tbody { display:flex !important; flex-direction:column; gap:0; width:100% !important; }
  #admin-studies-tbody tr {
    display:grid !important;
    grid-template-columns:1fr 1fr;
    grid-template-areas:
      "project project"
      "name    email"
      "capital status"
      "date    view";
    gap:8px 12px;
    padding:14px 14px;
    margin:0 0 12px;
    background:#FFFFFF;
    border:1px solid var(--border2);
    border-radius:12px;
    box-shadow:0 2px 10px rgba(37,99,235,0.06);
    align-items:center;
  }
  #admin-studies-tbody td { border:none !important; padding:0 !important; }
  #admin-studies-tbody td[data-label="اسم المشروع"] {
    grid-area:project; font-weight:800 !important; font-size:0.92rem !important;
    color:var(--gold) !important; text-align:right;
    border-bottom:1px solid var(--border2); padding-bottom:10px !important;
  }
  #admin-studies-tbody td[data-label="الاسم"]      { grid-area:name;    text-align:right; font-weight:700; }
  #admin-studies-tbody td[data-label="الإيميل"]    { grid-area:email;   text-align:left;  font-size:0.72rem !important; }
  #admin-studies-tbody td[data-label="رأس المال"]  { grid-area:capital; }
  #admin-studies-tbody td[data-label="الحالة"]     { grid-area:status;  text-align:left; }
  #admin-studies-tbody td[data-label="التاريخ"]    { grid-area:date; }
  #admin-studies-tbody td[data-label="عرض"]        { grid-area:view;    text-align:left; }
  #admin-studies-tbody td[data-label]::before {
    font-size:0.55rem !important; margin-bottom:1px !important;
  }
  #admin-studies-tbody td[data-label="اسم المشروع"]::before { display:none !important; }

  /* ── تبويب المستخدمين في الآدمن — كل مستخدم على سطرين ── */
  #admin-users-tbody tr {
    display:grid !important;
    grid-template-columns:1fr 1fr 1fr;
    grid-template-areas:
      "name name email"
      "points date actions";
    gap:8px 10px;
    padding:14px 14px;
    margin:0 0 12px;
    background:#FFFFFF;
    border:1px solid var(--border2);
    border-radius:12px;
    box-shadow:0 2px 10px rgba(37,99,235,0.06);
    align-items:center;
  }
  #admin-users-tbody td { border:none !important; padding:0 !important; }
  #admin-users-tbody td[data-label="الاسم"]            { grid-area:name;    text-align:right; font-weight:700; }
  #admin-users-tbody td[data-label="الإيميل"]          { grid-area:email;   text-align:left; }
  #admin-users-tbody td[data-label="النقاط المتبقية"]  { grid-area:points; }
  #admin-users-tbody td[data-label="التاريخ"]          { grid-area:date;    text-align:center; }
  #admin-users-tbody td[data-label="إجراءات"]          { grid-area:actions; text-align:left; white-space:nowrap; }
  #admin-users-tbody td[data-label="المستخدمة"],
  #admin-users-tbody td[data-label="الطلبات"]          { display:none !important; }
  #admin-users-tbody td[data-label]::before {
    font-size:0.55rem !important; margin-bottom:1px !important;
  }
}
/* Mobile Nav Hamburger */
.nav-hamburger {
  display:none; flex-direction:column; gap:5px; cursor:pointer;
  padding:8px; border-radius:8px; background:transparent;
  border:none; transition:background 0.2s;
}
.nav-hamburger:hover { background:var(--border3); }
.nav-hamburger span {
  width:22px; height:2px; background:var(--text);
  border-radius:2px; transition:all 0.3s;
  display:block;
}
.nav-hamburger.open span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.nav-hamburger.open span:nth-child(2) { opacity:0; }
.nav-hamburger.open span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); }

/* Left-side drawer */
.mobile-nav-backdrop {
  display:none; position:fixed; inset:0; z-index:1000;
  background:rgba(15,23,42,0.45); backdrop-filter:blur(3px);
}
.mobile-nav-backdrop.open { display:block; }
.mobile-nav-menu {
  position:fixed; top:0; left:0; bottom:0; z-index:1001;
  width:270px; max-width:82vw;
  background:#FFFFFF; backdrop-filter:blur(20px);
  border-right:1px solid var(--border2);
  padding:0; flex-direction:column; gap:0;
  transform:translateX(-100%); transition:transform 0.28s cubic-bezier(0.4,0,0.2,1);
  display:flex; visibility:hidden; overflow-y:auto;
  box-shadow:0 0 30px rgba(37,99,235,0.10);
}
.mobile-nav-menu.open { transform:translateX(0); visibility:visible; }
.mobile-nav-header {
  display:flex; align-items:center; justify-content:space-between;
  padding:18px 16px 14px; border-bottom:1px solid var(--border2);
  font-family:'Cairo',sans-serif;
}
.mobile-nav-brand { font-size:1rem; font-weight:800; color:var(--gold); }
.mobile-nav-close {
  background:none; border:none; color:var(--text2);
  cursor:pointer; padding:6px; border-radius:8px;
  font-size:1rem; transition:background 0.15s;
}
.mobile-nav-close:hover { background:var(--border3); color:var(--text); }
.mobile-nav-items-wrap { padding:10px 12px; flex:1; }
.mobile-nav-item {
  display:flex; align-items:center; gap:10px;
  padding:13px 14px; border-radius:10px; cursor:pointer;
  font-size:0.9rem; font-weight:600; color:var(--text2);
  transition:all 0.15s; font-family:'Cairo',sans-serif;
}
.mobile-nav-item:hover, .mobile-nav-item.active { background:var(--border3); color:var(--gold); }
.mobile-nav-item i { width:18px; text-align:center; color:var(--gold); }
.mobile-nav-divider { height:1px; background:var(--border2); margin:8px 12px; }
@media(max-width:960px){
  .nav-hamburger { display:flex; }
  nav { padding:0 16px; backdrop-filter:none; background:#fff; }
  /* النص الفرعي للشعار يبقى ظاهراً على الجوال — هوية موحّدة مع سطح المكتب */
  .logo-sub { display:block; font-size:0.6rem; white-space:nowrap; }
  .study-viewer-topbar { padding:10px 14px; }
  .study-viewer-topbar-title { font-size:0.8rem; }
  .study-viewer-body { padding:24px 14px 60px; }
}
/* ════════════════════════════════════
   DASHBOARD
════════════════════════════════════ */
.dash-layout {
  display:grid; grid-template-columns:240px 1fr;
  min-height:calc(100vh - 68px); padding-top:68px;
}
.dash-sidebar {
  background:linear-gradient(180deg,#F8FAFC 0%,#EFF4FB 100%); border-left:1px solid var(--border2);
  padding:28px 18px; position:sticky; top:68px;
  height:calc(100vh - 68px); overflow-y:auto;
}
.dash-profile {
  margin-bottom:28px; padding-bottom:24px;
  border-bottom:1px solid var(--border2);
}
.dash-profile-name { font-family:'Cairo',sans-serif; font-size:1.1rem; color:var(--gold); }
.dash-profile-sub { font-size:0.68rem; color:var(--text3); margin-top:3px; }
.dash-plan-pill {
  display:inline-flex; align-items:center; gap:5px;
  background:var(--gold-dim); border:1px solid var(--border);
  color:var(--gold); font-size:0.62rem; font-weight:700;
  padding:3px 10px; border-radius:20px; margin-top:8px;
  letter-spacing:0.5px;
}
.dmenu-item {
  display:flex; align-items:center; gap:11px;
  padding:10px 14px; border-radius:10px; cursor:pointer;
  color:var(--text3); font-size:0.8rem; font-weight:500;
  transition:var(--transition); margin-bottom:2px;
}
.dmenu-item:hover { background:var(--border3); color:var(--text); }
.dmenu-item.active { background:var(--gold-dim); color:var(--gold); }
.dmenu-item .dicon { font-size:1rem; }

.dash-main { padding:40px; background:var(--ink); }
.dash-greeting {
  font-family:'Cairo',sans-serif; font-size:1.6rem; font-weight:700;
  margin-bottom:4px;
}
.dash-sub { color:var(--text3); font-size:0.8rem; margin-bottom:36px; }
.dash-kpis { display:grid; grid-template-columns:repeat(5,1fr); gap:16px; margin-bottom:24px; }
.kpi-card {
  background:#fff; border:1px solid var(--border2);
  border-radius:16px; padding:20px 14px;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  text-align:center;
  box-shadow:0 1px 3px rgba(15,23,42,0.04);
  display:flex; flex-direction:column; align-items:center; gap:10px;
}
.kpi-card:hover {
  transform:translateY(-2px);
  box-shadow:0 10px 28px rgba(15,23,42,0.08);
  border-color:var(--border);
}
.kpi-icon {
  width:46px; height:46px; border-radius:12px;
  display:flex; align-items:center; justify-content:center;
  font-size:1.35rem; line-height:1;
}
.kpi-card-val {
  font-family:'Cairo',sans-serif; font-size:1.9rem; font-weight:800;
  color:#2563EB; display:block; line-height:1;
}
.kpi-card-label {
  font-size:0.76rem; color:#64748B; font-weight:700;
  letter-spacing:0.2px;
}

/* بطاقة تنبيه صلاحية النقاط (برتقالي) */
#dash-points-expiry {
  display:none;
  margin-bottom:24px; padding:16px 20px;
  background:#FFF7ED; border:1.5px solid #FED7AA; border-radius:14px;
  align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap;
}
#dash-points-expiry.show { display:flex; }
.dpx-left { display:flex; align-items:center; gap:12px; }
.dpx-icon { font-size:1.5rem; line-height:1; }
.dpx-title { font-size:0.9rem; font-weight:800; color:#9A3412; margin-bottom:2px; }
.dpx-text  { font-size:0.78rem; color:#7C2D12; }
.dpx-text strong { color:#9A3412; font-weight:800; }
.dpx-btn {
  background:#FF8C00; color:#fff; border:none; border-radius:10px;
  padding:10px 22px; font-size:0.83rem; font-weight:800;
  cursor:pointer; font-family:'Cairo',sans-serif; white-space:nowrap;
  box-shadow:0 4px 14px rgba(255,140,0,0.35);
  transition:transform .15s, box-shadow .15s;
  display:inline-flex; align-items:center; gap:6px;
}
.dpx-btn:hover { transform:translateY(-1px); box-shadow:0 8px 20px rgba(255,140,0,0.45); }

.studies-panel {
  background:var(--panel); border:1px solid var(--border2);
  border-radius:var(--r3); overflow:hidden;
}
.panel-header {
  padding:18px 24px; background:linear-gradient(135deg,#F8FAFC,#EFF4FB);
  border-bottom:1px solid var(--border2);
  display:flex; justify-content:space-between; align-items:center;
}
.panel-header h3 { font-size:0.9rem; font-weight:700; }
.data-table { width:100%; border-collapse:collapse; }
.data-table th {
  padding:13px 18px; text-align:right;
  font-size:0.68rem; font-weight:700; color:var(--text3);
  background:var(--ink2); border-bottom:1px solid var(--border2);
  letter-spacing:0.5px;
}
.data-table td {
  padding:16px 18px; font-size:0.8rem;
  border-bottom:1px solid var(--border2); color:var(--text2);
}
.data-table tr:last-child td { border-bottom:none; }
.data-table tr:hover td { background:var(--border3); }
.sbadge {
  font-size:0.62rem; font-weight:700; padding:4px 11px; border-radius:20px;
}
.sbadge-done   { background:rgba(52,211,153,0.12); color:var(--green); border:1px solid rgba(52,211,153,0.25); }
.sbadge-draft  { background:rgba(251,191,36,0.12); color:#FBB024;    border:1px solid rgba(251,191,36,0.3); }
.sbadge-locked { background:rgba(248,113,113,0.12); color:#F87171;   border:1px solid rgba(248,113,113,0.3); }

/* ════════════════════════════════════
   FOOTER
════════════════════════════════════ */
footer {
  background:linear-gradient(180deg,#F8FAFC 0%,#EFF4FB 60%,#E6EEFA 100%);
  border-top:1px solid var(--border);
  padding:72px 48px 36px;
  flex-shrink:0;
}
.footer-inner {
  max-width:1200px; margin:0 auto;
  display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:48px;
  margin-bottom:48px;
}
.footer-brand .logo-row {
  display:flex; align-items:center; gap:10px; margin-bottom:14px;
}
.footer-brand p { font-size:0.78rem; color:var(--text3); line-height:1.9; max-width:250px; font-weight:300; }
.footer-col h4 { font-size:0.72rem; font-weight:700; color:var(--text); letter-spacing:1.5px; text-transform:uppercase; margin-bottom:18px; }
.footer-col a {
  display:block; font-size:0.78rem; color:var(--text3);
  margin-bottom:11px; cursor:pointer; transition:color 0.2s; text-decoration:none;
}
.footer-col a:hover { color:var(--gold); }
/* footer-bottom moved to footer-bottom-wrap */


/* ════ PAYMENT ICONS ════ */
.footer-payment {
  display:flex; justify-content:center; align-items:center;
  margin-top:20px; margin-bottom:8px;
}
.pay-icon {
  display:inline-flex; align-items:center; justify-content:center;
  background:rgba(255,255,255,0.07);
  border:1px solid rgba(255,255,255,0.13);
  border-radius:8px;
  padding:5px 12px;
  height:36px;
  white-space:nowrap;
  font-size:0.78rem;
  font-weight:700;
  letter-spacing:0.3px;
}
.pay-icon svg { height:22px; width:auto; display:block; }
.footer-bottom-wrap {
  max-width:1200px; margin:0 auto;
  padding-top:28px; border-top:1px solid var(--border2);
}
.footer-bottom {
  display:flex; justify-content:space-between; align-items:center;
  font-size:0.7rem; color:var(--text2);
  flex-wrap:wrap; gap:12px;
}
/* ════════════════════════════════════
   MODALS
════════════════════════════════════ */
.moverlay {
  position:fixed; inset:0; z-index:700;
  background:rgba(15,23,42,0.55); backdrop-filter:blur(12px);
  display:none; align-items:center; justify-content:center; padding:16px;
}
.moverlay.open { display:flex; animation:fadeIn 0.25s ease; }
@keyframes fadeIn { from{opacity:0;} to{opacity:1;} }

.mbox {
  background:var(--panel); border:1.5px solid var(--border);
  border-radius:var(--r3); width:100%; max-width:480px;
  overflow:hidden; box-shadow:0 30px 80px rgba(37,99,235,0.20);
}
.mbox-head {
  padding:22px 28px; background:var(--ink2);
  border-bottom:1px solid var(--border2);
  display:flex; align-items:center; justify-content:space-between;
}
.mbox-head h3 { font-family:'Cairo',sans-serif; font-size:1.1rem; color:var(--gold); }
.mclose {
  width:32px; height:32px; border-radius:50%;
  background:var(--border3); border:1px solid var(--border2);
  color:var(--text2); cursor:pointer; font-size:0.9rem;
  display:flex; align-items:center; justify-content:center;
  transition:var(--transition);
}
.mclose:hover { background:var(--rose); border-color:var(--rose); color:white; }
.mbox-body { padding:28px; }
.plan-pill {
  background:var(--ink3); border:1px solid var(--border2);
  border-radius:14px; padding:18px 20px;
  display:flex; justify-content:space-between; align-items:center;
  margin-bottom:24px;
}
.pp-name { font-size:0.9rem; font-weight:700; }
.pp-price {
  font-family:'Cairo',sans-serif; font-size:1.5rem; color:var(--gold); font-weight:700;
}
.pp-price small { font-size:0.8rem; color:var(--text3); }

.frow { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:12px; }
.frow.full { grid-template-columns:1fr; }
.mlabel { font-size:0.7rem; font-weight:700; color:var(--text2); margin-bottom:6px; display:block; letter-spacing:0.3px; }
.minput {
  width:100%; background:var(--ink2); border:1.5px solid var(--border2);
  color:var(--text); font-family:'Cairo',sans-serif;
  font-size:0.85rem; padding:11px 14px; border-radius:10px;
  outline:none; transition:var(--transition); direction:rtl;
}
.minput:focus { border-color:var(--gold); background:var(--ink3); box-shadow:0 0 0 3px var(--gold-glow); }
.minput[dir="ltr"] { direction:ltr; text-align:left; unicode-bidi:embed; }
.pay-submit {
  width:100%; margin-top:20px;
  background:linear-gradient(135deg,#2563EB,#1D4ED8);
  color:#fff; font-family:'Cairo',sans-serif;
  font-size:0.9rem; font-weight:700; padding:14px;
  border-radius:12px; cursor:pointer; border:none;
  transition:var(--transition); display:flex; align-items:center; justify-content:center; gap:10px;
}
.pay-submit:hover { transform:translateY(-2px); box-shadow:0 8px 24px rgba(37,99,235,0.4); }
.pay-submit:disabled { opacity:0.6; cursor:not-allowed; transform:none; }
.pay-secure {
  display:flex; align-items:center; justify-content:center; gap:6px;
  color:var(--text3); font-size:0.68rem; margin-top:12px;
}

.mbox-loading {
  padding:56px; display:flex; flex-direction:column;
  align-items:center; gap:18px;
}
.spin {
  width:44px; height:44px; border:3px solid var(--border2);
  border-top-color:var(--gold); border-radius:50%;
  animation:spinAnim 0.8s linear infinite;
}
@keyframes spinAnim { to{transform:rotate(360deg);} }
.mbox-loading p { color:var(--text3); font-size:0.82rem; }

.mbox-success {
  padding:52px 36px; display:flex; flex-direction:column;
  align-items:center; gap:14px; text-align:center;
}
.success-ring {
  width:72px; height:72px;
  background:rgba(52,211,153,0.1); border:2px solid var(--green);
  border-radius:50%; display:flex; align-items:center; justify-content:center;
  font-size:1.8rem;
}
.mbox-success h3 { font-family:'Cairo',sans-serif; font-size:1.4rem; color:var(--green); }
.mbox-success p { color:var(--text3); font-size:0.8rem; line-height:1.7; max-width:300px; }

.iframe-mbox {
  background:white; border-radius:var(--r3); width:100%; max-width:640px;
  overflow:hidden; box-shadow:0 40px 100px rgba(0,0,0,0.7);
}
.iframe-head {
  padding:16px 22px; background:white; border-bottom:1px solid #eee;
  display:flex; align-items:center; justify-content:space-between;
}
.iframe-head h3 { font-size:0.85rem; font-weight:700; color:#111; direction:rtl; }
.iframe-head .mclose { background:#f5f5f5; border-color:#ddd; color:#333; }


/* ─── SETUP GUIDE MODAL ─── */
.guide-mbox {
  background:var(--panel); border:1.5px solid var(--border);
  border-radius:var(--r3); width:100%; max-width:620px;
  overflow:hidden; box-shadow:0 40px 100px rgba(0,0,0,0.7);
  max-height:88vh; overflow-y:auto;
}
.guide-mbox-head {
  padding:22px 28px; background:var(--ink2);
  border-bottom:1px solid var(--border2);
  display:flex; align-items:center; justify-content:space-between;
  position:sticky; top:0; z-index:1;
}
.guide-mbox-head h3 { font-family:'Cairo',sans-serif; font-size:1.1rem; color:var(--gold); }
.guide-body { padding:28px; }
.gstep { display:flex; gap:18px; padding-bottom:28px; margin-bottom:28px; border-bottom:1px solid var(--border2); }
.gstep:last-child { border-bottom:none; padding-bottom:0; margin-bottom:0; }
.gnum {
  width:36px; height:36px; border-radius:50%; flex-shrink:0;
  background:var(--gold-dim); border:1.5px solid var(--border);
  display:flex; align-items:center; justify-content:center;
  font-size:0.82rem; font-weight:700; color:var(--gold); margin-top:2px;
}
.gtext h4 { font-size:0.88rem; font-weight:700; margin-bottom:7px; }
.gtext p { font-size:0.77rem; color:var(--text3); line-height:1.8; }
.gtext ul { padding-right:16px; margin-top:8px; }
.gtext li { font-size:0.75rem; color:var(--text3); line-height:2; }
.gcode {
  background:var(--ink); border:1px solid var(--border2);
  border-radius:8px; padding:11px 14px; margin-top:8px;
  font-family:'Courier New',monospace; font-size:0.72rem;
  color:var(--gold2); direction:ltr; text-align:left; word-break:break-all;
}
.gwarn {
  background:rgba(255,107,107,0.06); border:1px solid rgba(255,107,107,0.2);
  border-radius:10px; padding:13px 15px; margin-top:10px;
  font-size:0.73rem; color:#E89090; line-height:1.7;
}



/* ─── TOAST ─── */
.toast {
  position:fixed; top:50%; left:50%;
  transform:translate(-50%, -50%) scale(0.85);
  background:var(--panel2); border:1px solid var(--border);
  color:var(--text); font-size:0.88rem; font-weight:600;
  padding:16px 36px; border-radius:16px; z-index:9999;
  transition:transform 0.25s cubic-bezier(0.4,0,0.2,1), opacity 0.25s ease;
  pointer-events:none; display:flex; align-items:center; gap:10px;
  box-shadow:0 20px 60px rgba(0,0,0,0.6);
  opacity:0; max-width:480px; text-align:center;
}
.toast.show { transform:translate(-50%, -50%) scale(1); opacity:1; }
@media(max-width:520px){
  .toast{font-size:0.72rem;padding:10px 18px;border-radius:10px;max-width:85vw;gap:6px;line-height:1.5;}
}

/* ─── RESPONSIVE ─── */
@media(max-width:960px){
  nav{padding:0 16px;}
  .nav-links .nav-link{display:none;}
  .nav-cta{display:none!important;}
  .hero,.section,.hiw-section,.features-section,.pricing-section,.testi-section,.cta-band{padding-left:20px;padding-right:20px;}
  .hero-visual{display:none;}
  .hero-title{font-size:1.8rem;}
  .hiw-grid,.features-layout,.pricing-grid,.testi-grid,.articles-grid,.samples-grid{grid-template-columns:1fr;}
  .steps-row{grid-template-columns:1fr;}
  .tool-layout,.dash-layout{grid-template-columns:1fr;}
  .tool-sidebar,.dash-sidebar{position:relative;height:auto;}
  .tool-main{padding:28px 20px;min-width:0;}
  .dash-kpis{grid-template-columns:repeat(3,1fr);}
  .dash-main{padding:24px 16px;min-width:0;overflow-x:hidden;}
  .footer-inner{grid-template-columns:1fr 1fr;}
  .footer-brand{grid-column:1/-1;}
  .footer-col:last-child{grid-column:1/-1; justify-self:center; text-align:center; width:50%;}
  .articles-grid,.samples-grid{padding:0 20px;}
  .inner-hero{padding:100px 20px 48px;}
}

/* ════════════ MOBILE (≤ 480px) ════════════ */
@media(max-width:480px){

  /* ── الشعار في الجوال ── */
  .logo-text{font-size:1.05rem;white-space:nowrap;}
  .logo-sub{display:block;font-size:0.55rem;white-space:nowrap;}
  .logo-mark{width:30px;height:30px;font-size:1rem;border-radius:8px;}
  .nav-logo{gap:6px;}

  /* ── عام ── */
  .hero{padding:90px 16px 60px;}
  .hero-title{font-size:1.5rem;line-height:1.3;}
  .section{padding:60px 16px;}
  .section-title{font-size:1.4rem;}
  .inner-hero{padding:90px 16px 40px;}
  .inner-hero-inner h1{font-size:1.5rem;}
  .footer-inner{grid-template-columns:1fr 1fr; gap:20px 16px;}
  .footer-brand{grid-column:1/-1;}
  .footer-col:last-child{grid-column:1/-1; justify-self:center; text-align:center; width:50%;}
  footer{padding:32px 16px 24px;}
  .footer-bottom{flex-direction:column;align-items:center;text-align:center;gap:6px;font-size:0.65rem;}
  .footer-col{text-align:center;}
  .footer-col h4{font-size:0.65rem;margin-bottom:10px;}
  .footer-col a{font-size:0.7rem;margin-bottom:8px;display:block;}

  /* ── nav ── */
  nav{padding:0 12px;}

  /* ── tool (wizard) — S-shaped mobile stepper ── */
  .tool-sidebar{padding:16px 12px; display:flex; flex-direction:column;}
  .sidebar-brand{margin-bottom:8px;padding-bottom:8px;padding-top:0;flex-wrap:wrap;}
  .tool-main{padding:20px 14px;}
  .ftextarea { font-size:0.75rem; min-height:70px; }
  .ftextarea::placeholder { font-size:0.72rem; }

  .wizard-nav {
    flex-direction:row; flex-wrap:wrap; gap:0; position:relative;
    padding:8px 4px; overflow:hidden; justify-content:space-between;
  }
  .wizard-nav .wz-step {
    width:calc(50% - 8px); padding:8px 6px; gap:4px;
    flex-direction:column; text-align:center; border-radius:12px;
    position:relative; z-index:1; margin-bottom:8px;
    background:rgba(15,23,42,0.5); border:1px solid rgba(59,130,246,0.1);
    transition:all 0.4s cubic-bezier(0.4,0,0.2,1);
  }
  .wizard-nav .wz-step.active {
    background:rgba(59,130,246,0.12); border-color:rgba(59,130,246,0.35);
    transform:scale(1.03);
  }
  .wizard-nav .wz-step.done {
    background:rgba(52,211,153,0.06); border-color:rgba(52,211,153,0.2);
  }
  /* Row 1: items 1,2 → right to left (RTL natural) */
  .wizard-nav .wz-step:nth-child(1) { order:1; }
  .wizard-nav .wz-step:nth-child(2) { order:2; }
  /* Row 2: items 3,4 → reversed S */
  .wizard-nav .wz-step:nth-child(3) { order:3; }
  .wizard-nav .wz-step:nth-child(4) { order:4; }

  .wizard-nav .wz-num {
    width:32px; height:32px; font-size:0.78rem; font-weight:800;
    box-shadow:0 2px 8px rgba(0,0,0,0.2);
    transition:all 0.4s cubic-bezier(0.4,0,0.2,1);
  }
  .wizard-nav .wz-step.active .wz-num {
    box-shadow:0 0 16px rgba(59,130,246,0.5), 0 0 32px rgba(59,130,246,0.15);
  }
  .wizard-nav .wz-step.done .wz-num {
    box-shadow:0 0 12px rgba(52,211,153,0.4);
  }
  .wizard-nav .wz-title { font-size:0.7rem; }
  .wizard-nav .wz-sub { font-size:0.58rem; }

  .sidebar-tip { display:none; }
  .sidebar-brand-tip {
    display:block; width:100%;
    font-size:0.68rem; color:var(--text3); line-height:1.6;
    margin-top:8px; padding:8px 12px;
    background:rgba(59,130,246,0.06); border:1px solid rgba(59,130,246,0.15);
    border-radius:10px;
  }

  /* S-path SVG connector — injected by JS */
  .wz-s-path {
    display:block !important;
    position:absolute; top:0; left:0; width:100%; height:100%;
    pointer-events:none; z-index:0;
  }
  .step-title{font-size:1.1rem;}
  .step-sub{font-size:0.78rem;margin-bottom:20px;}
  /* ── نتائج الدراسة — الجوال ── */
  .output-body{padding:16px 10px; font-size:0.8rem; overflow-x:hidden; word-break:break-word;}
  .output-body h2{font-size:1.05rem; margin:20px 0 10px;}
  .output-body h3{font-size:0.92rem; margin:16px 0 8px;}
  .output-body h4{font-size:0.85rem;}
  .output-body p, .output-body li{font-size:0.78rem; line-height:1.7;}
  .output-body .table-wrap{margin:12px 0 16px; border-radius:8px;}
  .output-body table{font-size:0.7rem; min-width:auto; width:100%;}
  .output-body th{padding:7px 8px; font-size:0.7rem; white-space:normal;}
  .output-body td{padding:6px 8px; font-size:0.7rem; min-width:auto;}
  .study-toc{padding:14px 16px; margin-bottom:20px; max-height:300px;}
  .study-toc a{font-size:0.75rem;}
  .study-viewer-header{flex-wrap:wrap; gap:8px; padding:12px !important;}
  .study-viewer-header h2{font-size:1rem !important;}
  .study-viewer-header button{font-size:0.72rem !important; padding:6px 12px !important;}

  /* ── لوحة المستخدم — بطاقات أصغر ── */
  .dash-kpis .kpi-card{padding:14px 10px;gap:8px;}
  .dash-kpis .kpi-card-val{font-size:1.5rem;}
  .dash-kpis .kpi-card-label{font-size:0.68rem;}
  .dash-kpis .kpi-icon{width:38px;height:38px;font-size:1.1rem;border-radius:10px;}

  /* ── زر التسجيل CTA ── */
  .cta-register-btn{padding:14px 24px !important;font-size:0.88rem !important;border-radius:12px !important;gap:8px !important;}

  /* ── منع التمرير الأفقي ── */
  .page, .tool-main, .dash-main, .output-body{max-width:100vw; overflow-x:hidden;}

  /* ── dashboard ── */
  .dash-sidebar{padding:16px 12px;min-width:0;}
  .dash-profile{margin-bottom:16px;padding-bottom:16px;}
  .dash-main{padding:16px 12px;min-width:0;overflow-x:hidden;}
  .dash-greeting{font-size:1.2rem;}
  .dash-sub{margin-bottom:20px;}
  .dash-kpis{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px;}
  .kpi-card{padding:14px 10px;gap:8px;}
  .kpi-card-val{font-size:1.5rem;}
  .kpi-icon{width:38px;height:38px;font-size:1.1rem;border-radius:10px;}
  /* تنبيه الصلاحية على الجوال */
  #dash-points-expiry{padding:14px;gap:10px;}
  #dash-points-expiry.show{flex-direction:column;align-items:stretch;}
  .dpx-btn{width:100%;justify-content:center;}

  /* جدول الدراسات — تمرير أفقي داخلي */
  .studies-panel{overflow-x:auto;-webkit-overflow-scrolling:touch;}
  .data-table{min-width:520px;}
  #user-studies-table{min-width:0 !important; max-width:100% !important;}
  .studies-panel > *:not(table){min-width:unset;}

  /* بانر شراء النقاط */
  #dash-purchase-banner{flex-direction:column!important;padding:16px!important;gap:12px!important;}
  #dash-purchase-banner button{width:100%!important;}

  /* ── تسعير ── */
  .pricing-grid{gap:16px;}
  .plan-card{padding:24px 16px;}

  /* ── تذييل ── */
  .footer-inner{gap:24px;}

  /* ── نموذج الأداة (wizard steps) ── */
  .frow{grid-template-columns:1fr!important;}

  /* ── panel header ── */
  .panel-header{flex-wrap:wrap;gap:10px;}
  .panel-header h3{font-size:1rem;}

  /* ── study viewer ── */
  .study-viewer-topbar{padding:8px 12px;gap:8px;flex-wrap:wrap;}
  .study-viewer-body{padding:16px 12px 60px;}
  .output-body h2{font-size:1.1rem;}
  .output-body h3{font-size:0.95rem;}
}

/* ════════════ DASHBOARD — MOBILE SIDEBAR (≤ 640px) ════════════ */
@media(max-width:640px){

  /* ── layout: عمود واحد ── */
  .dash-layout { display:flex; flex-direction:column; padding-top:68px; }

  /* ── sidebar → شريط تبويب أفقي لاصق ── */
  .dash-sidebar {
    position:sticky; top:68px; z-index:50;
    height:auto; max-height:none; overflow:visible;
    border-left:none; border-bottom:2px solid var(--border2);
    padding:0; background:linear-gradient(180deg,#F8FAFC 0%,#EFF4FB 100%);
  }

  /* بروفايل مضغوط */
  .dash-profile {
    display:flex; align-items:center; gap:8px; flex-wrap:nowrap;
    padding:8px 14px; margin-bottom:0;
    border-bottom:1px solid var(--border2);
    overflow:hidden;
  }
  .dash-profile > div:first-child { display:none; }  /* "مرحباً," */
  .dash-profile-name { font-size:0.82rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:140px; }
  .dash-profile-sub  { display:none; }
  .dash-plan-pill    { font-size:0.58rem; padding:2px 8px; margin-top:0; flex-shrink:0; }

  /* nav items → أفقية scrollable + ثابتة عند التمرير */
  .dmenu-nav {
    display:flex; flex-direction:row; overflow-x:auto; flex-wrap:nowrap;
    padding:6px 10px; gap:5px;
    scrollbar-width:none; -webkit-overflow-scrolling:touch;
    position:sticky; top:68px; z-index:150;
    background:var(--bg); border-bottom:1px solid var(--border2);
  }
  .dmenu-nav::-webkit-scrollbar { display:none; }

  .dmenu-item {
    white-space:nowrap; flex-shrink:0;
    padding:6px 12px; border-radius:20px;
    margin-bottom:0; font-size:0.73rem;
  }
  .dmenu-item .dicon { font-size:0.82rem; }

  /* آدمن section */
  #admin-sidebar-section {
    border-top:1px solid rgba(255,165,0,0.25);
    margin-top:0; padding-top:0;
  }
  .admin-dmenu-label { display:none; }
  .admin-dmenu-nav   { padding:6px 10px 8px; border-top:none; top:110px; }

  /* ── dash-main ── */
  .dash-main { padding:16px 12px; min-width:0; }

  .dash-greeting { font-size:1.15rem; margin-bottom:2px; }
  .dash-sub      { font-size:0.75rem; margin-bottom:16px; }

  /* ── KPI cards: 2 أعمدة ── */
  .dash-kpis    { grid-template-columns:1fr 1fr; gap:10px; margin-bottom:16px; }
  .kpi-card     { padding:14px 10px; gap:8px; }
  .kpi-card-val { font-size:1.45rem; }
  .kpi-card-label { font-size:0.68rem; }
  .kpi-icon     { width:38px; height:38px; font-size:1.1rem; border-radius:10px; }

  /* ── panel header ── */
  .panel-header { flex-wrap:wrap; gap:8px; padding:12px 14px; }
  .panel-header h3 { font-size:0.85rem; }

  /* ── data-table: تمرير أفقي لكل الجداول ── */
  .studies-panel:has(#user-studies-table) {
    background:transparent !important; border:none !important;
    box-shadow:none !important; overflow:visible !important;
  }
  .studies-panel { overflow:hidden; }
  .studies-panel > div[style*="overflow-x"] { -webkit-overflow-scrolling:touch; }
  .data-table th  { padding:10px 12px; font-size:0.62rem; }
  .data-table td  { padding:11px 12px; font-size:0.76rem; }

  /* ── بانر شراء النقاط ── */
  #dash-purchase-banner { flex-direction:column!important; padding:14px!important; gap:10px!important; }
  #dash-purchase-banner button { width:100%!important; }

  /* ── admin panel header ── */
  #admin-panel > div:first-child { flex-direction:column; align-items:flex-start; gap:8px; }

  /* ── admin home cards ── */
  #admin-stats-grid { grid-template-columns:1fr 1fr; gap:10px; }
}

/* ════════════ VERY SMALL (≤ 360px) ════════════ */
@media(max-width:360px){
  .dash-kpis    { grid-template-columns:1fr; }
  #admin-stats-grid { grid-template-columns:1fr; }
  .kpi-card-val { font-size:1.2rem; }
}

/* ============================================================
   INNER PAGE SHARED STYLES — About / Privacy / Terms
   ============================================================ */
.inner-hero {
  padding: 140px 48px 72px;
  background: linear-gradient(180deg, #FFFFFF 0%, #F1F6FF 100%);
  position: relative;
  text-align: right;
  overflow: hidden;
}
.inner-hero::after {
  content: '';
  position: absolute; inset: 0;
  background: radial-gradient(ellipse 60% 60% at 80% 40%, rgba(59,130,246,0.14) 0%, transparent 70%);
  pointer-events: none;
}
.inner-hero-inner {
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.breadcrumb {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.78rem;
  color: var(--text3);
  margin-bottom: 16px;
}
.breadcrumb-link {
  color: var(--gold2);
  cursor: pointer;
  transition: opacity 0.2s;
}
.breadcrumb-link:hover { opacity: 0.75; }
.breadcrumb-sep { color: var(--text4); }
.inner-h1 {
  font-family: 'Cairo', sans-serif;
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 900;
  color: var(--text);
  margin-bottom: 16px;
  line-height: 1.2;
}
.inner-lead {
  font-size: 1.0rem;
  color: var(--text2);
  max-width: 640px;
  line-height: 1.9;
}
.inner-lead strong { color: var(--gold2); }

/* ── Image showcase strip on home page ── */
.img-strip {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 48px 80px;
}
.img-strip-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
@media (max-width: 900px) { .img-strip-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 500px) { .img-strip-grid { grid-template-columns: 1fr; } }
.img-strip-card {
  background: var(--panel);
  border: 1px solid var(--border2);
  border-radius: var(--r2);
  overflow: hidden;
  transition: var(--transition);
}
.img-strip-card:hover {
  border-color: var(--border);
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(59,130,246,0.15);
}
.img-strip-card img {
  width: 100%;
  height: 160px;
  object-fit: cover;
  display: block;
  background: var(--panel2);
}
.img-strip-label {
  padding: 12px 16px;
  font-size: 0.82rem;
  color: var(--text2);
  font-weight: 600;
  text-align: center;
}

/* لا نُجري layout/paint للأقسام البعيدة عن نافذة العرض الأولى. */
.hiw-section,
.features-section,
.pricing-section,
.testi-section,
.cta-band,
.about-wrap,
footer {
  content-visibility: auto;
  contain-intrinsic-size: auto 800px;
}

/* ── About page ── */
.about-wrap {
  max-width: 1200px;
  margin: 0 auto;
  padding: 72px 48px 96px;
}
@media (max-width: 768px) { .about-wrap { padding: 48px 24px 72px; } }

.about-story-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 72px;
  align-items: center;
  margin-bottom: 80px;
}
@media (max-width: 900px) { .about-story-grid { grid-template-columns: 1fr; gap: 40px; } }

.about-text p {
  color: var(--text2);
  line-height: 1.9;
  margin-bottom: 14px;
}
.about-h2 {
  font-family: 'Cairo', sans-serif;
  font-size: clamp(1.4rem, 2.5vw, 2rem);
  font-weight: 800;
  color: var(--text);
  margin: 12px 0 20px;
}
.about-kpis {
  display: flex;
  gap: 32px;
  margin-top: 32px;
  flex-wrap: wrap;
}
.about-kpi { display: flex; flex-direction: column; gap: 4px; }
.kpi-num { font-size: 1.8rem; font-weight: 900; color: var(--gold2); line-height: 1; }
.kpi-lbl { font-size: 0.75rem; color: var(--text3); }

.about-img-box { position: relative; }
.about-img {
  width: 100%;
  border-radius: var(--r3);
  aspect-ratio: 4/3;
  object-fit: cover;
  border: 1px solid var(--border);
  display: block;
  background: var(--panel2);
}
.about-img-badge {
  position: absolute;
  bottom: 16px; right: 16px;
  background: linear-gradient(135deg, var(--gold), #1e40af);
  color: #fff;
  padding: 8px 18px;
  border-radius: 40px;
  font-size: 0.8rem;
  font-weight: 700;
  box-shadow: 0 4px 20px rgba(59,130,246,0.45);
}

.mvv-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-bottom: 80px;
}
@media (max-width: 768px) { .mvv-grid { grid-template-columns: 1fr; } }
.mvv-card {
  background: var(--panel);
  border: 1px solid var(--border2);
  border-radius: var(--r2);
  padding: 32px;
  transition: var(--transition);
}
.mvv-card:hover { border-color: var(--border); transform: translateY(-4px); }
.mvv-icon { font-size: 2rem; margin-bottom: 14px; }
.mvv-card h3 {
  font-size: 1.05rem;
  font-weight: 800;
  color: var(--text);
  margin-bottom: 10px;
}
.mvv-card p { color: var(--text2); line-height: 1.85; font-size: 0.92rem; }

.why-img-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-bottom: 80px;
}
@media (max-width: 768px) { .why-img-grid { grid-template-columns: 1fr; } }
.why-img-card {
  background: var(--panel);
  border: 1px solid var(--border2);
  border-radius: var(--r2);
  overflow: hidden;
  transition: var(--transition);
}
.why-img-card:hover { border-color: var(--border); transform: translateY(-4px); }
.why-img-card img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  display: block;
  background: var(--panel2);
  border-bottom: 1px solid var(--border2);
}
.why-img-body { padding: 20px 24px; }
.why-img-body h4 {
  font-size: 1rem;
  font-weight: 700;
  color: var(--text);
  margin-bottom: 8px;
}
.why-img-body p { color: var(--text2); font-size: 0.88rem; line-height: 1.75; }

.about-cta-box {
  background: linear-gradient(135deg, var(--gold-dim), var(--panel2));
  border: 1px solid var(--border);
  border-radius: var(--r3);
  padding: 64px;
  text-align: center;
}
@media (max-width: 768px) { .about-cta-box { padding: 40px 24px; } }
.about-cta-box h3 {
  font-family: 'Cairo', sans-serif;
  font-size: clamp(1.4rem, 2.5vw, 2rem);
  font-weight: 900;
  color: var(--text);
  margin-bottom: 12px;
}
.about-cta-box p { color: var(--text2); margin-bottom: 28px; }
.btn-hero-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: linear-gradient(135deg, var(--gold), #1d4ed8);
  color: #fff;
  border: none;
  padding: 14px 40px;
  border-radius: 14px;
  font-size: 1rem;
  font-weight: 700;
  cursor: pointer;
  font-family: 'Tajawal', sans-serif;
  transition: var(--transition);
}
.btn-hero-cta:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 32px rgba(59,130,246,0.45);
}

/* ── Legal pages (Privacy / Terms) ── */
.legal-layout {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 56px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 64px 48px 96px;
  align-items: start;
}
@media (max-width: 900px) { .legal-layout { grid-template-columns: 1fr; padding: 40px 24px 72px; } }

.legal-toc {
  position: sticky;
  top: 88px;
  background: var(--panel);
  border: 1px solid var(--border2);
  border-radius: var(--r2);
  padding: 24px;
}
.legal-toc-heading {
  font-size: 0.72rem;
  font-weight: 700;
  color: var(--text3);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 16px;
}
.legal-toc ol { list-style: none; padding: 0; margin: 0; counter-reset: toc; }
.legal-toc li { counter-increment: toc; margin-bottom: 10px; }
.legal-toc li::before {
  content: counter(toc) ". ";
  color: var(--gold2);
  font-size: 0.75rem;
  font-weight: 600;
}
.legal-toc a {
  color: var(--text2);
  font-size: 0.84rem;
  text-decoration: none;
  cursor: pointer;
  transition: color 0.2s;
}
.legal-toc a:hover { color: var(--gold2); }

.legal-body h2 {
  font-family: 'Cairo', sans-serif;
  font-size: 1.2rem;
  font-weight: 800;
  color: var(--text);
  margin: 40px 0 14px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--border2);
  scroll-margin-top: 90px;
}
.legal-body h2:first-child { margin-top: 0; }
.legal-body h3 {
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--gold2);
  margin: 20px 0 8px;
}
.legal-body p {
  color: var(--text2);
  line-height: 1.9;
  margin-bottom: 12px;
  font-size: 0.94rem;
}
.legal-body ul, .legal-body ol { padding-right: 22px; margin-bottom: 14px; }
.legal-body li {
  color: var(--text2);
  line-height: 1.85;
  margin-bottom: 7px;
  font-size: 0.92rem;
}
.legal-body strong { color: var(--text); }
.legal-intro-note {
  background: var(--gold-dim);
  border: 1px solid var(--border);
  border-radius: var(--r);
  padding: 18px 22px;
  margin-bottom: 36px;
  color: var(--text2);
  font-size: 0.93rem;
  line-height: 1.85;
}
.legal-intro-note strong { color: var(--gold2); }
.legal-warning {
  background: rgba(248,113,113,0.07);
  border: 1px solid rgba(248,113,113,0.25);
  border-radius: var(--r);
  padding: 18px 22px;
  margin: 14px 0;
  color: var(--text2);
  font-size: 0.9rem;
  line-height: 1.85;
}
.legal-contact {
  background: var(--panel2);
  border: 1px solid var(--border2);
  border-radius: var(--r);
  padding: 20px 24px;
  margin-top: 12px;
}
.legal-contact p {
  color: var(--text2);
  margin-bottom: 8px;
  font-size: 0.9rem;
}
.legal-contact p:last-child { margin-bottom: 0; }

/* ── SEO text section ── */
.seo-section {
  max-width: 1200px;
  margin: 0 auto;
  padding: 32px 48px 56px;
  border-top: 1px solid var(--border3);
}
.seo-section h2 {
  font-size: 0.95rem;
  color: var(--text3);
  font-weight: 700;
  margin-bottom: 10px;
}
.seo-section p {
  font-size: 0.8rem;
  color: var(--text4);
  line-height: 1.9;
  max-width: 900px;
}
