/* ═══════════════════════════════════════════════════════════════
   GazaPX v2 — طبقة نظام التصميم الجديد (من ملفات 01/02/04/05/06)
   نفس القيم حرفيًا من التصاميم؛ الأسماء مسبوقة بـ v2- حتى لا تتعارض
   مع طبقات البوابة/الداشبورد. تُحمَّل في base.html بعد gazapx.css.
   ═══════════════════════════════════════════════════════════════ */
:root {
  --v2-navy-950: #07071F; --v2-navy-900: #0B0B38; --v2-navy-700: #1E2A78;
  --v2-navy-500: #3B4FA8; --v2-navy-300: #93A3D9; --v2-navy-100: #E7EAFA;
  --v2-navy-50: #F5F6FD;
  --v2-amber-700: #D9391A; --v2-amber-600: #F0661A; --v2-amber-400: #F68C4D;
  --v2-amber-200: #FBC9A0; --v2-amber-100: #FFE4CC; --v2-amber-50: #FFF3E9;
  --v2-ink: #15171C; --v2-g600: #585C68; --v2-g400: #9AA0AE;
  --v2-g300: #D7DAE2; --v2-g200: #E9EBF0;
  --v2-paper: #FFFFFF; --v2-cream: #FAFAF7;
  --v2-line: rgba(11, 11, 56, 0.10); --v2-line-dark: rgba(255, 255, 255, 0.14);
  --v2-sh-card: 0 12px 32px -14px rgba(11, 11, 56, 0.18);
  --v2-sh-lift: 0 26px 60px -24px rgba(11, 11, 56, 0.32);
  --v2-success: #2E7D52;
  --v2-ease: cubic-bezier(0.2, 0.7, 0.2, 1);
  --v2-ease-in: cubic-bezier(0.16, 1, 0.3, 1);
}

/* ── طباعة ── */
.v2-ar { font-family: "Cairo", system-ui, sans-serif; }
.v2-lat { font-family: "Space Grotesk", "Cairo", sans-serif; direction: ltr; }
.v2-mono {
  font-family: "IBM Plex Mono", ui-monospace, monospace;
  direction: ltr; letter-spacing: 0.06em;
}
.v2-eyebrow {
  font-family: "IBM Plex Mono", monospace; font-size: 12px;
  letter-spacing: 0.14em; text-transform: uppercase;
  color: var(--v2-amber-700); direction: ltr;
}
.v2-h2 {
  font-family: "Cairo", sans-serif; font-weight: 800; font-size: 40px;
  line-height: 1.35; color: var(--v2-navy-900); margin: 0; letter-spacing: -0.01em;
}
.v2-h2m {
  font-family: "Cairo", sans-serif; font-weight: 800; font-size: 27px;
  line-height: 1.45; color: var(--v2-navy-900); margin: 10px 0 0; letter-spacing: -0.01em;
}
.v2-lead { font-family: "Cairo", sans-serif; font-size: 17px; line-height: 1.95; color: var(--v2-g600); margin: 0; }
.v2-body { font-family: "Cairo", sans-serif; font-size: 15px; line-height: 1.9; color: var(--v2-g600); margin: 0; }
.v2-bodym { font-family: "Cairo", sans-serif; font-size: 14.5px; line-height: 1.9; color: var(--v2-g600); margin: 0; }

/* ── أزرار (min-height 48/52، radius 10/12) ── */
.v2-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  font-family: "Cairo", sans-serif; font-weight: 700; font-size: 16px;
  padding: 16px 30px; border-radius: 10px; min-height: 52px; box-sizing: border-box;
  transition: background-color 180ms var(--v2-ease), box-shadow 180ms var(--v2-ease), transform 180ms var(--v2-ease), border-color 120ms var(--v2-ease);
}
.v2-btn-p { background: var(--v2-amber-600); color: #fff; box-shadow: 0 10px 24px -10px rgba(240, 102, 26, 0.75); }
.v2-btn-p:hover { background: var(--v2-amber-700); box-shadow: 0 14px 28px -10px rgba(240, 102, 26, 0.8); }
.v2-btn-p:active { background: #B82E13; }
.v2-btn-g { border: 1.5px solid var(--v2-line); color: var(--v2-navy-900); background: var(--v2-paper); }
.v2-btn-g:hover { border-color: var(--v2-navy-300); background: var(--v2-navy-50); }
.v2-btn-g:active { border-color: var(--v2-navy-700); background: var(--v2-navy-100); }
.v2-btn-gd { border: 1.5px solid var(--v2-line-dark); color: #fff; background: transparent; }
.v2-btn-gd:hover { background: rgba(255, 255, 255, 0.06); }
.v2-btnm {
  display: flex; align-items: center; justify-content: center; gap: 9px;
  font-family: "Cairo", sans-serif; font-weight: 700; font-size: 16px;
  padding: 16px 22px; border-radius: 12px; min-height: 52px; box-sizing: border-box;
}
.v2-btn:focus-visible, .v2-btnm:focus-visible, a.v2-btn:focus-visible {
  outline: 3px solid rgba(30, 42, 120, 0.35); outline-offset: 3px;
}
.v2-btn[disabled], .v2-btnm[disabled] { background: var(--v2-g200); color: var(--v2-g400); box-shadow: none; cursor: not-allowed; }

/* ── شارات ── */
.v2-tag {
  display: inline-flex; align-items: center; gap: 6px;
  font-family: "IBM Plex Mono", monospace; font-size: 11px;
  letter-spacing: 0.1em; text-transform: uppercase;
  padding: 6px 10px; border-radius: 4px; direction: ltr;
}
.v2-tag-navy { background: var(--v2-navy-50); color: var(--v2-navy-700); }
.v2-tag-amber { background: var(--v2-amber-50); color: var(--v2-amber-700); }
.v2-tag-green { background: #E6F4EC; color: var(--v2-success); }
.v2-tag-dark { background: var(--v2-navy-900); color: #fff; }
.v2-chip-on { font-size: 14px; font-weight: 700; padding: 9px 18px; border-radius: 999px; background: var(--v2-navy-900); color: #fff; }
.v2-chip-off { font-size: 14px; font-weight: 600; padding: 9px 18px; border-radius: 999px; border: 1px solid var(--v2-line); color: var(--v2-g600); background: transparent; transition: background-color 120ms var(--v2-ease); }
a.v2-chip-off:hover { background: var(--v2-navy-50); }

/* ── بطاقات ── */
.v2-card { background: var(--v2-paper); border: 1px solid var(--v2-line); border-radius: 14px; box-sizing: border-box; transition: transform 180ms var(--v2-ease), box-shadow 180ms var(--v2-ease), border-color 180ms var(--v2-ease); }
a.v2-card:hover { transform: translateY(-4px); border-color: rgba(240, 102, 26, 0.4); box-shadow: 0 22px 44px -22px rgba(11, 11, 56, 0.35); }
a.v2-card:hover .v2-card-title { color: var(--v2-amber-700); }
.v2-cardm { background: #fff; border: 1px solid var(--v2-line); border-radius: 14px; box-sizing: border-box; }

/* ── زخارف ── */
.v2-rule { height: 1px; background: var(--v2-line); }
.v2-grid-bg {
  background-image:
    linear-gradient(to right, rgba(11, 11, 56, 0.055) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(11, 11, 56, 0.055) 1px, transparent 1px);
  background-size: 32px 32px;
}
.v2-grid-bg-d {
  background-image:
    linear-gradient(to right, rgba(147, 163, 217, 0.10) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(147, 163, 217, 0.10) 1px, transparent 1px);
  background-size: 32px 32px;
}

/* ── روابط النافبار: خط سفلي من جهة البداية ── */
.v2-navlink { position: relative; font-weight: 600; font-size: 15px; color: var(--v2-navy-900); padding: 6px 2px; }
.v2-navlink::after {
  content: ""; position: absolute; bottom: 0; inset-inline-start: 0;
  width: 100%; height: 2px; background: var(--v2-amber-600);
  transform: scaleX(0); transform-origin: right center;
  transition: transform 120ms var(--v2-ease);
}
[dir="ltr"] .v2-navlink::after { transform-origin: left center; }
.v2-navlink:hover::after { transform: scaleX(0.45); }
.v2-navlink.active::after { transform: scaleX(1); }

/* ── شريط CTA الثابت (موبايل، كل الصفحات العامة) ── */
.v2-sticky-cta {
  position: sticky; bottom: 0; z-index: 40;
  background: rgba(255, 255, 255, 0.96); border-top: 1px solid var(--v2-line);
  padding: 12px 20px calc(12px + env(safe-area-inset-bottom, 0px));
  display: flex; align-items: center; gap: 12px;
  box-shadow: 0 -10px 30px -18px rgba(11, 11, 56, 0.5);
}
@media (min-width: 640px) { .v2-sticky-cta { display: none; } }

/* ── رابط التخطي ── */
.v2-skip {
  position: absolute; top: -100px; inset-inline-start: 16px; z-index: 200;
  background: var(--v2-navy-900); color: #fff; font-weight: 700; font-size: 14px;
  padding: 10px 18px; border-radius: 8px; transition: top 120ms var(--v2-ease);
}
.v2-skip:focus { top: 12px; }

/* ── حركة مخفّضة: نسخة أصلية لا استثناء ── */
@media (prefers-reduced-motion: reduce) {
  .v2-btn, .v2-btnm, .v2-card, a.v2-card, a.v2-card:hover, .v2-navlink::after, .v2-chip-off { transition: none !important; }
  a.v2-card:hover { transform: none; }
}
