/* ⚖ الرمزان --cw-* يعرّفهما العنصران الجذران في partials/chatwoot؛ والاحتياطُ (--fnv-ink/--fnv-surface) للأغلفة التي لا تطبعهما (الهاتف) فلا محدِّدَ يقرأ رمزاً غائباً (DesignGuard · 2026-09-03). */
/* ⚖ z من السلّم (--z-widget 9000) لا رقمٌ عملاقٌ (كان 2147482000): يعلو الترويسةَ اللاصقة (1040) والنوافذَ، ونافذةُ Chatwoot الخارجيّة تعلوه حين تُفتح وهذا مقصود. */
/* ══ زرُّ الدعم ونافذةُ الترحيب (Chatwoot) — نُقلت من وسم نمطٍ مضمَّن في partials/chatwoot (القاعدة 1 · 2026-09-03) ══
   ⚖ لونا الحبر والورق يصلان من القالب رمزَين مخصّصَين على العنصرين الجذرين (--cw-ink · --cw-paper) لا قيماً مطبوعةً في CSS. */

/* الزرّ عائم بـz-index هائل ⇒ يحجب آخر سطور أي صفحة عند نهاية التمرير، فنحجز له مساحة.
   ⚠ الحجز **داخل** آخر عنصر مرئيّ لا على `body`: حشوة body خلفيّتها بيضاء فتُصيّر
   شريطاً أبيض أسفل التذييل الأسود (شكوى المالك 2026-07-26). التذييل التحريريّ يمدّ
   سواده ليبتلع المساحة، والصفحات بلا تذييل (لوحة المشترك) تُبقي الحجز على body لأن
   خلفيّتها بيضاء أصلاً فلا يظهر شريط. */
footer.fnv-editorial-footer{padding-bottom:96px;}
body:not(:has(.fnv-editorial-footer)){padding-bottom:96px;}
@media (max-width:575px){
    footer.fnv-editorial-footer{padding-bottom:84px;}
    body:not(:has(.fnv-editorial-footer)){padding-bottom:84px;}
}
#fnvSupportBtn{position:fixed;bottom:24px;right:24px;z-index:var(--z-widget,9000);display:inline-flex;align-items:center;gap:9px;background:var(--cw-ink, var(--fnv-ink));color:var(--cw-paper, var(--fnv-surface));border:2px solid var(--cw-ink, var(--fnv-ink));padding:12px 18px;border-radius:0;cursor:pointer;font-family: 'Readex Pro',sans-serif;font-weight:700;font-size:.9rem;line-height:1.6;box-shadow: none;transition:transform .18s ease,background .18s ease,color .18s ease;}
/* التحويم يقلب لا يُغمّق: نظامٌ بلونين لا يملك «أغمق من الأسود» — والقلب أوضح إشارةً */
#fnvSupportBtn:hover,#fnvSupportBtn:focus-visible{transform:translate(-2px,-2px);box-shadow: none;background:var(--cw-paper, var(--fnv-surface));color:var(--cw-ink, var(--fnv-ink));}
#fnvSupportBtn svg{width:21px;height:21px;flex-shrink:0;}
#fnvSupportBtn.fnv-hide{display:none;}
#fnvGreet{position:fixed;bottom:84px;right:24px;z-index:calc(var(--z-widget,9000) - 1);width:308px;max-width:calc(100vw - 40px);background:var(--cw-paper, var(--fnv-surface));border:2px solid var(--cw-ink, var(--fnv-ink));box-shadow: none;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .25s ease,transform .25s ease,visibility .25s;font-family: 'Readex Pro',sans-serif;}
#fnvGreet.fnv-greet-show{opacity:1;visibility:visible;transform:translateY(0);}
#fnvGreet.fnv-hide{display:none;}
.fnv-greet-head{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--cw-ink, var(--fnv-ink));color:var(--cw-paper, var(--fnv-surface));}
/* مربّعٌ لا دائرة: صفر استدارة عبر النظام كلّه (ميثاق §4) */
.fnv-greet-head img{width:40px;height:40px;background:var(--cw-paper, var(--fnv-surface));object-fit:contain;border-radius:0;padding:3px;border:2px solid var(--cw-paper, var(--fnv-surface));flex-shrink:0;}
.fnv-greet-head b{font-size:.9rem;display:block;line-height:1.5;}
.fnv-greet-head span{font-size:.8125rem;opacity:.85;line-height:1.7;}
.fnv-greet-body{padding:14px;color:var(--cw-ink, var(--fnv-ink));font-size:.88rem;line-height:1.75;text-align:right;}
/* ⚠ `min-height:44px` — كان 42px مقيساً على 390px، أي دون حدّ الهدف اللمسيّ
     بنقطتين. والحشوةُ وحدَها لا تضمن الارتفاع لأنّها تتبع مقاسَ الخطّ. */
#fnvGreetCta{display:block;width:calc(100% - 28px);min-height:44px;margin:0 14px 14px;background:var(--cw-ink, var(--fnv-ink));color:var(--cw-paper, var(--fnv-surface));border:2px solid var(--cw-ink, var(--fnv-ink));padding:10px;font-weight:700;font-size:.88rem;cursor:pointer;border-radius:0;font-family: inherit;transition:background .18s,color .18s;}
#fnvGreetCta:hover,#fnvGreetCta:focus-visible{background:var(--cw-paper, var(--fnv-surface));color:var(--cw-ink, var(--fnv-ink));}
/* ⛔ **هدفُ لمسٍ 22×21px** — قِيس على جوّال 390px: دون حدّ 44×44 بأكثر من النصف،
   فيُخطئه الإبهامُ ويُغلق المستخدمُ ما لا يريد أو يفشل في إغلاق ما يريد.
   ⚖ الحلُّ توسيعُ **منطقة اللمس** لا حجم المحرف: الحشوةُ تكبّر الهدف والرمزُ
     يبقى بمقاسه البصريّ، فلا يتغيّر شكلُ الودجت. */
#fnvGreetClose{position:absolute;top:0;left:0;background:none;border:none;color:var(--cw-paper, var(--fnv-surface));
               font-size:22px;line-height:1;cursor:pointer;
               min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;}
/* نقطة الاتّصال الحيّ + نصّها لقارئ الشاشة.
   ⚖ `currentColor` لا أبيض ثابت: الزرّ يقلب عند التحويم فالنقطة تقلب معه.
   ⚖ والنبض بـ`transform/opacity` لا `box-shadow`: الأخير يُعاد رسمه كلّ إطار. */
.fnv-sup-live{position:relative;width:8px;height:8px;background:currentColor;flex-shrink:0;}
.fnv-sup-live::after{content:'';position:absolute;inset:0;background:currentColor;animation:fnvSupPulse 2.2s ease-out infinite;}
@keyframes fnvSupPulse{0%{transform:scale(1);opacity:.6;}70%{transform:scale(2.8);opacity:0;}100%{transform:scale(2.8);opacity:0;}}
@media (prefers-reduced-motion:reduce){.fnv-sup-live{animation:none;}}
.fnv-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}
/* ⚠ الهاتف: يُخفى **نصّ** الزرّ وحده. الاستهداف `span` العامّ كان سيبتلع نقطة
   «متصلون» أيضاً فيعود الزرّ رمزاً صامتاً بلا إشارةِ حياة. */
@media (max-width:600px){#fnvSupportBtn .fnv-sup-lbl{display:none;}#fnvSupportBtn{padding:14px;gap:7px;}}
/* ⛔ **تصادمٌ مقيسٌ على 390×844** (2026-08-07): زرُّ الدعم (z=2147482000) يجلس
   **فوق** شريط الدعوة اللاصق `.fv-sticky-mobile-cta` (z=1000) ويغطّي منه
   68×53 بكسل — أي يحجب جزءاً من زرِّ التحويل الأساسيّ على الهاتف، وهو آخرُ ما
   يُراد حجبُه في صفحةٍ تسويقيّة.
   ⚖ ولا يُحلّ بـ`z-index`: كلاهما يجب أن يُرى. الحلُّ **إخلاءُ المكان**: يُرفع
     الزرُّ فوق الشريط حين يوجد وحدَه (`:has`)، فلا يتغيّر شيءٌ في الصفحات التي
     لا شريطَ فيها (لوحة المشترك · الأكاديميّة).
   الارتفاعُ 86px مقيسٌ لا مُقدَّر، و10px هامشُ تنفّس. */
@media (max-width:700px){
    body:has(.fv-sticky-mobile-cta) #fnvSupportBtn{bottom:120px;}
    body:has(.fv-sticky-mobile-cta) #fnvGreet{bottom:180px;}
}
