/* ═══════════════════════════════════════════════════════════════════════════
   مفردات العرض المشتركة — طبقةٌ واحدة تحمل ما تكرّر في كل شاشة.

   **العلّة، مقيسةً:** ستّون قشرة CSS مستقلّة داخل TypeScript (~٤٧٠ كيلوبايت)
   مقابل ١١١٣ سطرًا في الملفات المشتركة. ومئتان وأربعون بادئة صنف — كلُّ شاشةٍ
   اخترعت فضاء أسماءٍ لنفسها. و`border:1px solid var(--rule)` مكتوبٌ ٢٧٨ مرة،
   و`min-height:44px` مكتوبٌ ٢٣٠ مرة يدويًّا.

   ولذلك «كلُّ المحتوى مكتوبٌ بنفس الطريقة»: لا مفرداتٍ مشتركة، فكلُّ شاشة
   تكتب الفقرة — لأنها أرخص ما يُكتب — بدل الجدول والبطاقة والرقاقة.

   ═══ تصحيحٌ لفرضيّةٍ كانت في الخطة ═══

   قالت الخطة: `sharedAdminShell` يحقن `<link>` الأصول **ثم** `<style>` الصفحة،
   فعند تساوي الأولوية تفوز أنماط الصفحة — إذن تُلحَق الأسماء القديمة كلُّها
   بالبدائيّ في قاعدةٍ واحدة، ولا تتغيّر بكسل.

   **وهذا خطأ، وقيس.** الترجيح في CSS يقع على **الإعلان** لا على القاعدة: قاعدةٌ
   قديمة تضبط `color` و`font-size` لا تحجب `padding` ولا `text-align` من قاعدةٍ
   أخرى. فقاعدةُ مرادفاتٍ بخمسة إعلانات حرّكت **٢٢ لقطة من ١٢٦**؛ وباثنين
   «نبرةً فقط» حرّكت **١٧**. ولا قاعدةَ مرادفاتٍ غيرُ فارغة تكون خاملة.

   ═══ فكيف تتقدّم الطبقة ═══

   البدائيّ `.az-*` يحمل العلاج كاملًا، **ولا يُلحَق به اسمٌ قديم بالجملة**.
   والتحويل يقع شاشةً شاشة: يُستبدَل اسمُ الشاشة بالبدائيّ، وتُحذف قاعدتها،
   **وتُعرض لقطتُها قبل/بعد**. فما يتغيّر يراه صاحبُه قبل أن يستقرّ.

   والثمن معلوم: إضافةُ هذا الملف اليوم لا تُري محمدًا شيئًا. والمقابل أن
   «توحيدٌ خفيّ» لا يمرّ بلا عينٍ — وقد كاد: قاعدةُ المرادفات الأولى مرّت
   بصفر عيبٍ جديد في الفحص، ثم أظهرت اللقطة أنها فصلت «أضف وسيطًا» عن نصّها
   في `/admin/brokers` بتوسيطِ أحدهما دون الآخر.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── الحالة الفارغة ──────────────────────────────────────────────────────────
   واحدٌ وأربعون اسمًا لمعنًى واحد: «لا يوجد شيء». مئةٌ وواحدٌ وثمانون موضعًا.
   وهي أوضح مثالٍ على العلّة: لا أحد أراد أربعين شكلًا للفراغ، لكن كلَّ شاشةٍ
   احتاجته ولم تجد مفردةً تأخذها.

   والفراغ ليس عدمًا يُخفى: هو حالةُ عرضٍ قائمة بذاتها، تقول ما لا نعرفه. */
.az-empty {
  margin: 0;
  padding: var(--space-5) var(--space-4);
  color: var(--mut);
  font-size: var(--label);
  line-height: var(--lh-body);
  text-align: center;
}

/* عنوانٌ ثم شرح — الشكل الذي وصلت إليه أفضلُ الحالات الفارغة وحدها: «لا إشعارات
   جديدة» ثم «ستظهر هنا تفاعلات العملاء فور وقوعها». والباقي اكتفى بسطرٍ واحد
   رماديّ لأنه لم يجد المفردة، لا لأنه اختار الاختصار. */
.az-empty > b,
.az-empty > strong {
  display: block;
  color: var(--ink);
  font-size: var(--small);
}

/* الرابط داخل الحالة الفارغة يأخذ لونَ الروابط ووزنَها — **ولا يأخذ هندسةً**.
   جُرّب `inline-flex;min-height:44px` أوّلًا فكسر سطرَ الجملة: أغلبُ هذه
   الروابط داخل جملةٍ لا فعلٌ قائم بذاته، وصندوقُ ٤٤ في وسط السطر يفرّقه.
   والفعلُ القائم بذاته له مفردتُه: `.az-act`. و`:not` تمنع تكرار العلّة
   المسجَّلة أسفل — قاعدةٌ واسعة في الطبقة تغلب `.az-act--primary`. */
.az-empty a:not(.az-act) { color: var(--p700); font-weight: 700; }

.az-empty > span,
.az-empty > small {
  display: block;
  margin-top: var(--space-1);
}

/* الحالةُ الفارغة داخل بطاقةٍ صغيرة: سطرٌ يُقال في مكانه، لا لوحةٌ تُفرَد.
   والفرق ليس ذوقًا — المالك يشكو «المساحات الفارغة»، وحشوُ الصفحة الكامل
   (٤٠ بكسلًا رأسيًّا وتوسيطٌ) داخل بطاقةٍ ارتفاعها مئةٌ **يصنع** الفراغ الذي
   يشكو منه. فهما حالتان لمعنًى واحد، لا اسمان له. */
.az-empty--inline {
  padding: var(--space-2) 0;
  text-align: start;
  font-size: var(--micro);
}

/* ── الوسم ───────────────────────────────────────────────────────────────────
   رقاقةٌ تُنقر، لا نصٌّ بين قوسين. والمالك طلبها صراحةً على سابقة Roam/Obsidian:
   «ابغى خصائص تزيد الربط وسهولة التصفح والوصول».

   والحالة تُقرأ من الشكل لا من كلمة: المعتمَد بخطٍّ متّصل، والحرّ بخطٍّ متقطّع —
   فيُعرف أنه اقتراحٌ لم يُبتّ بلا أن يُكتب ذلك في كل رقاقة. */
.az-tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  margin: var(--space-3) 0 0;
  padding: 0;
  list-style: none;
}

.az-tag {
  display: inline-flex;
  align-items: center;
  gap: var(--az-sp-2);
  min-height: 32px;
  padding: 0 var(--az-sp-3);
  border: 1px solid var(--rule);
  border-radius: 99px;
  background: var(--paper);
  color: var(--mut);
  font-size: var(--micro);
  line-height: 1;
  text-decoration: none;
}

.az-tag:hover,
.az-tag:focus-visible { color: var(--ink); border-color: var(--ink); }

.az-tag.is-free { border-style: dashed; }

.az-tag > b { font-weight: 700; color: inherit; }

/* العدّاد بخطٍّ رقميٍّ ثابت العرض: الرقاقات لا ترقص حين يتغيّر الرقم. */
.az-tag > i {
  font-style: normal;
  font-variant-numeric: tabular-nums;
  color: var(--mut-2);
}

/* ── الرقاقةُ ونزعُها: حبّةٌ واحدة بنصفين ──────────────────────────────────
   والنزعُ لا يكون زرًّا طافيًا ولا عنصرًا يظهر بالتحويم: على الجوّال لا تحويم،
   وزرٌّ يظهر بالتحويم زرٌّ لا وجود له على نصف الأجهزة. فهو ظاهرٌ دائمًا لمن
   يملك الإذن، ويلتصق بالرقاقة فيُقرأ جزءًا منها لا زرًّا مستقلًّا. */
.az-tag-wrap { display: inline-flex; align-items: stretch; }

.az-tag-wrap > .az-tag {
  border-start-end-radius: 0;
  border-end-end-radius: 0;
  border-inline-end: 0;
  padding-inline-end: var(--az-sp-2);
}

.az-tag-off { display: flex; margin: 0; }

.az-tag-off button {
  min-height: 32px;
  min-width: 26px;
  padding: 0 var(--az-sp-2) 1px;
  border: 1px solid var(--rule);
  border-start-start-radius: 0;
  border-end-start-radius: 0;
  border-start-end-radius: 99px;
  border-end-end-radius: 99px;
  background: var(--paper);
  color: var(--mut-2);
  font: inherit;
  font-size: var(--label);
  line-height: 1;
  cursor: pointer;
}

.az-tag-off button:hover,
.az-tag-off button:focus-visible { color: var(--alert); border-color: var(--alert); }

.az-tag-wrap > .az-tag.is-free { border-inline-end: 0; }
.az-tag-wrap:has(.az-tag.is-free) .az-tag-off button { border-style: dashed; }

.az-tag-form { display: inline-flex; align-items: center; gap: var(--az-sp-2); margin: 0; }

.az-tag-form input {
  min-height: 32px;
  box-sizing: border-box;
  width: 9rem;
  border: 1px dashed var(--rule);
  border-radius: 99px;
  background: transparent;
  padding: 0 var(--az-sp-3);
  color: var(--ink);
  font: inherit;
  font-size: var(--micro);
}

.az-tag-form button {
  min-height: 32px;
  border: 0;
  background: transparent;
  color: var(--p700);
  font: inherit;
  font-size: var(--micro);
  font-weight: 700;
  cursor: pointer;
}

/* هدف اللمس على الجوّال ٤٤ لا ٣٢ — وهو شرطٌ تفحصه المسحة وتُسقط الشاشة عليه. */
@media (max-width: 640px) {
  .az-tag,
  .az-tag-form input,
  .az-tag-form button { min-height: 44px; }
  .az-tag-form input { width: 7.5rem; }
  /* الارتفاع وحده لا يكفي: «أضف» كلمةٌ قصيرة فخرج الزرّ ٢٥×٤٤، وأسقطته المسحة. */
  .az-tag-form button { min-width: 44px; padding: 0 var(--space-2); }
}

/* ── الصفحة والقسم والصفّ ────────────────────────────────────────────────────
   أربعةٌ وخمسون «أقصى عرض» مختلفًا في البوابة، ورمز `--container` مستعمَلٌ مرّةً
   واحدة. ومئةٌ وخمس وثلاثون شبكةً أحادية العمود هي التخطيط الغالب. فكلُّ شاشةٍ
   تعيد اختراع «صفحة» و«قسم» و«صفّ» — وهذه هي المفردات الثلاث.

   و`kit.ts` صدّر `listPanel` و`listRow` منذ بُني و**لا شاشة واحدة تستعملهما**.
   والفرق أن هذه أصنافُ CSS لا دوالّ: الشاشة تلبسها بلا أن تغيّر بناءها. */
.az-page {
  max-width: 900px;
  margin: 0 auto;
  padding-bottom: var(--space-7);
}

.az-page > header {
  padding: var(--space-3) 0 var(--space-4);
  border-bottom: 1px solid var(--ink);
}

.az-page > header > p {
  margin: 0;
  color: var(--p700);
  font-size: var(--micro);
  font-weight: 700;
}

.az-page > header > h1 { font-size: var(--h4); margin: var(--az-sp-1) 0; } /* ≤ --h4 (عقد التصميم ٣، ADR 082) */

/* عدّادُ العنوان — على سابقة `.az-section > h2 > i`: يلاصق عنوانه بفجوةٍ من
   السلّم، ولا يُرمى إلى الطرف. وبلا هذه القاعدة يخرج «الوسوم٢» كلمةً واحدة. */
.az-page > header > h1 { display: flex; align-items: baseline; gap: var(--space-3); }
.az-page > header > h1 > i {
  font-style: normal;
  font-size: var(--label);
  font-weight: 400;
  color: var(--mut);
  font-variant-numeric: tabular-nums;
}

/* سطرُ الشرح تحت العنوان — كلُّ صفحةٍ كانت تكتبه لنفسها بلونٍ وسطرٍ مختلفين. */
.az-page > header > span {
  display: block;
  color: var(--mut);
  font-size: var(--label);
  line-height: var(--lh-body);
}

/* ترويسةٌ بطرفين: عنوانٌ وشرحُه، ورابطُ خروجٍ في الطرف الآخر. */
.az-page > header.az-head-split {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: var(--space-4);
}

.az-head-split > a { color: var(--p700); font-size: var(--label); font-weight: 700; white-space: nowrap; }
.az-head-split > div > p { margin: 0; color: var(--p700); font-size: var(--micro); font-weight: 700; }
.az-head-split > div > h1 { font-size: var(--h4); margin: var(--az-sp-1) 0; }
.az-head-split > div > span { display: block; color: var(--mut); font-size: var(--label); line-height: var(--lh-body); }

/* على الجوّال يسقط رابط الخروج: القشرة تحمل الرجوع، وتكراره يزاحم العنوان. */
@media (max-width: 640px) {
  .az-page > header.az-head-split { align-items: start; }
  .az-head-split > a { display: none; }
}

/* ملاحظةٌ جانبيّة: جملةٌ تُقال ورابطٌ يُتبعها. تتكرّر في الشاشات بأسماءٍ شتّى. */
.az-note {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  padding: var(--space-3) 0;
  border-bottom: 1px solid var(--rule);
  color: var(--mut);
  font-size: var(--label);
}

.az-note strong { display: block; color: var(--ink); font-size: var(--body); }
.az-note a { color: var(--p700); font-weight: 700; white-space: nowrap; }

/* نقطةُ الحالة — إشارةٌ تُرى قبل أن تُقرأ، والنصّ بجوارها يقولها لمن لا يراها. */
.az-dot {
  flex: 0 0 auto;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--p400);
}

.az-dot--warn { background: var(--warning); }
.az-dot--ok { background: var(--ok); }

.az-section { margin-top: var(--space-5); }

/* العدّاد عنصرٌ مستقلّ على الطرف، **لا بعد نقطةٍ فاصلة**: صفرُ العربية الهندية
   نقطةٌ، فـ«أشخاص · ١» يُقرأ «أشخاص ١٠». وقع فعلًا وظهر في أول لقطة. */
.az-section > h2 {
  display: flex;
  align-items: baseline;
  /* **العدّاد يلاصق عنوانه، ولا يُرمى إلى الطرف المقابل.**
     كان `space-between`، فعلى شاشةٍ عرضُها ألف بكسلٍ يصير بين «جهات محفوظة
     تحتاج فرزًا» ورقمِها ثمانُ مئة بكسلٍ فراغ — والعين لا تربطهما. وهذا نصُّ
     شكوى المالك: «فراغات واسعة»، ولم يكن يظهر في قياسٍ على ١٢٨٠ لأن الصفحة
     هناك مزدحمةٌ بما يملؤها. */
  justify-content: flex-start;
  gap: var(--space-3);
  font-size: var(--h4);
  margin: 0 0 var(--space-2);
  padding-bottom: var(--space-2);
  border-bottom: 1px solid var(--rule);
}

.az-section > h2 > i {
  font-style: normal;
  font-size: var(--label);
  font-weight: 400;
  color: var(--mut);
  font-variant-numeric: tabular-nums;
}

/* قائمةٌ عارية تحمل الصفوف: `<ul>` بلا نقاطٍ ولا حشو. كانت كلُّ شاشةٍ تكتب
   `margin:0;padding:0;list-style:none` لنفسها — تسعًا وعشرين مرّة في الجرد. */
.az-list { margin: 0; padding: 0; list-style: none; }

/* **الحقائق: تسميةٌ وقيمة، في شبكةٍ لا في أسطرٍ كاملة العرض.**

   العلّةُ المقاسة (§ح من الخطة): في `output-workspace-1280x900.png` كلُّ حقلٍ
   سطرٌ كامل العرض «تسمية فوق قيمة» بخطٍّ شعريّ فاصل، وسطرٌ بعرض ١١٣٠ بكسلًا —
   أي ضعفُ طول السطر المريح. فستُّ حقائقَ تملأ شاشةً وتُقرأ فراغًا.

   والشبكةُ تحلّها بلا اختراع: عمودٌ على الجوّال، وأعمدةٌ بقدر ما يتّسع. */
.az-facts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: var(--space-2) var(--space-4);
  margin: 0;
}

.az-facts > div {
  padding: var(--space-2) 0;
  border-bottom: 1px solid var(--rule);
  min-width: 0;
}

.az-facts dt {
  color: var(--mut);
  font-size: var(--micro);
  line-height: 1.6;
}

.az-facts dd {
  margin: 2px 0 0;
  color: var(--ink);
  font-size: var(--body);
  line-height: 1.6;
  overflow-wrap: anywhere;
}

/* حقيقةٌ طويلة (مقتطفٌ أو جملة) تأخذ الصفَّ كلَّه بدل أن تُحشر في عمود. */
.az-facts > div.az-facts--wide { grid-column: 1 / -1; }


/* القسمُ المطويّ: `<summary>` يأخذ شكل `h2` نفسه، فلا يفترق المطويّ عن المفرود.
   والمثلّثُ يبقى — هو الإشارة الوحيدة إلى أن هنا شيئًا يُفتح. */
.az-section > summary {
  display: flex;
  align-items: baseline;
  justify-content: flex-start;
  gap: var(--space-3);
  min-height: 44px;
  font-size: var(--h4);
  margin: 0 0 var(--space-2);
  padding-bottom: var(--space-2);
  border-bottom: 1px solid var(--rule);
  cursor: pointer;
}

.az-section > summary > i {
  font-style: normal;
  font-size: var(--label);
  font-weight: 400;
  color: var(--mut);
  font-variant-numeric: tabular-nums;
}

.az-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-3);
  min-height: 44px;
  padding: var(--space-2) 0;
  border-bottom: 1px solid var(--rule);
  color: var(--ink);
  text-decoration: none;
}

.az-row > span { color: var(--mut); font-size: var(--micro); }

/* صفٌّ بثلاثة أجزاء: إشارةٌ، ومتنٌ يتمدّد، وفعلٌ في الطرف. */
.az-row > div { flex: 1; min-width: 0; }
.az-row > div > strong { display: block; font-size: var(--body); line-height: 1.5; margin: 2px 0; }
.az-row > div > span,
.az-row > div > small { display: block; color: var(--mut); font-size: var(--micro); line-height: 1.6; }
.az-row > b { color: var(--p700); font-size: var(--label); white-space: nowrap; }

a.az-row:hover > span,
a.az-row:focus-visible > span { color: var(--p700); }

/* شريطُ حالةٍ وفعل: جملةٌ تصف الحال، وزرٌّ واحد إن كان هناك فعل. */
.az-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  color: var(--mut);
  font-size: var(--label);
}

.az-bar form { margin: 0; }

/* ── ثلاثُ طرقٍ لعرض القائمة نفسها ───────────────────────────────────────────
   قرار المالك (٢٠ سبتمبر): «مفتاح تبديل بين ثلاثة أشكال: جدول مضغوط · بطاقات ·
   خطّ زمنيّ». وعلّته مقيسة: جدولٌ في **١٧ ملفًا من ٨٠**، وخطٌّ زمنيّ في **٥**،
   وتبويبٌ حقيقيّ في **واحد**، والبديل الغالب `<details>` في **٤٢** — أي أن
   البوابة تعرض كلَّ شيءٍ بطريقةٍ واحدة لأنها لا تملك غيرها.

   والصفوف نفسها في الأشكال الثلاثة: بيانٌ واحد يمرّ على ثلاثة مولّدات. فما
   يتغيّر هو القراءة لا المحتوى. */
.az-switch {
  display: flex;
  align-items: center;
  gap: 0;
  border: 1px solid var(--rule);
  border-radius: 99px;
  padding: 3px;
}

/* الارتفاع ٣٨ كان فوق ٦٤٠px فقط؛ الحدّ ٤٤ على كل المقاسات (أزرار تبديل العرض). */
.az-switch > a {
  min-width: 44px;
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 var(--space-3);
  border-radius: 99px;
  color: var(--mut);
  font-size: var(--micro);
  font-weight: 700;
  text-decoration: none;
}

.az-switch > a[aria-current="true"] { background: var(--ink); color: var(--paper); }

/* ١ · الجدول المضغوط */
.az-table { width: 100%; border-collapse: collapse; }
.az-table th,
.az-table td {
  text-align: start;
  padding: var(--space-2) var(--space-2);
  border-bottom: 1px solid var(--rule);
  font-size: var(--label);
  vertical-align: middle;
}
.az-table th { color: var(--mut); font-size: var(--micro); font-weight: 700; }
.az-table td { color: var(--ink); }
.az-table td > span { color: var(--mut); }
/* عنوانُ الخليّة وحده يرث لونها — لا كلُّ رابطٍ داخل الجدول.
   كانت `.az-table a` تشمل أفعال الصفّ أيضًا، وأولويّتها (٠,٠,١,١) تغلب
   `.az-act--primary` (٠,٠,١,٠)، فخرج الفعل الأساسيّ **حبرًا على حبر**: صندوقٌ
   داكنٌ بلا نصٍّ يُرى. والطبقة المشتركة تغلب نفسها حين تُكتب قاعدةٌ واسعة. */
.az-table td > a { color: inherit; }
.az-table tbody tr:hover { background: var(--p50, transparent); }

/* ٢ · البطاقات */
.az-cards {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: var(--space-3);
}

.az-card {
  display: grid;
  align-content: start;
  gap: var(--az-sp-2);
  min-height: 44px;
  padding: var(--space-3);
  border: 1px solid var(--rule);
  border-radius: var(--radius-lg, 14px);
  background: var(--paper);
  color: var(--ink);
  text-decoration: none;
}

.az-card { position: relative; }
.az-card:hover,
.az-card:focus-within { border-color: var(--ink); }

/* البطاقة كلُّها تُنقَر، وهي ليست `<a>`: رابطُ العنوان يتمدّد عليها. فتبقى
   روابطُ الحقائق (الجهة مثلًا) قابلةً للنقر فوقه — ورابطٌ داخل رابطٍ باطل. */
.az-card > b > a::after { content: ""; position: absolute; inset: 0; }
.az-card > b > a { color: inherit; text-decoration: none; }
.az-card dd a { position: relative; z-index: 1; color: var(--p700); }
.az-card > b { font-size: var(--small); }
.az-card > p { margin: 0; color: var(--mut); font-size: var(--label); line-height: var(--lh-body); }
.az-card > dl { display: flex; flex-wrap: wrap; gap: var(--az-sp-1) var(--space-3); margin: var(--az-sp-1) 0 0; font-size: var(--micro); }
.az-card dt { color: var(--mut-2); }
.az-card dd { margin: 0 var(--az-sp-1) 0 0; color: var(--mut); }

/* ٣ · الخطّ الزمنيّ */
.az-timeline { margin: 0; padding: 0; list-style: none; }

.az-timeline > li,
.az-timeline > .az-tl-row {
  display: grid;
  grid-template-columns: 7rem minmax(0, 1fr);
  gap: var(--space-3);
  padding: var(--space-3) 0;
  border-bottom: 1px solid var(--rule);
}

.az-timeline time { color: var(--mut); font-size: var(--micro); font-variant-numeric: tabular-nums; }
.az-timeline b { display: block; font-size: var(--small); }
.az-timeline p { margin: 2px 0 0; color: var(--mut); font-size: var(--label); line-height: var(--lh-body); }
/* عنصرُ السطر وحده يرث، لا كلُّ رابطٍ فيه — ثاني وقوعٍ للعلّة نفسها: قاعدةٌ
   واسعة في الطبقة المشتركة تغلب مكوّنًا فيها، فيخرج الفعل الأساسيّ بلا نصّ. */
.az-timeline > li > div > .az-tl-item,
.az-timeline > .az-tl-row > div > .az-tl-item { color: inherit; text-decoration: none; }

/* الخبر الجديد يومض مرة. تقليل الحركة يوقفها من قاعدة الصفحة. */
@keyframes az-tl-flash {
  from { background: var(--positive-bg); }
  to { background: transparent; }
}
.az-timeline > li.az-tl-new,
.az-timeline > .az-tl-row.az-tl-new {
  animation: az-tl-flash var(--dur-3) var(--ease) 1;
}

/* الجدول على الجوّال يصير صفوفًا معنونة، لا تمريرًا أفقيًّا.
   المصدر: مراجعة `/admin/activity` المعتمدة — «الجدول يتحول على ٣٩٠ إلى بطاقات
   معنونة بدل تمرير أفقي أو أعمدة مضغوطة». والمسحة ترفض التجاوز الأفقيّ أصلًا. */
@media (max-width: 640px) {
  .az-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .az-table tr { display: grid; gap: 2px; padding: var(--space-3) 0; border-bottom: 1px solid var(--rule); }
  .az-table td { display: grid; grid-template-columns: 6.5rem minmax(0, 1fr); gap: var(--space-2); border: 0; padding: 2px 0; }
  .az-table td::before { content: attr(data-label); color: var(--mut-2); font-size: var(--micro); }
  /* رابطُ الخليّة هدفُ لمس: اسمُ الشخص والجهة يُرسمان هنا منذ #457، وقاعدة
     `.pd-person h2 a` القديمة لم تعد تصل إليهما. ارتفاعٌ ومحاذاةٌ فقط، بلا مظهر. */
  .az-table td > a { display: inline-flex; align-items: center; min-height: 44px; }
  .az-timeline > li, .az-timeline > .az-tl-row { grid-template-columns: 1fr; gap: 2px; }
  .az-switch > a { min-height: 44px; }
}

/* ── هدفُ اللمس على الجوّال: قاعدةٌ لا ترقيع ─────────────────────────────────
   `<summary>` هو مفتاحُ الطيّ، و`<details>` أكثرُ بديلٍ للتبويب في البوابة —
   **اثنان وأربعون ملفًا** بحسب الجرد. وثلاثُ شاشاتٍ في رصيد العيوب تسقط عليه
   وحده: ٤٠ و٢١ و٢٣ بكسلًا ارتفاعًا حيث المطلوب ٤٤.

   وسُدّت واحدةً واحدة في كلِّ شاشةٍ مرّتين قبل اليوم، ثم عادت في شاشةٍ ثالثة —
   لأن العلّة ليست في الشاشات بل في غياب قاعدة. فالحدُّ هنا، على الجوّال وحده،
   وبلا لمس المظهر: ارتفاعٌ ومحاذاةٌ رأسيّة، ولا لون ولا حدّ ولا حشوٌ أفقيّ. */
@media (max-width: 640px) {
  summary { min-height: 44px; display: flex; align-items: center; }

  /* وسمٌ يحوي مربّعَ اختيارٍ أو زرَّ خيار: المنقورُ هو الوسم لا المربّع، فحدُّه
     هو الحدّ. وكان ٥٤×٢١ في تسليمات المشروع — نصفُ ما يُلتقط بإبهام. */
  label:has(> input[type="checkbox"]),
  label:has(> input[type="radio"]) { min-height: 44px; display: inline-flex; align-items: center; }

  /* الزرُّ الصغير يقصر عرضًا لا ارتفاعًا: «حذف» كلمةٌ من أربعة أحرف فيخرج ٣٦
     عرضًا و٤٤ ارتفاعًا. والعرضُ هدفُ لمسٍ كالارتفاع. */
  .btn { min-width: 44px; }
  /* زرُّ نزع الوسم: ارتفاعُه يبلغ ٤٤ بالمطّ مع الرقاقة، وعرضُه ٢٦ — فيسقط في
     البُعد الآخر. والمسحةُ أمسكته على أربع شاشاتٍ عند ٣٩٠، وهو عطبٌ لا يُرى
     على ١٢٨٠ إطلاقًا لأنّ الفأرة تصيب ٢٦ بكسلًا ولا يصيبها الإبهام. */
  .az-tag-off button { min-width: 44px; }
  .az-tag-wrap > .az-tag { min-height: 44px; }
}

/* ٤ · اللوح — المكانُ يقول التصنيف، فلا تحتاج كلمةً تقوله ─────────────────
   وعمودُه الفارغ **خبرٌ لا فراغ**: ثمانيةُ أعمدةٍ فيها واحدٌ مشغول تقول «لا
   شيء يعبر» بلا أن تكتبها. ولذلك يبقى الفارغ هنا ويختفي في الجدول. */
.az-board {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 15rem;
  gap: var(--space-3);
  overflow-x: auto;
  padding-bottom: var(--space-3);
}

.az-col {
  background: var(--paper-2, var(--paper));
  border-radius: var(--radius-lg, 14px);
  padding: var(--space-2);
  min-height: 9rem;
}

.az-col > header {
  display: flex;
  align-items: baseline;
  gap: var(--space-2);
  padding: var(--az-sp-1) var(--space-2) var(--space-2);
}

.az-col > header > b { font-size: var(--label); }
.az-col > header > i {
  font-style: normal;
  margin-inline-start: auto;
  font-size: var(--micro);
  color: var(--mut);
  font-variant-numeric: tabular-nums;
}

/* داخل عمودٍ ضيّق تصير البطاقات عمودًا واحدًا لا شبكة. */
.az-col .az-cards { grid-template-columns: minmax(0, 1fr); }

/* ٥ · المعرض — الوجهُ مفتاحُ التعرّف، والحقائقُ تحته قائمةَ وصف ───────────── */
.az-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
  gap: var(--space-3);
}

.az-gcard {
  display: grid;
  align-content: start;
  gap: var(--space-2);
  padding: var(--space-3);
  border: 1px solid var(--rule);
  border-radius: var(--radius-lg, 14px);
  background: var(--paper);
}

.az-gcard:hover, .az-gcard:focus-within { border-color: var(--ink); }
.az-gtop { display: flex; align-items: center; gap: var(--space-2); }
.az-gtop b { display: block; font-size: var(--small); }
.az-gtop b > a { color: inherit; text-decoration: none; }
.az-gtop span { display: block; color: var(--mut); font-size: var(--micro); }
.az-gcard dl {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 3px var(--space-2);
  margin: 0;
  font-size: var(--micro);
}
.az-gcard dt { color: var(--mut-2); }
.az-gcard dd { margin: 0; color: var(--ink); }

/* ── بطاقة الجهة بثلاثة مستويات (دليل الجهات) ─────────────────────────────────
   ١) الشعار ٤٠ بحشو ٦ والاسم --body وشارة الحالة بـ--st-*. ٢) الخطوة التالية سطرٌ بلا صندوق.
   ٣) سطر وصفي: القطاع شارة محايدة وآخر تغيّر. والمحطات والتفاصيل خلف «تفاصيل».
   لا لون ولا مقاس حرفي: رموز فقط. الخط الجانبي لما يحتاج قرارًا وحده. */
.az-dcard { position: relative; gap: var(--space-2); }
.az-dcard[data-status="decision"] { border-inline-start: var(--st-bar) solid var(--st); }
.az-dcard-head { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2); flex-wrap: wrap; }
.az-dcard-head .az-org-identity { flex: 1 1 0; min-width: 0; align-items: center; }
.az-dcard .az-org-identity__mark { padding: calc(var(--space-1) * 1.5); }
.az-dcard .az-org-identity__name { margin: 0; font-size: var(--body); font-weight: 700; line-height: 1.3; }
.az-dcard .az-org-identity__name a::after { content: ""; position: absolute; inset: 0; }
.az-dcard .az-org-identity__name a { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; min-inline-size: var(--az-touch); }
.az-dcard a.az-org-identity__mark-link { min-inline-size: var(--az-touch); min-block-size: var(--az-touch); }
.az-dcard-here { margin: 0; color: var(--ink); font-size: var(--small); line-height: 1.5; }
.az-dcard-here > span { color: var(--mut); font-size: var(--micro); font-weight: 700; margin-inline-end: var(--space-2); }
.az-dcard .az-status { flex: none; }
.az-dcard-next { margin: 0; color: var(--ink); font-size: var(--small); line-height: 1.5; }
.az-dcard-next > span { display: block; color: var(--mut); font-size: var(--micro); font-weight: 700; }
.az-dcard-meta { display: flex; align-items: center; flex-wrap: wrap; gap: var(--space-2); margin: 0; color: var(--mut); font-size: var(--micro); }
.az-dtag { padding: 1px var(--space-2); border-radius: var(--radius-pill); background: var(--st-calm-bg); color: var(--st-calm-ink); font-weight: 700; }
.az-dcard-more { position: relative; z-index: 1; }
.az-dcard-more > summary { display: flex; align-items: center; min-block-size: var(--az-touch, var(--space-6)); cursor: pointer; color: var(--mut); font-size: var(--label); font-weight: 700; }
.az-dcard-more[open] > summary { color: var(--ink); }
.az-dcard-more > dl { margin-block: var(--space-2); }

/* مقاطع المحطات التسع: رفيعة بلا نص، والحالية أسمك. */
.az-v-segs { display: flex; align-items: center; gap: calc(var(--space-1) / 2); inline-size: 100%; }
.az-v-segs > i { flex: 1 1 0; block-size: var(--space-1); border-radius: var(--radius-pill); background: var(--rule); }
.az-v-segs > i[data-state="done"] { background: var(--mut-2); }
.az-v-segs > i[data-state="skipped"] { background: var(--paper-2); }
.az-v-segs > i[data-state="current"] { block-size: var(--space-2); background: var(--st, var(--ink)); }

/* ترويسة الدليل: شرائح الحالة بعدّاد في سطر واحد لا يلتف. */
.az-dchips { display: flex; flex-wrap: nowrap; gap: var(--space-2); overflow-x: auto; max-inline-size: 100%; }
.az-dchip { display: inline-flex; align-items: center; gap: var(--space-2); flex: none; min-block-size: var(--az-touch, var(--space-6)); padding-inline: var(--space-2); border: var(--stroke-hair) solid transparent; border-radius: var(--radius-pill); color: var(--ink); text-decoration: none; font-size: var(--label); }
.az-dchip[aria-current] { border-color: var(--ink); background: var(--paper); }
.az-dchip b { color: var(--mut); font-variant-numeric: tabular-nums; }
.az-dchip-all { font-weight: 700; }
.az-drefine { flex: 1 1 100%; }
.az-drefine > summary { display: flex; align-items: center; min-block-size: var(--az-touch, var(--space-6)); cursor: pointer; color: var(--mut); font-size: var(--label); font-weight: 700; }
.az-drefine[open] { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
.az-drefine[open] > summary { flex: 1 1 100%; }
.az-dclear { display: inline-flex; align-items: center; min-block-size: var(--az-touch, var(--space-6)); color: var(--mut); font-size: var(--label); }

/* ── المجموعة ────────────────────────────────────────────────────────────────
   نفسُ الصفوف وسؤالٌ آخر. وترويستُها تحمل عددَها، فالمجموعةُ الكبيرة تُعرف
   قبل أن تُعدّ. */
.az-group { margin-top: var(--space-3); }

.az-group > summary {
  list-style: none;
  cursor: pointer;
  display: flex;
  align-items: baseline;
  gap: var(--space-2);
  min-height: 44px;
  padding: var(--space-2);
  background: var(--paper-2, var(--paper));
  border-radius: var(--radius-sm, 9px);
  font-size: var(--small);
  font-weight: 700;
}

.az-group > summary::-webkit-details-marker { display: none; }
.az-group > summary::before { content: '▾'; font-size: 12px; color: var(--mut-2); }
.az-group:not([open]) > summary::before { content: '▸'; }
/* **العدّاد يلاصق عنوانه، ولا يُرمى إلى الطرف المقابل** — نفسُ قاعدة
   `.az-section > h2 > i`، وقد كُتب هنا `margin-inline-start:auto` سهوًا
   فأُعيد العطبُ الذي أُصلح هناك: ترويسةٌ بعرض الصفحة تضع الرقم على بعد ثماني
   مئة بكسلٍ من اسمه، فلا تربطهما العين. (وعمودُ اللوح يُبقيه في طرفه: عرضُه
   ١٥rem، والمسافةُ فيه قصيرة، ووضعُ العدد في طرف العمود عرفٌ مفهوم.) */
.az-group > summary > i {
  font-style: normal;
  font-weight: 400;
  color: var(--mut);
  font-variant-numeric: tabular-nums;
}

/* ── الكثافة ─────────────────────────────────────────────────────────────────
   خاصيّةُ قارئٍ لا قرارُ مصمّم: في «مضغوط» يُرى ضعفُ ما يُرى دون تمرير.

   **وكلُّ إعلانٍ هنا تحت `body.az-dense` — بلا استثناء، وهذا شرطُ خموليّة لا
   ذوقُ كتابة.** كانت الكتلةُ تضبط رمزًا `--az-row` في `:root` وتقرؤه على
   `.az-row` و`.az-table` و`.az-timeline`، وهي أصنافٌ **قائمة** لها حشوُها.
   والترجيحُ في CSS يقع على **الإعلان** لا على القاعدة، فإعلانُ الحشو الجديد
   يغلب القديم بالأولوية نفسها ولو كان الرمزُ يساوي قيمتَه. وقد قيس: أربعُ
   بصماتٍ تحرّكت (`activity` بمقاسيه · `people-timeline` · `outputs-timeline`)
   لأنّ `.az-timeline > li` كانت `var(--space-3)` فصارت `calc(--space-2 + 2px)`.

   فصار «مريح» صفرَ إعلان، و«مضغوط» وحده يكتب — والصنفُ لا يوضع اليوم على
   `body` في أيّ شاشة، فالكتلة كلُّها ساكنةٌ حتى تُوصَل. */
body.az-dense .az-row { padding-block: 3px; }
body.az-dense .az-table th, body.az-dense .az-table td { padding-block: 3px; }
body.az-dense .az-timeline > li { padding-block: var(--space-2); }
body.az-dense .az-card, body.az-dense .az-gcard { padding: var(--space-2); }
body.az-dense .az-section { margin-top: var(--space-3); }

/* وجهُ البطاقة — صورةٌ أو حرف. يُبنى داخل السطح لا يُمرَّر إليه HTML. */
/* والبديلُ حرفٌ بخلفيةٍ ناعمة لا قرصٌ أسود (`05 §٧`): كان `--ink` مصمتًا،
   فيخرج في اللوح أشدَّ سوادًا من الشعار المجاور — **فيصير غيابُ الشعار أعلى
   صوتًا من وجوده**، وهو عكسُ ما تريده الصفحة. */
.az-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--p50);
  color: var(--p700);
  font-weight: 700;
}

.az-avatar img { width: 100%; height: 100%; object-fit: cover; }
.az-person-mark__fallback { display:grid; place-items:center; width:100%; height:100%; min-width:0; min-height:0; }
.az-person-mark__fallback[hidden], .az-person-mark img[hidden] { display:none!important; }

/* الشعارُ ليس وجهًا — قاعدةُ الشعارات ٢٠٢٦-٠٦-٢٣: «حرّة، بلا صناديق»،
   و«contain لا cover/دائرة». فالدائرةُ السوداء والقصُّ صوابٌ لوجهٍ يملأ
   إطارَه، ودمارٌ لشعارٍ عريض: وسيطُ نسبة ملفّاتنا الثلاثمئة والواحد والثمانين
   ١٫٥٣، و٣٤٪ منها أعرضُ من ٢:١ — فالمربّعُ يأكل ثُلثَ العرض ونصفَه. */
.az-avatar--logo {
  background: transparent;
  border-radius: 0;
  overflow: visible;
}

.az-avatar--logo img { object-fit: contain; }

/* صندوق شعار الجهة: مربع ثابت لا يتبع عرض الصورة.
   المضغوط ٤٠ = space-5+space-2، والصف والرأس ٥٦ = space-6+space-2.
   contain داخل المربع، خلفية --p50 ثابتة، بلا ظل ولا صحن. الحرف الاحتياطي
   داخل المربع فقط وعند غياب الشعار، فلا يُلحق بنص الاسم. */
.az-org-identity{--az-org-tap:var(--space-6);display:flex;align-items:flex-start;justify-content:flex-start;gap:var(--space-3);min-width:0;max-width:100%}
/* الرابط يصنع صندوقًا حتى يبقى اسمه في شجرة الوصول. display:contents يُسقطه فيُبلَّغ الشعار بلا اسم. */
a.az-org-identity__mark-link{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:inherit;text-decoration:none}
.az-org-identity__body{min-width:0;overflow-wrap:anywhere}
.az-org-identity__name{display:block;min-width:0;overflow-wrap:anywhere}
.az-org-identity__name a{color:inherit;text-decoration:none;display:inline-flex;align-items:center;min-height:var(--az-org-tap,var(--space-6));max-width:100%;overflow-wrap:anywhere}
.az-org-identity__name a:hover{text-decoration:underline}
.az-org-identity__mark{
  --az-org-box:calc(var(--space-6) + var(--space-2));
  position:relative;display:grid;place-items:center;
  width:var(--az-org-box);height:var(--az-org-box);flex:0 0 var(--az-org-box);
  min-width:var(--az-org-box);max-width:var(--az-org-box);
  box-sizing:border-box;overflow:hidden;
  background:var(--p50);border:0;box-shadow:none;border-radius:0;padding:var(--space-1);
  color:var(--p700);font-weight:700;font-size:calc(var(--az-org-box) * 0.42)
}
.az-org-identity__mark--compact{--az-org-box:calc(var(--space-5) + var(--space-2))}
.az-org-identity__mark--row,.az-org-identity__mark--hero{--az-org-box:calc(var(--space-6) + var(--space-2))}
.az-org-identity__mark img{
  display:block;width:100%;height:100%;max-width:100%;max-height:100%;
  object-fit:contain;object-position:center;background:none;border:0;box-shadow:none;filter:none
}
.az-org-identity__mark img[hidden]{display:none!important}
.az-org-identity__fallback{position:absolute;inset:0;display:grid;place-items:center;width:100%;height:100%;background:var(--p50);border:0;box-shadow:none;border-radius:0}
.az-org-identity__fallback[hidden]{display:none!important}
.az-org-identity--contents{display:contents}

/* ── المؤشّر ─────────────────────────────────────────────────────────────────
   **صفرُ شريط تقدّمٍ في البوابة كلّها** — قيس ذلك في جرد الشاشات، ومعه «صفر
   مخطط بيانيّ» و«١١٢٣ وسم `<p>`». فكلُّ نسبةٍ تُقال نصًّا: «٣ من ٧» و«↑ عن ٢
   الأسبوع الماضي». والنصّ يُقرأ ولا يُرى — والمقارنة تُرى قبل أن تُقرأ.

   وهو **زخرفةٌ للمعلومة لا بديلٌ عنها**: الرقم والفرق مكتوبان بجواره دائمًا،
   ولذلك يحمل `aria-hidden` — فقارئ الشاشة يسمع الجملة ولا يسمع شريطًا أصمّ. */
.az-meter {
  display: block;
  height: 4px;
  border-radius: 2px;
  background: var(--rule);
  overflow: hidden;
}

.az-meter > span {
  display: block;
  height: 100%;
  background: var(--p500);
}

/* المنحدر بلون الصمت لا بلون الإنذار: نزولُ رقمٍ خبرٌ لا خطأ. */
.az-meter.is-down > span { background: var(--mut-2); }

/* ── أفعال الصفّ ─────────────────────────────────────────────────────────────
   الرابط والزرّ في شكلٍ واحد: القائمة فيها أفعالٌ منها تنقّلٌ ومنها كتابة،
   والفرق بينهما في الترميز لا في ما يفعله القارئ. */
.az-acts {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2);
  margin-top: var(--space-2);
}

.az-act-form { margin: 0; display: inline-flex; }

.az-act {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  padding: 0 var(--az-sp-3);
  border: 1px solid transparent;
  border-radius: var(--radius-sm, 9px);
  background: transparent;
  color: var(--p700);
  font: inherit;
  font-size: var(--micro);
  font-weight: 700;
  text-decoration: none;
  cursor: pointer;
}

.az-act:hover { border-color: var(--rule); }
.az-act--primary { background: var(--ink); color: var(--paper); border-color: var(--ink); }
.az-act--quiet { color: var(--mut); }
.az-act--danger { color: var(--alert, var(--danger)); }

/* الحالة ليست فعلًا: بلا حدٍّ ولا مؤشّر، ولا ترتفع إلى هدف لمس. */
.az-act--state {
  min-height: 0;
  color: var(--mut);
  font-weight: 400;
  cursor: default;
  padding-inline: 0;
}

.az-act-note {
  flex-basis: 100%;
  margin: 0;
  color: var(--mut);
  font-size: var(--micro);
  line-height: var(--lh-body);
}

/* ── النموذج ─────────────────────────────────────────────────────────────────
   **`min-height:44px` مكتوبٌ يدويًّا ٢٤٧ مرّة، و`border:1px solid var(--rule)`
   ثلاثَ مئةٍ وأربعَ عشرة، و`label{display:grid…}` أربعًا وعشرين في أحدٍ وعشرين
   ملفًا.** فكلُّ شاشةٍ فيها نموذجٌ تعيد كتابة الحقل نفسه — وتختلف عنه بالبكسل
   أو بنصف البكسل، فيبدو النظام مصنوعًا في أماكنَ شتّى لأنه كذلك.

   وهدفُ اللمس ٤٤ ليس ذوقًا: المسحة تُسقط الشاشة على ما دونه. فحين يكون في
   المفردة يصير حقًّا لكلّ حقلٍ لا فضلًا يُتذكَّر. */
.az-form { display: grid; gap: var(--space-3); }

.az-form label { display: grid; gap: var(--az-sp-1); min-height: 44px; color: var(--mut); font-size: var(--micro); }

.az-form input,
.az-form select,
.az-form textarea {
  min-height: 44px;
  box-sizing: border-box;
  width: 100%;
  border: 1px solid var(--rule);
  border-radius: var(--radius-sm, 9px);
  background: var(--paper);
  color: var(--ink);
  font: inherit;
  padding: var(--az-sp-2) var(--az-sp-3);
}

.az-form textarea { min-height: 76px; resize: vertical; }

/* صندوقُ الاختيار يبقى بحجمه، **وهدفُ اللمس هو الوسم الذي يحويه** — وهو ٤٤
   بحكم `.az-form label`. والحشو على المربّع لا يعمل: المتصفّح يتجاهل حشو
   الودجة الأصليّة، جُرّب `padding:var(--az-sp-3)` فبقي المحسوب صفرًا. */
.az-form input[type="checkbox"],
.az-form input[type="radio"] {
  width: 18px;
  height: 18px;
  min-height: 0;
  padding: 0;
  margin: 0;
}

/* هندسةٌ لا لون: الزرّ يأخذ قياسَه وحشوَه من المفردة، ويبقى لونُه لصاحبه
   (`.btn` أو قاعدة الصفحة). وبلا الحشو يخرج الزرّ ملتصقًا بنصّه — وقع فعلًا
   في «طبّق» بمكتبة المخرجات حين حُذفت قاعدةُ صفحتها. */
.az-form button {
  min-height: 44px;
  justify-self: start;
  padding: var(--az-sp-2) var(--az-sp-4);
  /* `solid` صراحةً: افتراضُ المتصفّح `2px outset`، فيُظلَّل الحدُّ من جهةٍ
     ويُضاء من أخرى — وبدا كحلقةِ تركيزٍ زرقاء حول زرٍّ غير مركَّز عليه. */
  border: 1px solid transparent;
  border-radius: var(--radius-sm, 9px);
  font: inherit;
  cursor: pointer;
}
.az-form .wide { grid-column: 1 / -1; }

/* شبكةٌ تتسع بما يسعها: حقلٌ واحد على الجوّال، وأكثرُ حيث يتّسع. */
.az-form--grid { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }

/* ═══ سجلّ الدراسة في بطاقة الجهة: شريط العقود السبعة وشارة المفهوم (٢٧ سبتمبر) ═══
   المواصفة: portal-redesign-audit/docs/redesign/handoff-study-rail.md — سلّم حالة واحد
   بأربع قيم (ok · wait · draft · none)، وكلّ قيمة بمتغيّرات tokens.css لا بلونٍ خام.
   الشريط يتمرّر أفقيًّا ولا يلتفّ (قاعدة المالك الرابعة)، فلا تجاوز للصفحة على ٣٦٠. */
.az-study { margin-block: var(--space-3); min-width: 0; }
.az-study > h3 { display: flex; align-items: baseline; gap: var(--space-2); margin: 0 0 var(--space-2); font-size: var(--label); font-weight: 700; }
.az-count { color: var(--mut-2); font-size: var(--micro); font-weight: 600; }
.az-rail {
  display: grid; grid-template-columns: repeat(7, minmax(calc(var(--space-6) * 2 + var(--space-4)), 1fr));
  overflow-x: auto; max-width: 100%; margin: 0; padding: 0; list-style: none;
  border: var(--stroke-hair) solid var(--rule); border-radius: var(--radius-md); background: var(--paper);
}
.az-rail:focus-visible { outline: 2px solid var(--p500); outline-offset: 2px; }
.az-rail-node {
  display: flex; flex-direction: column; gap: var(--space-1); min-width: 0;
  padding: var(--space-3) var(--space-3) calc(var(--space-3) - var(--space-1) / 2);
}
.az-rail-node + .az-rail-node { border-inline-start: var(--stroke-hair) solid var(--rule); }
@media(max-width:760px){
  .az-rail { grid-template-columns: 1fr; overflow-x: visible; }
  .az-rail-node + .az-rail-node { border-inline-start: 0; border-top: var(--stroke-hair) solid var(--rule); }
}
.az-rail-n { color: var(--mut-2); font-size: var(--micro); }
.az-rail-node > b { font-size: var(--label); font-weight: 700; line-height: 1.35; }
.az-rail-node > small { color: var(--mut); font-size: var(--micro); line-height: 1.45; }
/* `time` يرث خط JetBrains Mono من القاعدة العامة `.num,time,code,.mono` (نفس علّة #526) —
   يُعاد خط الصفحة هنا كما في `time.az-k-c`. `margin-top:auto` يثبّت التاريخ أسفل الخانة
   مهما طال عنوان العقد لسطرين (مراجعة الشكل على #538)، والخانات متساوية الارتفاع أصلًا
   (`.az-rail` شبكة). التاريخ الاحتياطي («قُرئ …») أخفت من الصريح: ليس تاريخ العقد نفسه. */
.az-rail-node > time { color: var(--mut-2); font-size: var(--micro); line-height: 1.45; font-family: inherit; margin-top: auto; }
.az-rail-node > time.az-rail-at--read { opacity: .75; }
.az-rail-st, .az-state {
  align-self: flex-start; padding: var(--stroke-hair) var(--space-2); border-radius: var(--radius-pill);
  font-size: var(--micro); font-weight: 700; white-space: nowrap;
}
.az-state[data-s="ok"] { background: color-mix(in srgb, var(--success) 12%, var(--paper)); color: var(--az-ok-text); }
.az-rail-node[data-s="wait"] { background: var(--p50); box-shadow: inset 0 calc(var(--stroke-hair) - var(--space-1)) 0 var(--p500); }
.az-state[data-s="wait"] { background: var(--p700); color: var(--paper); }
.az-state[data-s="draft"] { background: var(--paper-2); color: var(--mut); }
/* تحذيرٌ ناعم لا داكنٌ ممتلئ (مراجعة الشكل على #540) — نفس ألوان .az-strip-c[data-s="warn"]. */
.az-state[data-s="warn"] { background: var(--az-warn-soft); color: var(--az-warn); }
.az-status-mark { display:inline-flex; align-items:center; border-radius:var(--radius-pill); padding:var(--stroke-hair) var(--space-2); font-size:var(--micro); font-weight:700; line-height:1.5; white-space:nowrap; background:var(--paper-2); color:var(--ink); }
.az-status-mark[data-status-tone="active"] { background:var(--p50); color:var(--p700); }
.az-status-mark[data-status-tone="positive"] { background:var(--positive-bg); color:var(--positive-ink); }
.az-status-mark[data-status-tone="caution"] { background:var(--uncertain-bg); color:color-mix(in srgb, var(--uncertain-ink) 90%, var(--ink)); }
.az-status-mark[data-status-tone="critical"] { background:color-mix(in srgb, var(--alert) 10%, var(--paper)); color:var(--alert); }
.az-rail-node[data-s="none"] { color: var(--mut-2); }
/*
 * شارة مراجعة محمد لادّعاء الدراسة نفسه (proposed/verified/verified-بالتفويض) —
 * سلّمٌ مستقلّ عن `data-s` أعلاه (حالة العقد/المفهوم في نصّ السجل)، وشارةٌ واحدةٌ لكل
 * خانة لا شارتان (مراجعة الشكل على #537): `.az-rail-st`/`.az-state` يحملان
 * `data-review-s` دائمًا فيُقرأان منه وحده — لا من `data-s` الأب أعلاه، فلا تعارض.
 *
 * ونمطُ «الانتظار» ناعمٌ كنمط «معتمد» (تظليلٌ خفيف ١٢٪ + نصٌّ ملوّن) لا امتلاءٌ
 * بلونٍ قويٍّ كـ`--p700` كاملًا — فرقهما درجة التظليل لا الامتلاء (مراجعة الشكل).
 */
.az-rail-st[data-review-s="ok"], .az-state[data-review-s="ok"] { background: color-mix(in srgb, var(--success) 12%, var(--paper)); color: var(--az-ok-text); }
.az-rail-st[data-review-s="wait"], .az-state[data-review-s="wait"] { background: color-mix(in srgb, var(--p700) 12%, var(--paper)); color: var(--p700); }
.az-rail-st[data-review-s="wait"] { max-width: 100%; white-space: normal; }
.az-rail-open { margin-top: auto; color: var(--p700); font-size: var(--micro); font-weight: 700; }
.az-rail-detail { margin-top: var(--space-2); border: var(--stroke-hair) solid var(--rule); border-radius: var(--radius-md); background: var(--paper); }
/* غير الحالي يبقى مخفيًا حتى «تفاصيل العقد» كي لا تمد الملاحظة الطويلة البطاقة.
   الحالي والمنتظر (--shown) عنوانه ظاهر مطويًا، وجسمه يُفتح بالضغط. */
.az-rail-detail:not(:target):not([open]):not(.az-rail-detail--shown) { display: none; }
.az-rail-detail > summary { padding: var(--space-3); cursor: pointer; font-size: var(--label); font-weight: 700; overflow-wrap: anywhere; }
.az-rail-detail-body { display: grid; gap: var(--space-2); padding: var(--space-3); border-top: var(--stroke-hair) solid var(--rule); overflow-wrap: anywhere; }
.az-rail-detail-body > p { margin: 0; white-space: pre-wrap; line-height: 1.7; }
.az-rail-detail-body > small { display: block; }
.az-concept-body { padding: var(--space-3) var(--space-4); }
.az-concept-body > p { margin: var(--space-2) 0 0; color: var(--mut); font-size: var(--small); line-height: 1.7; }
.az-concept-body > p > b { color: var(--ink); }
.az-concept { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); }
.az-concept > h4 { margin: 0; font-size: var(--h4); font-weight: 700; line-height: 1.3; }
.az-state small { margin-inline-start: var(--space-1); font-size: var(--micro); font-weight: 500; }
/* سؤال الاعتماد الكامل بجانب شارة «مسودة» القصيرة — سطرٌ لا جزءٌ من نصّ الشارة. */
.az-concept-ask { color: var(--mut); font-size: var(--micro); line-height: 1.45; flex-basis: 100%; }
.az-rail-approval, .az-concept-approval { overflow-wrap: anywhere; }
.az-concept-approval { flex-basis: 100%; color: var(--mut); font-size: var(--micro); line-height: 1.5; }
.az-chips { display: flex; flex-wrap: wrap; gap: var(--space-1); margin-block: var(--space-2); }
.az-chip { padding: var(--stroke-hair) var(--space-2); border: var(--stroke-hair) solid var(--rule); border-radius: var(--radius-pill); background: var(--paper); font-size: var(--micro); }
.az-fold { margin-top: var(--space-2); }
.az-fold > summary { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-1); min-height: calc(var(--space-5) + var(--space-3)); cursor: pointer; font-size: var(--small); }
.az-fold.az-gaps[data-s="warn"] > summary { padding-inline: var(--space-3); border-radius: var(--radius-md); background: var(--st-waiting-bg); color: var(--st-waiting-ink); font-weight: 700; }
.az-fold.az-gaps[data-s="warn"] > summary .az-count { min-inline-size: calc(var(--space-4) + var(--space-1) / 2); padding-inline: calc(var(--space-1) * 1.5); border-radius: var(--radius-pill); background: var(--st-waiting-ink); color: var(--st-waiting-bg); text-align: center; }
/* ═══════════════════════════════════════════════════════════════════════════
   بدائيات العُدّة az-k-* — الوحدة ٠ من فهرس التسليم (docs: implementation-handoff.md:8-9)
   منقولة مرة واحدة من عُدّة النماذج المعتمدة (design/portal-redesign-audit:
   docs/redesign/audit/v2/kit/kit.css، اعتماد محمد ٢٧ سبتمبر ٠٦:٠٩). كل الوحدات تبني منها،
   ولا CSS مرتجل داخل الوحدات.
   · البادئة az-k- لا az-: أحد عشر اسماً في العُدّة (card · list · row · page …) مأخوذة في هذا
     الملف بمعنى آخر تستعمله الشاشات القائمة، فإعادة تعريفها تكسرها.
   · الألوان أسماء مستعارة على توكنز v.07.2 أدناه — لا قيمة هوية جديدة. ما لا مقابل له في
     التوكنز (أنواع الكيانات، الأحمر الخفيف) مركّبٌ منها بـcolor-mix.
   · لم يُنقل: الخلفيات الأربع والألوان الأربعة (تحتاج تنميط كل الشاشات)، وبحث ⌘K،
     و«علّق» المحقون (للبوابة تعليقها في غرف المراجعة)، وقشرات العميل/الوسيط/العام.
   ═══════════════════════════════════════════════════════════════════════════ */
:root{
  --az-bg:var(--cream); --az-surface:var(--paper); --az-surface-2:var(--paper-2); --az-surface-3:var(--neutral-bg);
  --az-line:var(--rule); --az-line-2:color-mix(in srgb,var(--rule) 72%,var(--mut));
  --az-ink:var(--ink); --az-ink-2:var(--mut); --az-ink-3:var(--mut-2);
  --az-accent:var(--p500); --az-accent-text:var(--p700); --az-accent-soft:var(--p50); --az-accent-line:var(--p200);
  --az-ok:var(--success); --az-ok-text:color-mix(in srgb,var(--success) 80%,var(--ink)); --az-ok-soft:var(--positive-bg);
  --az-warn:var(--uncertain-ink); --az-warn-soft:var(--uncertain-bg);
  --az-bad:var(--alert); --az-bad-soft:color-mix(in srgb,var(--alert) 10%,var(--paper));
  --az-t-client:var(--p700); --az-t-org:var(--uncertain-ink); --az-t-project:var(--success);
  --az-t-person:color-mix(in srgb,var(--ink) 55%,var(--p500)); --az-t-output:var(--p600);
  --az-nav:var(--ink); --az-nav-ink:var(--cream); --az-on-accent:var(--paper);
  --az-shadow:var(--shadow-sm),var(--shadow-md); --az-shadow-lift:var(--shadow-lg);
  /* السلّم: رأس الصفحة ≤ --h4، واسم الكيان في رأس صفحته وحده --h3 (ADR 082). */
  /* مسافات على شبكة ٤px (tokens.css مولّد فلا يُعدَّل؛ --space-* القانونية سلّم مختلف) */
  --az-sp-1:4px; --az-sp-2:8px; --az-sp-3:12px; --az-sp-4:16px; --az-sp-5:20px; --az-sp-6:24px; --az-sp-7:32px; --az-sp-8:40px;
  --az-section-gap:var(--az-sp-6);
  --az-h4:var(--h4); --az-h5:var(--small); --az-h-entity:var(--h3); --az-page:var(--container);
}
.az-k-dim{color:var(--az-ink-3)}
/* أساس العُدّة (kit.css ٤٦-٥٠) محصورًا في حاوياتها وبصفر خصوصية (:where): الروابط بلا خط والأزرار
   بلا إطار المتصفح. لا يُنقل عامًّا فيمسّ الشاشات القديمة، ولا يغلب أيّ صنف az-k- فوقه. */
:where(.az-k-page,.az-k-drawer,.az-k-appear) :where(a){color:inherit;text-decoration:none}
:where(.az-k-page,.az-k-drawer,.az-k-appear) :where(button){appearance:none;font:inherit;color:inherit;background:none;border:0;cursor:pointer}
/* وأيّ زرٍّ أو رابطٍ يحمل صنف عُدّة أينما كان (بطاقة الجهة ليست داخل az-k-page): az-k-fold-h وaz-k-more
   وaz-k-more-props وaz-k-fb… تفترض زرًّا بلا إطار ولا خلفية. بصفر خصوصية، فقواعد az-k-btn وغيرها تغلبه.
   appearance:none معها لأن appearance:auto وحده يُبقي حواف النظام في بعض محركات العرض رغم صفر الإطار. */
:where(button[class^="az-k-"],button[class*=" az-k-"],.az-k-seg button,.az-k-opts button){appearance:none;font:inherit;color:inherit;background:none;border:0;cursor:pointer}
:where(a[class^="az-k-"],a[class*=" az-k-"]){color:inherit;text-decoration:none}
:where(.az-k-card) > p{font-size:13.5px;line-height:1.7}
.az-k-dot[hidden],.az-k-appear [hidden]{display:none!important}
.az-k-menu-links form{display:contents}
/* العُدّة تفترض روابط بلا خط (kit.css الأساس)؛ لا يُنقل الأساس عامّاً، فيُحصر في الشريطين. */
.az-k-top a,.az-k-tabbar a,.az-k-appear a{text-decoration:none}
.az-k-menu-links button{font:inherit;font-size:13px;text-align:start;padding:var(--az-sp-2) var(--az-sp-1);border-radius:7px;color:var(--az-ink-2);background:none;border:0;cursor:pointer;min-height:44px}
.az-k-menu-links button:hover{background:var(--az-surface-2);color:var(--az-ink)}
.az-k-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ═══ ١ — الشريط العلوي k-top (01-today-v4.html:50-80) ═══ */
.az-k-top { position:sticky; top:0; z-index:40; display:flex; align-items:center; gap:var(--az-sp-6); height:56px; padding:0 var(--az-sp-6); background:color-mix(in srgb, var(--az-bg) 86%, transparent); backdrop-filter:saturate(1.3) blur(12px); -webkit-backdrop-filter:saturate(1.3) blur(12px); border-bottom:1px solid transparent; transition:border-color .2s; }
.az-k-top.scrolled { border-bottom-color:var(--az-line); }
.az-k-brand { display:flex; align-items:center; align-self:stretch; flex:none; gap:var(--az-sp-3); }
.az-k-logo { height:19px; display:block; }
.az-k-logo.cream { display:none; }
.az-k-nav { display:flex; align-self:stretch; gap:2px; overflow-x:auto; scrollbar-width:none; white-space:nowrap; min-width:0; }
.az-k-nav a { position:relative; display:flex; align-items:center; gap:var(--az-sp-2); padding:0 var(--az-sp-3); font-size:14px; font-weight:500; color:var(--az-ink-2); transition:color .14s; flex:none; }
.az-k-nav a:hover { color:var(--az-ink); }
.az-k-nav a.on { color:var(--az-ink); font-weight:700; }
.az-k-nav a.on::after { content:''; position:absolute; bottom:-1px; right:11px; left:11px; height:2px; border-radius:2px 2px 0 0; background:var(--az-accent); }
.az-k-badge { min-width:18px; height:18px; padding:0 var(--az-sp-1); border-radius:99px; background:var(--az-accent-soft); color:var(--az-accent-text); font-size:12px; font-weight:700; display:inline-grid; place-items:center; line-height:1; }
.az-k-grow { flex:1; }
/* صندوق الأيقونة ٤٤ لا ٣٦: فحص اليوم وتطوير الأعمال يقيس getBoundingClientRect فوق ٧٦٠px أيضًا. */
.az-k-icon-btn { position:relative; width:44px; height:44px; border-radius:10px; display:grid; place-items:center; color:var(--az-ink-2); flex:none; }
.az-k-icon-btn:hover { background:var(--az-surface-2); color:var(--az-ink); }
.az-k-icon-btn svg { width:19px; height:19px; }
.az-k-icon-btn .az-k-dot { position:absolute; top:4px; left:4px; min-width:16px; height:16px; padding:0 var(--az-sp-1); border-radius:99px; background:var(--az-accent-text); color:var(--az-on-accent); font-size:12px; font-weight:700; display:grid; place-items:center; box-shadow:0 0 0 2px var(--az-bg); }
.az-k-me { position:relative; width:44px; height:44px; border-radius:99px; background:var(--az-ink); color:var(--az-bg); display:grid; place-items:center; font-weight:700; font-size:13px; flex:none; transition:box-shadow .14s; }
.az-k-me:hover, .az-k-me[aria-expanded="true"] { box-shadow:0 0 0 3px var(--az-accent-line); }
/* قائمتك: اسمك، المظهر، روابط قليلة (01-today-v4.html:75-97) */
.az-k-appear-wrap { position:relative; flex:none; }
/* أسفل الزر ٤٤ لا عند ٤٤ ثابتة: القيمة القديمة كانت تُدخل القائمة في الشريط بعد تكبير الهدف. */
.az-k-appear { position:absolute; top:calc(100% + 8px); left:0; width:300px; background:var(--az-surface); color:var(--az-ink); border:1px solid var(--az-line); border-radius:14px; box-shadow:var(--az-shadow-lift); padding:var(--az-sp-4); z-index:60; opacity:0; pointer-events:none; visibility:hidden; transform:translateY(-6px); transition:all .2s var(--ease-out); }
.az-k-appear.on { opacity:1; pointer-events:auto; visibility:visible; transform:none; }
.az-k-who { display:flex; align-items:center; gap:var(--az-sp-3); padding-bottom:var(--az-sp-3); margin-bottom:var(--az-sp-3); border-bottom:1px solid var(--az-line); }
.az-k-who b { display:block; font-size:14px; line-height:1.3; } .az-k-who small { font-size:12px; color:var(--az-ink-3); }
.az-k-appear h3 { font-size:12.5px; color:var(--az-ink-2); font-weight:500; margin:2px 0 var(--az-sp-2); }
.az-k-menu-links { display:flex; flex-direction:column; border-top:1px solid var(--az-line); margin-top:var(--az-sp-3); padding-top:var(--az-sp-1); }
.az-k-menu-links a { font-size:13px; padding:var(--az-sp-2) var(--az-sp-1); border-radius:7px; color:var(--az-ink-2); }
.az-k-menu-links a:hover { background:var(--az-surface-2); color:var(--az-ink); }
/* شريط الجوال السفلي k-tabbar — يظهر تحت 760px */
.az-k-tabbar { display:none; }

/* ═══ ٢ — الصفحة ورأسها k-head (سطر واحد · العنوان ≤ --h4) — bd-people.html:118-125 ═══ */
.az-k-page { max-width:var(--az-page); margin:0 auto; padding:0 var(--az-sp-6) 64px; }
.az-k-head { display:flex; align-items:center; gap:var(--az-sp-5); min-height:50px; border-bottom:1px solid var(--az-line); flex-wrap:nowrap; min-width:0; }
.az-k-head h1 { font-family:var(--font-ar-display),var(--font-ar-ui),serif; font-weight:700; font-size:var(--az-h4); line-height:1.2; white-space:nowrap; flex:none; }
.az-k-head-meta { min-width:0; font-size:13px; color:var(--az-ink-3); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.az-k-head-acts { margin-inline-start:auto; display:flex; gap:var(--az-sp-2); align-items:center; flex:none; }
.az-k-head .az-k-tabs { align-self:stretch; }
.az-k-sub { font-size:var(--az-h5); font-weight:700; line-height:1.3; }
.az-k-section { margin-top:var(--az-section-gap); }
.az-k-section > .az-k-sub { margin-bottom:var(--az-sp-2); }

/* ═══ ٣ — التبويبات k-tabs (سطر واحد لا يلتف) ═══ */
.az-k-tabs { display:flex; gap:2px; overflow-x:auto; scrollbar-width:none; white-space:nowrap; flex-wrap:nowrap; min-width:0; }
.az-k-tabs a, .az-k-tabs button { position:relative; display:flex; align-items:center; gap:var(--az-sp-2); padding:0 var(--az-sp-3); min-height:44px; font-size:13.5px; color:var(--az-ink-2); font-weight:500; flex:none; }
.az-k-tabs a:hover, .az-k-tabs button:hover { color:var(--az-ink); }
.az-k-tabs .on, .az-k-tabs [aria-selected="true"] { color:var(--az-ink); font-weight:700; }
.az-k-tabs .on::after, .az-k-tabs [aria-selected="true"]::after { content:''; position:absolute; bottom:-1px; right:10px; left:10px; height:2px; border-radius:2px 2px 0 0; background:var(--az-accent); }
.az-k-tabs .az-k-badge { font-size:12px; }

/* ═══ ٤ — الأزرار: زر ممتلئ واحد لكل شاشة (k-btn--solid)، والباقي محدد (k-btn) أو نصي (k-btn--text) — bd-h.html:244-253 ═══ */
.az-k-btn { position:relative; display:inline-flex; align-items:center; justify-content:center; gap:var(--az-sp-2); min-height:36px; padding:0 var(--az-sp-4); border-radius:10px; font-size:13.5px; font-weight:700; white-space:nowrap; border:1px solid var(--az-line); background:var(--az-surface); transition:all .14s var(--ease); }
.az-k-btn:hover { border-color:var(--az-line-2); background:var(--az-surface-2); }
.az-k-btn--solid { background:var(--az-ink); color:var(--az-bg); border-color:var(--az-ink); padding:0 var(--az-sp-5); }
.az-k-btn--solid:hover { background:color-mix(in srgb, var(--az-ink) 88%, var(--az-accent)); border-color:var(--az-ink); }
.az-k-btn--text { border-color:transparent; background:none; color:var(--az-accent-text); padding:0 var(--az-sp-2); }
.az-k-btn--text:hover { background:var(--az-accent-soft); border-color:transparent; }
.az-k-btn--quiet { border-color:transparent; background:none; color:var(--az-ink-2); font-weight:500; padding:0 var(--az-sp-2); }
.az-k-btn--quiet:hover { background:var(--az-surface-2); color:var(--az-ink); border-color:transparent; }
.az-k-btn--danger:hover { color:var(--az-bad); border-color:color-mix(in srgb, var(--az-bad) 40%, transparent); background:var(--az-bad-soft); }
.az-k-btn:disabled { opacity:.5; cursor:default; }
.az-k-btn svg { width:15px; height:15px; flex:none; }
.az-k-btn--solid kbd { background:transparent; color:var(--az-bg); border-color:color-mix(in srgb, var(--az-bg) 45%, transparent); }

/* ═══ ٥ — البحث سطراً واحداً + المرشّحات (bd-people.html:168-180) ═══ */
.az-k-toolbar { display:flex; align-items:center; gap:var(--az-sp-3); margin-top:var(--az-sp-3); min-width:0; }
.az-k-search { position:relative; flex:1; display:flex; align-items:center; gap:var(--az-sp-2); height:36px; min-width:160px; padding:0 var(--az-sp-3); border-radius:10px; background:var(--az-surface); border:1px solid var(--az-line); color:var(--az-ink-3); }
.az-k-search:focus-within { border-color:var(--az-accent); }
.az-k-search svg { width:15px; height:15px; flex:none; }
.az-k-search input { flex:1; align-self:stretch; min-width:0; border:0; background:none; outline:none; font-size:13px; color:var(--az-ink); }
.az-k-search input::placeholder { color:var(--az-ink-3); }
.az-k-fbar { display:flex; gap:var(--az-sp-1); overflow-x:auto; scrollbar-width:none; white-space:nowrap; flex-wrap:nowrap; min-width:0; }
.az-k-fb { position:relative; flex:none; display:inline-flex; align-items:center; gap:var(--az-sp-2); font-size:12.5px; line-height:28px; padding:0 var(--az-sp-3); border-radius:99px; color:var(--az-ink-2); transition:background .14s, color .14s; }
.az-k-fb:hover { background:var(--az-surface-2); color:var(--az-ink); }
.az-k-fb b { font-weight:700; color:var(--az-ink-3); font-size:12px; }
.az-k-fb[aria-pressed="true"], .az-k-fb[aria-current="true"] { background:var(--az-ink); color:var(--az-bg); font-weight:700; text-decoration:none; }
.az-k-fb[aria-pressed="true"] b, .az-k-fb[aria-current="true"] b { color:color-mix(in srgb, var(--az-bg) 78%, transparent); }
/* المبدّل المقطعي (عرض جدول/بطاقات، نوع القرار…) — bd-h.html:257-259 */
.az-k-seg { display:inline-flex; flex:none; padding:2px; border-radius:99px; background:var(--az-surface-2); }
.az-k-seg button { position:relative; display:inline-flex; align-items:center; gap:var(--az-sp-2); font-size:12.5px; line-height:28px; padding:0 var(--az-sp-3); border-radius:99px; color:var(--az-ink-2); }
.az-k-seg button[aria-checked="true"], .az-k-seg button[aria-pressed="true"] { background:var(--az-surface); color:var(--az-ink); font-weight:700; box-shadow:0 1px 2px rgba(10,22,40,.08); }
.az-k-seg svg { width:14px; height:14px; }

/* ═══ ٦ — القائمة k-list: صفوف كثيفة، كل خلية سطر واحد، تجميع، مبدّل جدول/بطاقات (bd-h .row + bd-people .pr) ═══ */
.az-k-list { --az-cols:minmax(0,2fr) minmax(0,1.2fr) minmax(0,1fr) auto; margin-top:var(--az-sp-1); }
.az-k-gh { display:flex; align-items:baseline; gap:var(--az-sp-3); margin-top:var(--az-sp-4); padding:0 var(--az-sp-3) var(--az-sp-1); border-bottom:1px solid var(--az-line); white-space:nowrap; }
.az-k-gh h3 { font-size:var(--az-h5); font-weight:700; }
.az-k-gh .az-k-gc { font-size:13px; color:var(--az-ink-3); }
.az-k-gh .az-k-gx { margin-inline-start:auto; font-size:12.5px; color:var(--az-ink-3); overflow:hidden; text-overflow:ellipsis; min-width:0; }
.az-k-rows { display:flex; flex-direction:column; gap:1px; }
.az-k-row { position:relative; display:grid; grid-template-columns:var(--az-cols); gap:var(--az-sp-2) var(--az-sp-4); align-items:center; padding:var(--az-sp-2) var(--az-sp-3); border-radius:12px; transition:background .14s; min-width:0; }
.az-k-row:hover { background:color-mix(in srgb, var(--az-surface) 55%, transparent); }
.az-k-row[aria-selected="true"] { background:var(--az-surface); box-shadow:var(--az-shadow), inset -3px 0 0 var(--az-accent); }
.az-k-row--head { padding-block:var(--az-sp-1); font-size:12px; color:var(--az-ink-3); font-weight:500; }
.az-k-row--head:hover { background:none; }
.az-k-list[data-view="cards"] .az-k-row--head { display:none; }
.az-k-c { min-width:0; font-size:13px; color:var(--az-ink-2); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
/* عمود الوقت في قوائم العُدّة `<time>` يرث خط الأحادي المسافة من قاعدة portal.css
   العامة (`.num,time,code,.mono`)؛ هنا يُعاد خط الصفحة فقط دون لمس الاتجاه LTR
   اللازم لعرض الأرقام. مراجعة #526. */
time.az-k-c { font-family:inherit; }
/* overflow:visible: الخلية لا تقصّ حلقة تركيز الرابط (outline خارج الصندوق)؛ القطع بالنقاط على الاسم نفسه. LEGO-08 */
.az-k-c--main { display:flex; align-items:center; gap:var(--az-sp-3); color:var(--az-ink); overflow:visible; }
.az-k-c--main .az-k-name { font-size:14.5px; font-weight:700; line-height:1.35; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-width:0; }
.az-k-c--main .az-k-name:hover { color:var(--az-accent-text); }
/* الرابط الممدود: السطر كله يفتح الكيان، والأفعال فوقه */
.az-k-row a.az-k-name::after { content:''; position:absolute; inset:0; border-radius:12px; }
.az-k-c--act { display:flex; gap:2px; justify-self:end; overflow:visible; }
.az-k-lead { flex:none; width:32px; height:32px; border-radius:99px; display:inline-grid; place-items:center; background:var(--az-surface-2); box-shadow:inset 0 0 0 1px var(--az-line); font-family:var(--font-ar-display),var(--font-ar-ui),serif; font-weight:700; font-size:13px; color:var(--az-ink-2); padding-top:2px; }
.az-k-lead--sq { border-radius:8px; }
.az-k-late { color:var(--az-warn); font-weight:500; }
.az-k-late::before { content:''; display:inline-block; width:7px; height:7px; border-radius:99px; background:var(--az-warn); margin-inline-end:var(--az-sp-2); vertical-align:1px; }
/* عرض البطاقات: نفس الصفوف تصير شبكة */
.az-k-list[data-view="cards"] .az-k-rows { display:grid; grid-template-columns:repeat(auto-fill, minmax(260px,1fr)); gap:var(--az-sp-3); margin-top:var(--az-sp-2); }
.az-k-list[data-view="cards"] .az-k-row { grid-template-columns:minmax(0,1fr); align-items:start; gap:var(--az-sp-1); padding:var(--az-sp-3) var(--az-sp-4); background:var(--az-surface); border:1px solid var(--az-line); }
.az-k-list[data-view="cards"] .az-k-c--act { justify-self:start; margin-inline-start:-8px; }
.az-k-list[data-view="cards"] .az-k-c[data-l]::before { content:attr(data-l) ' · '; color:var(--az-ink-3); }

/* ═══ ٧ — صفحة الكيان: رأس + جدول خصائص + لوح بعمودين + أقسام مطوية ═══ */
.az-k-back { display:flex; align-items:center; min-height:44px; }
.az-k-back a { display:inline-flex; align-items:center; gap:var(--az-sp-2); min-height:44px; font-size:13px; font-weight:700; color:var(--az-ink-2); padding:0 var(--az-sp-1); border-radius:8px; }
.az-k-back a:hover { color:var(--az-ink); background:var(--az-surface-2); }
.az-k-back svg { width:14px; height:14px; }
.az-k-ehead { display:grid; grid-template-columns:64px minmax(0,1fr) auto; gap:var(--az-sp-2) var(--az-sp-5); align-items:center; padding:var(--az-sp-2) 0 0; }
/* رأس الجهة: الشعار مربع يجاور الاسم. العمود العريض (ثلاثة أضعاف الارتفاع) كان يترك الحرف في الطرف البعيد. */
.az-k-ehead:has(.az-org-identity__mark--hero) {
  display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:flex-start; gap:var(--space-3);
}
.az-k-ehead .az-k-lead { width:64px; height:64px; font-size:22px; }
.az-k-ehead-title { min-width:0; }
/* الاستثناء الوحيد من --h4: اسم الكيان في رأس صفحته بخط العرض */
.az-k-entity-name { font-family:var(--font-ar-display),var(--font-ar-ui),serif; font-weight:700; font-size:var(--az-h-entity); line-height:1.15; display:flex; align-items:center; gap:var(--az-sp-3); min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.az-k-entity-name .az-k-illus { font-family:var(--font-ar-ui),system-ui,sans-serif; }
.az-k-eline { display:flex; align-items:center; gap:var(--az-sp-2) var(--az-sp-3); margin-top:var(--az-sp-1); font-size:13.5px; color:var(--az-ink-2); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-width:0; }
.az-k-ehead-acts { display:flex; gap:var(--az-sp-2); align-self:center; }
/* على الجوّال الضيّق العرض لا يسع سطر الحال — يلتف بدل أن يُقصّ صامتًا (مراجعة الشكل على #518). */
@media (max-width: 640px) {
  .az-k-eline { flex-wrap:wrap; white-space:normal; text-overflow:clip; overflow:visible; }
}
/* جدول الخصائص (bd-card2.html:480-492) */
.az-k-props { margin-top:var(--az-sp-4); display:flex; flex-direction:column; max-width:760px; }
.az-k-prop { position:relative; display:grid; grid-template-columns:150px minmax(0,1fr); gap:var(--az-sp-3); align-items:start; padding:var(--az-sp-2) var(--az-sp-2); border-radius:8px; font-size:14px; }
.az-k-prop:hover { background:color-mix(in srgb, var(--az-surface-2) 70%, transparent); }
.az-k-prop .az-k-k { color:var(--az-ink-3); font-size:13.5px; padding-top:1px; }
.az-k-prop .az-k-v { min-width:0; display:flex; align-items:center; gap:var(--az-sp-2); flex-wrap:wrap; }
.az-k-prop.x { display:none; } .az-k-props.all .az-k-prop.x { display:grid; } .az-k-props.all .az-k-more-props { display:none; }
.az-k-more-props { position:relative; font-size:13px; color:var(--az-ink-3); padding:var(--az-sp-1) var(--az-sp-2); border-radius:8px; align-self:flex-start; }
.az-k-more-props:hover { color:var(--az-ink); background:var(--az-surface-2); }
/* اللوح بعمودين: رئيسي وجانبي — كل عمود كومة بلا فراغات (01-today-v4.html:199-203) */
.az-k-board { display:grid; grid-template-columns:minmax(0,2fr) minmax(0,1fr); gap:var(--az-sp-4); margin-top:var(--az-section-gap); align-items:start; }
.az-k-col { display:flex; flex-direction:column; gap:var(--az-sp-4); min-width:0; }
.az-k-card { position:relative; min-width:0; border-radius:16px; padding:var(--az-sp-3) var(--az-sp-4); background:var(--az-surface); border:1px solid var(--az-line); box-shadow:var(--az-shadow); }
.az-k-card > h3, .az-k-card-h { font-size:14px; font-weight:700; line-height:1.3; margin-bottom:var(--az-sp-2); display:flex; align-items:baseline; gap:var(--az-sp-2); white-space:nowrap; }
.az-k-card-h small, .az-k-card > h3 small { font-size:12px; color:var(--az-ink-3); font-weight:400; }
.az-k-card-h .az-k-btn--text, .az-k-card > h3 .az-k-btn--text { margin-inline-start:auto; min-height:28px; font-size:12.5px; }
.az-k-card--next { background:var(--az-accent-soft); border-color:var(--az-accent-line); box-shadow:none; }
.az-k-card--next > h3 { color:var(--az-accent-text); }
.az-k-card--quiet { background:var(--az-surface-2); border-color:transparent; box-shadow:none; }
/* لم يكن لـ.az-k-hint العام حجم أساسي — يرث حجم الصفحة فقط في أي سياق لا
   يخصّه أحد الانتقاءات الأضيق أدناه (az-k-field/az-k-actions/az-k-action-page).
   فبدا نص شرح كـ«الأدوار ومن يرى ماذا» أو «كيف يدخل العضو» أكبر من محيطه في
   صفحات صحة البوابة — مراجعة الشكل #525. */
.az-k-hint { font-size:var(--label); color:var(--az-ink-3); line-height:1.6; }
.az-k-li { position:relative; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:2px var(--az-sp-3); align-items:center; padding:var(--az-sp-2) 2px; border-top:1px solid var(--az-line); font-size:13.5px; }
.az-k-li:first-of-type { border-top:0; padding-top:2px; }
.az-k-li time, .az-k-li .az-k-meta { font-size:12px; color:var(--az-ink-3); white-space:nowrap; }
.az-person #persona .az-k-li > span { min-width:0; overflow-wrap:anywhere; }
.az-person #persona .az-k-persona-excerpt { white-space:normal; overflow-wrap:anywhere; }
.az-person #persona .az-k-persona-review { display:flex; flex-wrap:wrap; gap:var(--az-sp-2); max-width:100%; }
.az-person #persona .az-k-persona-review .az-k-input { flex-basis:100%; }
.az-person #persona .az-k-input, .az-person #persona .az-k-btn { min-height:44px; }
/* الطيّة (bd-people.html:216-228) */
.az-k-fold { border-top:1px solid var(--az-line); }
.az-k-fold:last-child { border-bottom:1px solid var(--az-line); }
.az-k-fold-h { display:flex; align-items:center; gap:var(--az-sp-3); width:100%; min-height:44px; padding:var(--az-sp-2) var(--az-sp-1); border-radius:10px; text-align:start; }
.az-k-fold-h:hover { background:color-mix(in srgb, var(--az-surface-2) 70%, transparent); }
.az-k-tri { width:18px; height:18px; flex:none; display:grid; place-items:center; color:var(--az-ink-3); transition:transform .18s var(--ease); }
.az-k-tri svg { width:10px; height:10px; }
.az-k-fold.open > .az-k-fold-h .az-k-tri { transform:rotate(-90deg); }
.az-k-fold-h .az-k-ft { font-size:14px; font-weight:700; white-space:nowrap; }
.az-k-fold-h .az-k-fc { font-size:12.5px; color:var(--az-ink-3); white-space:nowrap; }
.az-k-fold-h .az-k-fc.act { color:var(--az-warn); font-weight:700; background:var(--az-warn-soft); border-radius:99px; padding:0 var(--az-sp-2); }
.az-k-fold-h .az-k-fs { flex:1; min-width:0; font-size:12.5px; color:var(--az-ink-3); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.az-k-fold.open > .az-k-fold-h .az-k-fs { visibility:hidden; }
.az-k-fold-b { display:none; padding:0 var(--az-sp-1) var(--az-sp-3) var(--az-sp-7); padding-inline-start:var(--az-sp-7); }
.az-k-fold.open > .az-k-fold-b { display:block; }

/* ═══ ٨ — الأشكال بحسب النوع (bd-card2.html:801-825) ═══ */
/* رقم = بلاطة */
.az-k-tiles { display:flex; flex-wrap:wrap; gap:var(--az-sp-2); }
.az-k-tile { display:flex; flex-direction:column; min-width:96px; padding:var(--az-sp-2) var(--az-sp-3); border-radius:10px; background:var(--az-surface); border:1px solid var(--az-line); }
.az-k-tile b { font-size:20px; line-height:1.1; font-weight:700; font-variant-numeric:tabular-nums; }
.az-k-tile small { font-size:12px; color:var(--az-ink-3); margin-top:3px; }
/* مصدر = شريحة، والمقتطف عند التحويم */
.az-k-src { position:relative; display:inline-flex; align-items:baseline; gap:var(--az-sp-2); font-size:12px; color:var(--az-ink-2); padding:1px var(--az-sp-2); border-radius:7px; border:1px solid var(--az-line); background:var(--az-bg); cursor:default; white-space:nowrap; }
.az-k-src b { color:var(--az-ink); font-weight:700; }
.az-k-src[data-x]:hover::after, .az-k-src[data-x]:focus-visible::after { content:attr(data-x); position:absolute; top:calc(100% + 6px); inset-inline-start:0; z-index:8; width:260px; padding:var(--az-sp-2) var(--az-sp-3); border-radius:10px; background:var(--az-ink); color:var(--az-bg); font-size:12px; line-height:1.6; box-shadow:var(--az-shadow-lift); white-space:normal; }
/* تاريخ = خط زمني صغير */
.az-k-mtl { display:flex; align-items:flex-start; margin:var(--az-sp-1) 0 2px; }
.az-k-mtl span { position:relative; flex:1; min-width:0; padding-top:var(--az-sp-3); font-size:12px; color:var(--az-ink-2); text-align:center; }
/* الوصلة من مركز المحطة إلى مركز التالية (في RTL: إلى اليسار) — بخصائص منطقية فتصحّ في الاتجاهين؛ الأخيرة بلا وصلة.
   (كان :first-child يقصّ وصلته إلى نصف، فبقي فراغ بين أول محطتين في RTL) */
.az-k-mtl span::before { content:''; position:absolute; top:4px; inset-inline-start:50%; inset-inline-end:-50%; border-top:2px solid var(--az-line-2); }
.az-k-mtl span:last-child::before { content:none; }
.az-k-mtl span::after { content:''; position:absolute; top:0; left:50%; width:10px; height:10px; margin-left:-5px; border-radius:99px; background:var(--az-bg); border:2px solid var(--az-line-2); }
.az-k-mtl span.now::after { background:var(--az-accent-text); border-color:var(--az-accent-text); box-shadow:0 0 0 3px var(--az-accent-soft); }
.az-k-mtl span.now { color:var(--az-ink); font-weight:700; }
.az-k-mtl span b { display:block; font-weight:500; color:var(--az-ink); }
/* استنتاج = اقتباس قصير */
.az-k-quote { position:relative; padding:var(--az-sp-1) var(--az-sp-3); border-inline-start:2px solid var(--az-accent-line); background:color-mix(in srgb, var(--az-accent-soft) 60%, transparent); border-radius:4px 8px 8px 4px; font-family:var(--font-ar-text),var(--font-ar-ui),serif; font-weight:500; font-size:14px; line-height:1.7; color:var(--az-ink); overflow-wrap:anywhere; }
.az-k-quote .az-k-who2 { display:block; font-family:var(--font-ar-ui); font-size:12px; color:var(--az-ink-2); margin-top:2px; }
/* نثر = يُطوى بعد ثلاثة أسطر. `overflow-wrap:anywhere` ضروريّ لا زخرفة: بلا كسرٍ للكلمة
   الطويلة غير القابلة للفصل (رابطٌ أو اسمٌ إنجليزيّ) يفيض النصّ أفقيًّا خارج البطاقة تمامًا
   بدل أن يُطوى بعد ثلاثة أسطر — عدّاد الحروف في `prose()` افترض أن كل نصٍّ قابلٌ للف. */
.az-k-prose { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; line-height:1.7; overflow-wrap:anywhere; }
.az-k-prose.open { display:block; -webkit-line-clamp:unset; }
.az-k-more { position:relative; font-size:12.5px; font-weight:700; color:var(--az-accent-text); padding:2px var(--az-sp-2); margin-inline-start:-6px; border-radius:6px; }
.az-k-more:hover { background:var(--az-accent-soft); }

/* ═══ ٩ — علامة الثقة الموحدة k-conf (bd-card2.html:1066-1071) ═══
   sure = مثبت (له مصدر ولا خلاف) · infer = استنتاج (قراءتنا بلا مصدر خارجي) · verify = يحتاج تحققاً (أقدم من ٣٠ يوماً أو عليه تناقض) */
.az-k-conf { display:inline-flex; align-items:center; gap:var(--az-sp-2); font-size:12px; font-weight:700; white-space:nowrap; line-height:20px; }
.az-k-conf::before { content:''; width:7px; height:7px; border-radius:99px; background:currentColor; flex:none; }
.az-k-conf[data-c="sure"] { color:var(--az-ok-text); }
.az-k-conf[data-c="infer"] { color:var(--az-accent-text); } .az-k-conf[data-c="infer"]::before { background:transparent; box-shadow:inset 0 0 0 2px currentColor; }
.az-k-conf[data-c="verify"] { color:var(--az-warn); } .az-k-conf[data-c="verify"]::before { box-shadow:0 0 0 2.5px var(--az-warn-soft); }
.az-k-conf small { font-size:12px; font-weight:500; color:var(--az-ink-3); }

/* ═══ ١٠ — الشرائح: كيان (k-chip بنوعه) · سبب (k-rc) · «توضيحي» (k-illus) ═══ */
.az-k-chip { display:inline-flex; align-items:center; gap:var(--az-sp-1); font-size:12.5px; font-weight:500; padding:0 var(--az-sp-2) 0 var(--az-sp-2); line-height:22px; border-radius:7px; background:var(--az-surface-2); border:1px solid var(--az-line); color:var(--az-ink); cursor:pointer; white-space:nowrap; position:relative; max-width:100%; overflow:hidden; text-overflow:ellipsis; transition:border-color .14s, background .14s; vertical-align:middle; }
.az-k-chip:hover { border-color:var(--c); background:color-mix(in srgb, var(--c) 9%, var(--az-surface)); }
.az-k-chip::before { content:''; width:7px; height:7px; border-radius:2px; background:var(--c, var(--az-ink-3)); flex:none; }
.az-k-chip[data-t="client"] { --c:var(--az-t-client); } .az-k-chip[data-t="org"] { --c:var(--az-t-org); } .az-k-chip[data-t="project"] { --c:var(--az-t-project); } .az-k-chip[data-t="person"] { --c:var(--az-t-person); } .az-k-chip[data-t="output"] { --c:var(--az-t-output); }
.az-k-chip[data-t="person"]::before { border-radius:99px; }
.az-k-reasons { display:flex; align-items:center; gap:var(--az-sp-2); min-width:0; }
.az-k-reasons .az-k-rl { font-size:12.5px; color:var(--az-ink-3); flex:none; }
.az-k-chips { display:flex; align-items:center; gap:var(--az-sp-2); min-width:0; overflow-x:auto; scrollbar-width:none; padding:3px 1px; margin:-3px 0; }
.az-k-rc { position:relative; flex:none; font-size:12.5px; line-height:28px; padding:0 var(--az-sp-3); border-radius:99px; border:1px solid var(--az-line); color:var(--az-ink-2); background:var(--az-surface); transition:all .14s var(--ease); white-space:nowrap; }
/* مجموعة «التسمية: الشارة» لا تنفصل عند الالتفاف؛ يلتف الـflex بين المجموعات لا داخلها. LEGO-05 */
.az-k-rg { display:inline-flex; align-items:center; flex:none; gap:var(--space-2); white-space:nowrap; }
.az-k-rc:hover { border-color:var(--az-line-2); color:var(--az-ink); }
.az-k-rc[aria-pressed="true"] { background:var(--az-accent-soft); border-color:var(--az-accent-line); color:var(--az-accent-text); font-weight:700; }
.az-k-illus { display:inline-block; font-size:12px; color:var(--az-warn); border:1px solid color-mix(in srgb, var(--az-warn) 40%, transparent); border-radius:5px; padding:0 var(--az-sp-1); font-weight:500; line-height:17px; white-space:nowrap; vertical-align:middle; }

/* ═══ ١١ — النموذج k-form (bd-people.html:489-505) ═══ */
.az-k-form { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:var(--az-sp-3) var(--az-sp-5); max-width:760px; }
.az-k-form--inline { margin:var(--az-sp-1) var(--az-sp-3) var(--az-sp-2); padding:var(--az-sp-3) var(--az-sp-4); border-radius:12px; background:var(--az-surface); border:1px solid var(--az-accent-line); }
.az-k-form--single { grid-template-columns:1fr; }
.az-k-form .az-k-wide { grid-column:1 / -1; }
.az-k-field { display:flex; flex-direction:column; gap:var(--az-sp-2); min-width:0; }
.az-k-field > label, .az-k-field > .az-k-label { font-size:12.5px; color:var(--az-ink-2); font-weight:500; }
.az-k-field .az-k-hint { font-size:12px; color:var(--az-ink-3); }
.az-k-input, .az-k-select, .az-k-textarea { width:100%; min-height:38px; border:1px solid var(--az-line); border-radius:9px; padding:0 var(--az-sp-3); background:var(--az-bg); outline:none; font-size:13.5px; color:var(--az-ink); }
.az-k-textarea { min-height:84px; padding:var(--az-sp-2) var(--az-sp-3); line-height:1.7; resize:vertical; }
.az-k-input:focus, .az-k-select:focus, .az-k-textarea:focus { border-color:var(--az-accent); background:var(--az-surface); }
.az-k-input::placeholder, .az-k-textarea::placeholder { color:var(--az-ink-3); }
.az-k-field.bad .az-k-input { border-color:var(--az-bad); } .az-k-field .az-k-err { font-size:12px; color:var(--az-bad); }
.az-k-opts { display:flex; gap:var(--az-sp-1); flex-wrap:wrap; }
.az-k-opts button { display:inline-flex; align-items:center; gap:var(--az-sp-2); font-size:12.5px; line-height:30px; padding:0 var(--az-sp-3); border-radius:99px; background:var(--az-surface-2); color:var(--az-ink-2); }
.az-k-opts button:hover { color:var(--az-ink); }
.az-k-opts button[aria-checked="true"] { background:var(--az-ink); color:var(--az-bg); font-weight:700; }
.az-k-actions { grid-column:1 / -1; display:flex; gap:var(--az-sp-2); align-items:center; flex-wrap:nowrap; }
.az-k-actions .az-k-hint { margin-inline-start:auto; font-size:12px; color:var(--az-ink-3); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-width:0; }

/* ═══ ١٢ — الحالة الفارغة k-empty: جملة تقول من أين يأتي المحتوى + فعل واحد (bd-h.html:263-268) ═══ */
.az-k-empty { padding:48px 0 var(--az-sp-6); max-width:640px; }
.az-k-empty p { font-family:var(--font-ar-text),var(--font-ar-ui),serif; font-weight:500; font-size:22px; line-height:1.7; color:var(--az-ink); }
.az-k-empty small { display:block; font-family:var(--font-ar-ui); font-size:14px; color:var(--az-ink-2); margin-top:var(--az-sp-1); line-height:1.7; }
.az-k-empty .az-k-btn { margin-top:var(--az-sp-4); }
.az-k-empty--row { padding:var(--az-sp-2) var(--az-sp-3); max-width:none; }
.az-k-empty.az-k-empty--row p, p.az-k-empty.az-k-empty--row { font-family:var(--font-ar-ui); font-size:13px; line-height:1.6; color:var(--az-ink-2); }

/* ═══ ١٣ — الدرج الجانبي k-drawer + الستار k-veil (01-today-v4.html .peek · bd-h .tray) ═══ */
.az-k-veil { position:fixed; inset:0; background:rgba(10,22,40,.28); backdrop-filter:blur(3px); -webkit-backdrop-filter:blur(3px); z-index:80; opacity:0; pointer-events:none; transition:opacity .2s; }
.az-k-veil.on { opacity:1; pointer-events:auto; }
.az-k-drawer { position:fixed; top:0; bottom:0; left:0; width:min(440px,100vw); background:var(--az-surface); color:var(--az-ink); border-right:1px solid var(--az-line); box-shadow:var(--az-shadow-lift); z-index:85; transform:translateX(-102%); visibility:hidden; transition:transform .32s var(--ease-out), visibility 0s .32s; display:flex; flex-direction:column; }
.az-k-drawer.on { transform:none; visibility:visible; transition:transform .32s var(--ease-out), visibility 0s; }
.az-k-drawer-h { display:flex; align-items:center; gap:var(--az-sp-3); padding:var(--az-sp-2) var(--az-sp-4) var(--az-sp-2) var(--az-sp-5); border-bottom:1px solid var(--az-line); min-height:56px; }
.az-k-drawer-h h2 { font-size:15px; font-weight:700; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-width:0; }
.az-k-drawer-h .az-k-x { margin-inline-start:auto; width:36px; height:36px; border-radius:9px; display:grid; place-items:center; color:var(--az-ink-2); font-size:15px; flex:none; }
.az-k-drawer-h .az-k-x:hover { background:var(--az-surface-2); color:var(--az-ink); }
.az-k-drawer-b { padding:var(--az-sp-4) var(--az-sp-5); overflow:auto; flex:1; }
.az-k-drawer-b h3 { font-family:var(--font-ar-display),var(--font-ar-ui),serif; font-size:21px; line-height:1.3; }
.az-k-drawer-f { padding:var(--az-sp-3) var(--az-sp-5); border-top:1px solid var(--az-line); display:flex; gap:var(--az-sp-2); align-items:center; }
.az-k-status { display:flex; align-items:center; gap:var(--az-sp-2); margin:var(--az-sp-2) 0 var(--az-sp-3); padding:var(--az-sp-2) var(--az-sp-3); border-radius:10px; background:var(--az-accent-soft); font-size:13px; color:var(--az-accent-text); }
.az-k-status i { width:8px; height:8px; border-radius:99px; background:var(--az-accent-text); flex:none; }

/* ═══ ١٤ — «علّق» عند المرور على أي سطر [data-az-cm] (bd-h.html:600-647) ═══ */
[data-az-cm] { position:relative; }
/* سطر التعليقات الهادئ في رأس الغرفة (bd-people.html:127-131) */

/* ═══ ١٥ — التوست بتراجع ٥ ثوانٍ (01-today-v4.html:337-343) ═══ */
.az-k-toast { position:fixed; bottom:24px; right:50%; transform:translate(50%,20px); background:var(--az-ink); color:var(--az-bg); padding:var(--az-sp-2) var(--az-sp-3) var(--az-sp-3) var(--az-sp-4); border-radius:12px; display:flex; align-items:center; gap:var(--az-sp-4); font-size:13.5px; box-shadow:var(--az-shadow-lift); opacity:0; pointer-events:none; visibility:hidden; transition:all .26s var(--ease-out); z-index:95; overflow:hidden; max-width:calc(100vw - 32px); }
.az-k-toast.on { opacity:1; pointer-events:auto; visibility:visible; transform:translate(50%,0); }
.az-k-toast button { position:relative; font-weight:700; color:var(--az-accent-line); padding:var(--az-sp-1) var(--az-sp-2); border-radius:7px; }
.az-k-toast .az-k-bar { position:absolute; bottom:0; right:0; height:3px; background:var(--az-accent); }
.az-k-toast.on .az-k-bar { animation:k-drain 5s linear forwards; }
@keyframes k-drain { from{width:100%} to{width:0} }

/* ═══ ١٦ — البحث ⌘K k-pal (01-today-v4.html:318-326) ═══ */
button.az-k-icon-btn { border:0; background:none; padding:0; font:inherit; cursor:pointer; color:var(--az-ink-2); }
.az-k-pal { margin:auto; padding:0; border:1px solid var(--az-line); width:min(640px, calc(100vw - 24px)); max-height:min(560px, calc(100vh - 48px)); border-radius:18px; background:var(--az-surface); color:var(--az-ink); box-shadow:var(--az-shadow-lift); }
.az-k-pal::backdrop { background:rgba(10,22,40,.28); }
.az-k-pal-in { display:flex; align-items:center; gap:var(--az-sp-2); padding:var(--az-sp-2) var(--az-sp-3) var(--az-sp-2) var(--az-sp-4); border-bottom:1px solid var(--az-line); }
.az-k-pal-in input { flex:1; min-width:0; border:0; background:none; outline:none; font:inherit; font-size:18px; color:var(--az-ink); min-height:44px; }
.az-k-pal-in input::placeholder { color:var(--az-ink-3); }
.az-k-pal-body { max-height:min(420px, 60vh); overflow:auto; padding:var(--az-sp-2); }
.az-k-pal-cap { font-size:12px; font-weight:800; color:var(--az-ink-2); padding:var(--az-sp-2) var(--az-sp-3) var(--az-sp-1); }
.az-k-pal a.az-k-pal-item, .az-k-pal button.az-k-pal-item { display:flex; flex-direction:column; align-items:flex-start; gap:2px; width:100%; text-align:start; text-decoration:none; color:inherit; border:0; background:none; border-radius:10px; padding:var(--az-sp-2) var(--az-sp-3); min-height:44px; font:inherit; cursor:pointer; }
.az-k-pal-item b { font-weight:700; }
.az-k-pal-item small { color:var(--az-ink-2); }
.az-k-pal-item.on, .az-k-pal-item:hover, .az-k-pal-item:focus { background:var(--az-surface-2); outline:none; }
.az-k-pal-empty { margin:0; padding:var(--az-sp-3) var(--az-sp-3); color:var(--az-ink-2); }
.az-k-pal-retry { border:0; background:none; color:var(--az-accent-text); font:inherit; font-weight:700; cursor:pointer; min-height:44px; }
.az-k-pal-add { position:relative; }
/* «إضافة» في الشريط كان ارتفاعها ٣٦ فوق ٧٦٠px؛ العرض أوسع من ٤٤ بالنص. */
.az-k-top .az-k-pal-add { min-height:44px; }
.az-k-pal-add > span[aria-hidden="true"] { display:none; }
@media (max-width:760px) {
  .az-k-pal-add { width:44px; padding:0; }
  .az-k-pal-add > span[aria-hidden="true"] { display:inline; }
  .az-k-pal-add-label { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
}

.az-k-protect { display:inline-flex; align-items:center; gap:var(--az-sp-2); font-size:12px; font-weight:500; color:var(--az-ok-text); background:var(--az-ok-soft); border-radius:99px; padding:0 var(--az-sp-3) 0 var(--az-sp-2); line-height:24px; white-space:nowrap; }
.az-k-protect svg { width:13px; height:13px; flex:none; }
.az-k-protect bdi { font-family:system-ui, sans-serif; font-size:12px; letter-spacing:.02em; }
/* ═══ الجوال ═══ */
/* أسطر العُدّة المختلطة التي أسقطها فرز «علّق» والبحث، مُعادة بلا تلك الأجزاء (kit.css:174 · 388 · 390 · 408 · 411) */
.az-k-row .az-k-c--act, .az-k-row .az-k-chip { position:relative; z-index:2; }
@media (max-width:900px) { .az-k-board { grid-template-columns:1fr; } }
/* عرض اللوحي: تسعة أقسام لا تتسع علوًا قبل ~١٠٢٤، فيحلّ الـtabbar السفلي محلّ روابط الشريط (MHM-192 D3). */
@media (max-width:1023px) {
  .az-k-nav { display:none; }
  .az-k-page { padding-bottom:96px; }
  .az-k-toast { bottom:84px; }
  .az-k-tabbar { display:grid; grid-template-columns:repeat(5,1fr); position:fixed; bottom:0; right:0; left:0; z-index:45; padding:var(--az-sp-1) var(--az-sp-1) calc(4px + env(safe-area-inset-bottom) ); background:color-mix(in srgb, var(--az-bg) 90%, transparent); backdrop-filter:saturate(1.3) blur(12px); -webkit-backdrop-filter:saturate(1.3) blur(12px); border-top:1px solid var(--az-line); }
  .az-k-tabbar a { position:relative; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; min-height:52px; font-size:12px; color:var(--az-ink-2); border-radius:10px; }
  .az-k-tabbar a svg { width:21px; height:21px; }
  .az-k-tabbar a.on { color:var(--az-accent-text); font-weight:700; }
  .az-k-tabbar a.on svg { color:var(--az-accent); }
  .az-k-tabbar .az-k-badge { position:absolute; top:3px; left:calc(50% - 22px); min-width:16px; height:16px; font-size:12px; background:var(--az-accent-text); color:var(--az-on-accent); }
}
@media (max-width:760px) {
  .az-k-top { padding:0 var(--az-sp-3); gap:var(--az-sp-2); }
  .az-k-page { padding:0 var(--az-sp-3) 96px; }
  .az-k-btn, .az-k-seg button, .az-k-fb, .az-k-rc, .az-k-opts button, .az-k-input, .az-k-select, .az-k-more-props, .az-k-drawer-h .az-k-x { min-height:44px; }
  .az-k-health-drawer .az-k-btn--quiet { min-width:44px; padding-inline:var(--space-2); }
  .az-k-chip::after, .az-k-more::after, .az-k-src::after { content:''; position:absolute; inset:-11px -2px; }
  .az-k-chip { min-height:calc(var(--space-5) + var(--space-2)); box-sizing:border-box; }
  body:not(.outputs-library) .az-k-c--main a.az-k-name { line-height:calc(var(--space-5) + var(--space-2)); }
  .az-k-appear { position:fixed; top:58px; left:12px; right:12px; width:auto; }
  .az-k-icon-btn { width:44px; height:44px; }
  /* صندوق الزر نفسه ٤٤، لا حلقة ::after: فحص صفحة اليوم يقيس getBoundingClientRect. */
  .az-k-me { width:44px; height:44px; }
  .az-k-me::after { content:''; position:absolute; inset:-6px; }
  .az-k-menu-links a { display:flex; align-items:center; min-height:44px; }
  .az-k-toast { bottom:84px; }
  .az-k-head { gap:var(--az-sp-3); }
  .az-k-head-meta { display:none; }
  .az-k-toolbar { flex-wrap:wrap; }
  .az-k-toolbar .az-k-search { flex-basis:100%; height:auto; }
  .az-k-search input { min-height:44px; }
  .az-k-toolbar .az-k-fbar { flex:1; }
  .az-k-seg button, .az-k-fb, .az-k-rc, .az-k-opts button { line-height:44px; }
  .az-k-seg button { padding-inline:var(--az-sp-3); }
  .az-k-src[data-x]:hover::after { inset:auto; }
  .az-k-drawer-h .az-k-x { width:44px; }
  /* القائمة: الخلية الرئيسية سطر كامل، والبقية سطر ثانٍ */
  .az-k-list { --az-cols:minmax(0,1fr) auto; }
  .az-k-row--head { display:none; }
  .az-k-row { grid-template-columns:minmax(0,1fr) auto; gap:2px var(--az-sp-3); padding:var(--az-sp-2) var(--az-sp-2); }
  .az-k-row .az-k-c--main { grid-column:1; }
  .az-k-row .az-k-c--act { grid-column:2; grid-row:1 / span 2; align-self:center; }
  .az-k-row .az-k-c:not(.az-k-c--main):not(.az-k-c--act) { grid-column:1; font-size:12.5px; }
  .az-k-row .az-k-c.az-k-c--opt { display:none; }
  .az-k-list[data-view="cards"] .az-k-rows { grid-template-columns:1fr; }
  .az-k-list[data-view="cards"] .az-k-row .az-k-c--act { grid-column:1; grid-row:auto; }
  /* صفحة الكيان */
  .az-k-ehead { grid-template-columns:48px minmax(0,1fr); gap:var(--az-sp-1) var(--az-sp-3); }
  .az-k-ehead:has(.az-org-identity__mark--hero) { display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:flex-start; gap:var(--space-3); }
  .az-k-ehead .az-k-lead { width:48px; height:48px; font-size:17px; }
  .az-k-ehead-acts { grid-column:1 / -1; }
  .az-k-prop { grid-template-columns:104px minmax(0,1fr); gap:var(--az-sp-3); }
  .az-k-form { grid-template-columns:1fr; }
  .az-k-form--inline { margin-inline:0; }
  .az-k-fold-b { padding-inline-start:var(--az-sp-1); }
  .az-k-empty { padding-top:28px; } .az-k-empty p { font-size:19px; }
  .az-k-drawer { width:100vw; }
  .az-k-xtop { padding:0 var(--az-sp-3); gap:var(--az-sp-3); height:56px; }
  .az-k-xtop .az-k-protect { display:none; }
  .az-k-xtop .az-k-xname small { display:none; }
  .az-k-xfoot { padding:var(--az-sp-4) var(--az-sp-3) var(--az-sp-7); }
}
@media (prefers-reduced-motion:reduce) {
  *, *::before, *::after { transition:none !important; animation:none !important; scroll-behavior:auto !important; }
  /* * لا يطابق لقطات انتقال الصفحة، والقشرة تفعّل view-transition على «اليوم» وتطوير الأعمال. */
  ::view-transition-group(*), ::view-transition-old(*), ::view-transition-new(*) {
    animation-duration: 0s !important;
    animation-delay: 0s !important;
  }
}

/* صحة البوابة: سلسلة سبع مراحل، ودرج أصيل يحبس التركيز، ومصفوفة تتحول طيّات دون تمرير. */
.az-k-health [hidden]{display:none!important}
.az-k-health .az-k-btn,.az-k-health .az-k-seg button{min-height:44px}
.az-k-health p{line-height:1.7}
.az-k-health .az-k-actions{flex-wrap:wrap}
.az-k-health-runs{--az-cols:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1.6fr) auto}
.az-k-health-activity{--az-cols:minmax(0,2fr) minmax(0,1.8fr) minmax(0,1fr) minmax(0,.7fr)}
.az-k-health .az-k-c{white-space:normal;overflow-wrap:anywhere}
.az-k-health .az-k-c--main{display:block}
.az-k-health .az-k-row--head{font-size:var(--small);color:var(--az-ink-3)}
.az-k-health-fold{border-bottom:1px solid var(--az-line);padding-block:var(--space-2)}
.az-k-health-fold>summary{display:flex;align-items:center;min-height:44px;cursor:pointer;font-weight:700;gap:var(--space-2)}
.az-k-health-fold>summary::before{content:'›';color:var(--az-ink-3)}
.az-k-health-fold[open]>summary::before{content:'⌄'}
.az-k-health-flow{list-style:none;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-2)}
.az-k-health-flow li{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3);border:1px solid var(--az-line);border-radius:var(--radius-md);background:var(--az-surface);font-size:var(--small)}
.az-k-health-flow small{color:var(--az-ink-3)}
.az-k-health-drawer{position:fixed;inset:0 auto 0 0;margin:0;width:min(520px,100%);max-width:100%;height:100dvh;max-height:100dvh;padding:0;border:0;border-inline-start:1px solid var(--az-line);background:var(--az-surface);color:var(--az-ink);box-shadow:var(--az-shadow-lift);overflow-y:auto}
.az-k-health-drawer::backdrop{background:color-mix(in srgb,var(--az-ink) 35%,transparent)}
.az-k-health-drawer .az-k-drawer-b{overflow-wrap:anywhere}
.az-k-health-table{overflow:auto;max-width:100%;margin-block:var(--space-3)}
.az-k-health-table table,.az-k-health-matrix{width:100%;border-collapse:collapse;font-size:var(--small)}
.az-k-health-table th,.az-k-health-table td,.az-k-health-matrix th,.az-k-health-matrix td{padding:var(--space-2);border-bottom:1px solid var(--az-line);text-align:start;vertical-align:top}
.az-k-health-table table{min-width:760px}
.az-k-health-table td>*{display:block}
.az-k-health-table small,.az-k-health-matrix small{display:block;color:var(--az-ink-3);font-size:var(--micro)}
.az-k-health-matrix{table-layout:fixed}
.az-k-health-matrix td,.az-k-health-matrix th{overflow-wrap:anywhere}
.az-k-health-matrix .az-k-btn{white-space:normal;padding-inline:var(--space-1)}
.az-k-health-mobile-roles{display:none}
/* عناصر الأفعال المنقولة إلى الطيات تحافظ على النموذج والرمز الأمني، وتستهلك هندسة العدة نفسها. */
.az-k-health form{min-width:0}
.az-k-health :is(input:not([type=hidden]),textarea,select){box-sizing:border-box;max-width:100%;min-height:44px;padding:var(--space-2);border:1px solid var(--az-line);border-radius:var(--radius-sm);background:var(--az-surface);color:var(--az-ink);font:inherit}
.az-k-health [class^="az-k-life-"] button{min-height:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--az-line);border-radius:var(--radius-md);background:var(--az-surface);color:var(--az-ink);font:inherit;cursor:pointer}
.az-k-life-command nav{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-block:var(--space-3)}
.az-k-life-answer h2{font-size:var(--h4)}
.az-k-life-command>div{display:flex;gap:var(--space-2)}
.az-k-life-command input{flex:1;min-width:0}
/* خطوات «كيف يدخل العضو»: <ol> بلا صنف يرث حجم النص الأساسي (أكبر من محيطه في
   az-k-card--quiet) وترقيماً لاتينياً افتراضياً — أرقام هندية وحجم الصفحة
   العادي بدل ذلك. مراجعة الشكل #525. */
.az-k-onboard-steps{list-style:arabic-indic;display:grid;gap:var(--space-2);padding-inline-start:var(--az-sp-6);font-size:var(--label);color:var(--az-ink-2);line-height:1.6}
.az-k-onboard-steps li{padding-inline-start:var(--az-sp-1)}
.az-k-health .az-k-toolbar{align-items:center}
/* مرشّحات النشاط شريط سطر واحد: تسميتها مخفية بصرياً (az-k-sr) لا مكدَّسة فوق
   العنصر (az-k-field)، والعنصر بعرضه الطبيعي لا 100% الموروث من .az-k-select
   العام — مراجعة الشكل #525 (كانت قائمتين كبيرتين خارج نمط شريط الرقائق). */
.az-k-health .az-k-toolbar > select.az-k-select{width:auto;min-width:0;font-size:13px}
.az-k-health [data-health-notice]:empty{display:none}
@media(max-width:760px){
 .az-k-health-flow{grid-template-columns:minmax(0,1fr)}
 .az-k-health-flow li{flex-direction:row;align-items:center;gap:var(--space-3)}
 .az-k-health-matrix{display:none}
 .az-k-health-mobile-roles{display:block}
 .az-k-health .az-k-head{gap:var(--space-2)}
 .az-k-health .az-k-head h1{font-size:var(--body)}
 .az-k-health .az-k-tabs a{padding-inline:var(--space-2);font-size:var(--small)}
 .az-k-health .az-k-row{grid-template-columns:minmax(0,1fr);gap:var(--space-2)}
 .az-k-health .az-k-row--head{display:none}
 .az-k-health .az-k-c--act{justify-self:start}
 .az-k-health .az-k-list[data-view="cards"] .az-k-rows{grid-template-columns:minmax(0,1fr)}
}
/* الوحدة ١٣: أعمدة ثابتة للفعل، وخلايا قراءة تقطع السطر بدلاً من تمديد القوائم. */
.az-k-mail-list { --az-cols:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) calc(var(--space-7) + var(--space-3)); }
.az-k-outbox-list { --az-cols:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) minmax(150px,auto) var(--space-7); }
.az-k-agenda-list { --az-cols:var(--space-6) minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) var(--space-7); }
.az-k-queue-list { --az-cols:minmax(0,2fr) minmax(0,1fr) minmax(0,2fr) var(--space-7); }
.az-k-cell-stack { display:flex; flex-direction:column; align-items:start; gap:var(--space-1); }
.az-k-cell-stack > * { max-width:100%; overflow:hidden; text-overflow:ellipsis; }
/* نثر الرسالة يحتفظ بفواصله، والعناوين التقنية الطويلة لا تتجاوز الدرج. */
.az-k-message-body { white-space:pre-wrap; overflow-wrap:anywhere; line-height:var(--lh-body); padding-block:var(--space-3); font-size:var(--small); }
.az-k-form--single { grid-template-columns:minmax(0,1fr); }
.az-k-candidate { display:flex; align-items:center; gap:var(--space-2); min-height:var(--space-6); border-bottom:1px solid var(--rule); }
.az-k-candidate small { display:block; }
.az-k-candidate input { width:auto; flex:none; }
.az-k-going { opacity:.5; }
.az-k-going .az-k-name { text-decoration:line-through; }
.az-k-send-state[data-state="sent"] { color:var(--positive-ink); }
.az-k-send-state[data-state="failed"] { color:var(--alert); }
.az-k-send-state[data-state="pending"] { color:var(--uncertain-ink); }
.az-k-action-page [hidden] { display:none !important; }
.az-k-action-page .az-k-gh { scroll-margin-top:var(--space-7); }
.az-k-action-page form { margin:0; }
.az-k-action-page + .az-k-drawer summary, .az-k-drawer summary { display:flex; align-items:center; min-height:var(--space-6); padding:var(--az-sp-2) var(--az-sp-1); font:inherit; font-weight:700; color:inherit; cursor:pointer; list-style:none; }
.az-k-action-page + .az-k-drawer summary::-webkit-details-marker, .az-k-drawer summary::-webkit-details-marker { display:none; }
.az-k-action-page + .az-k-drawer summary::marker, .az-k-drawer summary::marker { content:''; }
/* الشبكة للمكتب فقط؛ على الجوال يبقى نفس مصدر البنود مرسوماً كأيام نشطة. */
.az-k-month-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); border-top:1px solid var(--rule); }
.az-k-month-cell { min-height:var(--space-8); padding:var(--space-2); border-bottom:1px solid var(--rule); border-inline-end:1px solid var(--rule); min-width:0; }
.az-k-weekday { text-align:center; padding:var(--space-2); font-size:var(--label); }
.az-k-month-outside { opacity:.5; }
.az-k-month-today { background:var(--p50); }
.az-k-day-number { display:inline-flex; align-items:center; justify-content:center; min-width:var(--space-5); min-height:var(--space-5); }
.az-k-month-event { display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-size:var(--micro); padding:var(--space-1); border-inline-start:2px solid var(--p500); }
.az-k-month-mobile { display:none; }
/* الرأس على الجوال سطران متماسكان: عنوان وتبويبات، ثم الفعل؛ لا التفاف داخل الأزرار أو الأشرطة. */
@media(max-width:760px) {
  .az-k-head--responsive { flex-wrap:wrap; gap:var(--space-2); padding-block:var(--space-2); }
  .az-k-head--responsive .az-k-head-acts { flex-basis:100%; justify-content:flex-start; margin:0; }
  .az-k-head--responsive .az-k-head-meta { display:none; }
  .az-k-action-page .az-k-toolbar { flex-wrap:wrap; }
  .az-k-action-page .az-k-toolbar > .az-k-fbar { max-width:100%; }
  .az-k-action-page .az-k-row { grid-template-columns:minmax(0,1fr) var(--space-7); }
  .az-k-action-page .az-k-c--act { width:var(--space-7); justify-content:end; }
  .az-k-month-desktop { display:none; }
  .az-k-month-mobile { display:block; }
  .az-k-action-page .az-k-btn--text, .az-k-drawer .az-k-btn--text { min-width:44px; padding-inline:var(--space-2); }
}
/* شرح مساعد في صفحات الأفعال: نفس سلم الحقول، بلا فقرة بحجم المتن الكبير. */
.az-k-action-page .az-k-hint { font-size:var(--label); color:var(--mut); margin-block:var(--space-3); }
/* ── الوحدة ٦ · «الأشخاص» (bd-people.html) — عناصر لا تغطيها العُدّة، بأسمائها ─────────────
   المقياس (أربع نقاط وصورة مالك العلاقة)، صورة الشخص، قفل الحساسية، آخر تواصل، سطر اقتراحات
   السجل القديم، وشبكة صف الشخص. الألوان متغيّرات az، والمسافات من سلّم المسافات. */
.az-people a { text-decoration:none; }
/* لوحة الخيوط (network-graph) تُحقن في بطاقة الشخص بعنوانها المستقل («sec»، مقاسٌ
   لصفحةٍ كاملة) داخل قسمٍ `.panel` لا `.az-k-card` — فلا يطابقه `.az-k-card > h3`.
   هذا استثناء نطاقٍ بمحدِّد لا تغيير في بنية اللوحة المشتركة (تخدم صفحاتٍ أخرى). */
.az-people #threads .sec-head h3 { font-size:14px; font-weight:700; line-height:1.3; margin-bottom:var(--az-sp-2); }
.az-k-ptop { display:flex; align-items:baseline; gap:var(--space-3) var(--space-5); flex-wrap:wrap; margin-top:var(--space-5); }
.az-k-stats { display:flex; gap:var(--space-4); flex-wrap:wrap; margin:0 0 0 auto; font-size:13px; color:var(--az-ink-2); }
.az-k-stats span { display:inline-flex; align-items:baseline; gap:var(--az-sp-2); white-space:nowrap; }
.az-k-stats b { font-size:15px; font-weight:700; color:var(--az-ink); font-variant-numeric:tabular-nums; }
.az-k-keyline { display:flex; align-items:center; gap:var(--space-2); margin:var(--space-2) 0 0; font-size:12.5px; color:var(--az-ink-3); }
.az-k-cline { display:flex; align-items:center; gap:var(--az-sp-3); flex-wrap:wrap; margin-top:var(--space-3); padding:var(--az-sp-1) var(--az-sp-3); min-height:38px; border:1px dashed var(--az-line-2); border-radius:10px; font-size:13px; color:var(--az-ink-2); }
.az-k-cline b { color:var(--az-ink); }
.az-k-cline a { margin-inline-start:auto; font-weight:700; color:var(--az-accent-text); padding:3px var(--az-sp-2); border-radius:7px; white-space:nowrap; }
.az-k-cline a:hover { background:var(--az-accent-soft); }
.az-k-sh { display:flex; align-items:center; gap:var(--az-sp-2); padding:var(--az-sp-3) var(--az-sp-3) 3px; font-size:12.5px; font-weight:700; color:var(--az-ink-2); }
.az-k-sh > span:first-child { min-width:0; overflow-wrap:anywhere; }
.az-k-sh .az-k-gc { font-weight:400; flex:none; color:var(--az-ink-3); }
.az-k-prow { --az-cols:40px minmax(0,1.55fr) 156px 112px minmax(0,1.35fr) auto; }
.az-k-pav { display:inline-grid; place-items:center; width:40px; height:40px; border-radius:99px; overflow:hidden; background:var(--az-surface-2); box-shadow:inset 0 0 0 1px var(--az-line); font-family:var(--font-ar-display),var(--font-ar-ui),serif; font-weight:700; font-size:13px; color:var(--az-ink-2); flex:none; }
.az-k-pav img { width:100%; height:100%; object-fit:cover; display:block; }
.az-k-pn { flex-direction:column; align-items:flex-start; gap:1px; }
.az-k-n1 { display:flex; align-items:center; gap:var(--az-sp-2); min-width:0; max-width:100%; }
.az-k-tl { display:flex; align-items:center; gap:var(--az-sp-2); min-width:0; max-width:100%; font-size:12.5px; color:var(--az-ink-2); overflow:hidden; }
.az-k-tl > span:first-child { overflow:hidden; text-overflow:ellipsis; }
.az-k-afs { font-size:12px; line-height:18px; padding:0 var(--az-sp-2); border-radius:6px; color:var(--az-warn); border:1px solid color-mix(in srgb, var(--az-warn) 40%, transparent); white-space:nowrap; flex:none; }
.az-k-lock { display:inline-flex; align-items:center; font-size:12px; line-height:18px; padding:0 var(--az-sp-2); border-radius:6px; background:var(--az-surface-2); color:var(--az-ink-2); white-space:nowrap; flex:none; }
.az-k-lock.hr { background:var(--az-bad-soft); color:var(--az-bad); }
.az-k-meter { display:inline-flex; align-items:center; gap:var(--az-sp-2); white-space:nowrap; }
.az-k-ds { display:inline-flex; gap:3px; }
.az-k-ds i { width:9px; height:9px; border-radius:99px; box-shadow:inset 0 0 0 1.5px var(--az-line-2); }
.az-k-meter[data-s="1"] .az-k-ds i:nth-child(-n+1), .az-k-meter[data-s="2"] .az-k-ds i:nth-child(-n+2),
.az-k-meter[data-s="3"] .az-k-ds i:nth-child(-n+3), .az-k-meter[data-s="4"] .az-k-ds i { background:var(--az-accent-text); box-shadow:none; }
.az-k-ow { width:20px; height:20px; border-radius:99px; object-fit:cover; box-shadow:0 0 0 1.5px var(--az-bg); flex:none; }
.az-k-sw { font-size:12px; color:var(--az-ink-2); }
.az-k-meter.none .az-k-ds i { box-shadow:inset 0 0 0 1.5px var(--az-line); }
.az-k-meter.none .az-k-sw { color:var(--az-ink-3); }
.az-k-lastc { display:inline-flex; align-items:center; gap:var(--az-sp-2); font-size:12.5px; color:var(--az-ink-2); white-space:nowrap; }
.az-k-lastc.none { color:var(--az-ink-3); }
.az-k-lastc.stale { color:var(--az-warn); font-weight:500; }
.az-k-lastc.stale::before { content:''; width:7px; height:7px; border-radius:99px; background:var(--az-warn); flex:none; }
.az-k-pnext .az-k-src { margin-inline-end:var(--az-sp-1); }
.az-k-pav--lg { width:64px; height:64px; font-size:20px; }
.az-k-crow { --az-cols:40px minmax(0,1fr) auto; }
.az-k-suggested { background:var(--az-accent-soft); color:var(--az-accent-text); border-color:var(--az-accent-line); }
.az-k-progress { display:flex; align-items:center; gap:var(--space-3); flex-wrap:wrap; margin-top:var(--space-2); font-size:13px; }
.az-k-progress b { color:var(--az-ink); white-space:nowrap; }
.az-k-bar-track { position:relative; flex:none; width:200px; max-width:40vw; height:6px; border-radius:99px; background:var(--az-line); overflow:hidden; }
.az-k-bar-track i { position:absolute; inset-block:0; inset-inline-start:0; border-radius:99px; background:var(--az-accent-text); }
.az-confirm .az-k-toolbar .az-k-fbar { flex:none; }
.az-confirm .az-k-crow .az-k-reasons { justify-content:flex-end; flex-wrap:wrap; gap:var(--az-sp-2); overflow:visible; }
.az-people .az-k-rc { cursor:pointer; font-family:inherit; }
/* الطيّة والفقرات داخل شاشات الأشخاص: قاعدتا الأزرار والفقرات القديمتان في الأدمن تطغيان على العُدّة. */
.az-people .az-k-fold-h { background:none; border:0; box-shadow:none; font:inherit; color:var(--az-ink); cursor:pointer; }
.az-people .az-k-card p, .az-people .az-k-card .az-k-dim { font-size:13.5px; line-height:1.7; margin:0; }
.az-people .az-k-card .az-k-hint { font-size:12px; color:var(--az-ink-3); margin-top:var(--az-sp-1); }
.az-person .az-k-ehead { margin-top:var(--space-2); }
.az-person .az-k-context { margin:var(--az-sp-1) 0 0; font-size:12.5px; color:var(--az-ink-3); white-space:normal; }
.az-person .az-k-rel + .az-k-rel { margin-top:var(--space-4); padding-top:var(--space-3); border-top:1px solid var(--az-line); }
.az-person .az-k-rel .az-k-props { margin-top:var(--az-sp-1); }
.az-person .az-k-fold { margin-top:var(--space-3); }
.az-k-status--warn { background:var(--az-warn-soft); color:var(--az-warn); }
.az-k-status--warn i { background:var(--az-warn); }
.az-k-points { flex-wrap:wrap; margin-top:var(--space-3); }
.az-k-next { font-size:15px; font-weight:700; color:var(--az-ink); margin:0; }
.az-k-pager { display:flex; align-items:center; gap:var(--az-sp-2); margin-top:var(--space-2); }
.az-k-pager[hidden] { display:none; }
.az-k-pager .az-k-meta { font-size:12px; color:var(--az-ink-3); }
@media (max-width: 760px) {
  .az-k-ptop .az-k-stats { margin:0; }
  .az-k-toolbar { flex-wrap:wrap; }
  .az-k-toolbar .az-k-search { flex-basis:100%; }
  /* الجوال: الصورة والاسم والفعل سطرًا، ثم المقياس وآخر تواصل والخطوة تحت الاسم. تُثبَّت المواضع
     صراحةً لأن قاعدة العُدّة العامة تضع كل خلية في العمود الأول على الشاشة الضيقة. */
  .az-people .az-k-prow { grid-template-columns:40px minmax(0,1fr) auto; row-gap:var(--az-sp-1); align-items:start; }
  .az-people .az-k-prow > .az-k-pav { grid-column:1; grid-row:1 / span 2; }
  .az-people .az-k-prow > .az-k-pn { grid-column:2; grid-row:1; }
  .az-people .az-k-prow > .az-k-c--act { grid-column:3; grid-row:1; }
  .az-people .az-k-prow > .az-k-c:nth-child(3) { grid-column:2 / -1; grid-row:2; }
  .az-people .az-k-prow > .az-k-c:nth-child(4) { grid-column:2 / -1; grid-row:3; }
  .az-people .az-k-prow > .az-k-c.az-k-pnext { grid-column:2 / -1; grid-row:4; white-space:normal; }
  .az-people .az-k-prow .az-k-btn { min-height:44px; }
  .az-people .az-k-prow:not(.known) > .az-k-c:nth-child(4) { display:none; }
  .az-k-pav--lg { width:48px; height:48px; font-size:16px; }
  .az-people .az-k-crow { grid-template-columns:40px minmax(0,1fr); }
  .az-people .az-k-crow > .az-k-pav { grid-column:1; grid-row:1; }
  .az-people .az-k-crow > .az-k-pn { grid-column:2; grid-row:1; }
  .az-people .az-k-crow > .az-k-c--act { grid-column:1 / -1; grid-row:2; justify-content:flex-start; }
  .az-people .az-k-gh { flex-wrap:wrap; row-gap:2px; }
  .az-people .az-k-gh .az-k-gx { flex-basis:100%; margin:0; white-space:normal; }
}

/* ═══ الوحدة ١٠ — بطاقة الوصول ورحلة العميل من w1-client-portal المعتمد.
   القشرة العامة بلا اسم جهة أو حماية؛ النص المخزّن يحتفظ باتجاهه العربي.
   لا تُلحَق بهذه البدائيات أسماء الأدمن القديمة كي تبقى آثارها محصورة. ═══ */

/* ═══ مكوّنات x- خاصة برحلة العميل (مقترحة للعُدّة في w1-client-portal.html.notes.md) ═══ */
.az-k-cover { max-width:460px; margin:var(--az-sp-7) auto var(--az-sp-6); padding:0 var(--az-sp-4); }
.az-k-cover--wide { max-width:760px; }
.az-k-access-card { background:var(--az-surface); border:1px solid var(--az-line); border-radius:18px; padding:var(--az-sp-6) var(--az-sp-6) var(--az-sp-6); box-shadow:var(--az-shadow); }
.az-k-eyebrow { font-size:12.5px; font-weight:700; color:var(--az-accent-text); }
.az-k-title { font-family:var(--font-ar-display),var(--font-ar-ui),serif; font-weight:700; font-size:var(--az-h4); line-height:1.3; margin:var(--az-sp-1) 0 var(--az-sp-2); }
.az-k-lede { font-size:14px; color:var(--az-ink-2); line-height:1.75; }
.az-k-access-card .az-k-field { margin-top:var(--az-sp-3); }
.az-k-access-card .az-k-input { min-height:44px; }
.az-k-full { width:100%; min-height:44px; margin-top:var(--az-sp-4); }
.az-k-link { display:inline-flex; align-items:center; min-height:44px; font-size:13.5px; color:var(--az-accent-text); font-weight:500; }
.az-k-link:hover { text-decoration:underline; }
.az-k-foot { text-align:center; font-size:12.5px; color:var(--az-ink-3); margin-top:var(--az-sp-3); }
.az-k-access-links { display:flex; align-items:center; gap:var(--az-sp-1) var(--az-sp-4); flex-wrap:wrap; margin-top:var(--az-sp-2); }
.az-k-password { position:relative; }
.az-k-password .az-k-input { padding-inline-end:48px; }
.az-k-password button { position:absolute; inset-block:0; inset-inline-end:0; width:44px; display:grid; place-items:center; color:var(--az-ink-3); }
.az-k-password button svg { width:18px; height:18px; }
.az-k-signnote { margin-top:var(--az-sp-3); padding:var(--az-sp-2) var(--az-sp-4); border-radius:12px; background:var(--az-accent-soft); color:var(--az-accent-text); font-size:13.5px; line-height:1.75; }
.az-k-signnote b { color:var(--az-ink); }
.az-k-otp { letter-spacing:.4em; font-family:system-ui, sans-serif; text-align:center; font-size:18px; }
/* الدخول: لوح العلامة + البطاقة */
.az-k-auth { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); max-width:980px; margin:var(--az-sp-7) auto var(--az-sp-6); padding:0 var(--az-sp-4); gap:0; }
.az-k-auth-brand { background:var(--ink); color:var(--cream); border-radius:18px 0 0 18px; padding:var(--az-sp-7) var(--az-sp-7); display:flex; flex-direction:column; justify-content:space-between; min-height:440px; }
[dir="rtl"] .az-k-auth-brand { border-radius:0 18px 18px 0; }
.az-k-auth-brand img { height:22px; width:auto; align-self:flex-start; }
.az-k-auth-brand h2 { font-family:var(--font-ar-display),var(--font-ar-ui),serif; font-size:var(--h4); line-height:1.35; font-weight:700; }
.az-k-auth-brand h2 em { font-style:normal; color:var(--p200); }
.az-k-auth-brand p { font-size:13px; color:var(--cream); line-height:1.7; }
.az-k-auth .az-k-access-card { border-radius:18px 0 0 18px; box-shadow:none; }
[dir="ltr"] .az-k-auth .az-k-access-card { border-radius:0 18px 18px 0; }
/* الاتفاقية */
.az-k-doc { max-height:44vh; overflow:auto; margin-top:var(--az-sp-3); padding:var(--az-sp-3) var(--az-sp-4); border:1px solid var(--az-line); border-radius:12px; background:var(--az-bg); }
.az-k-doc h4 { font-size:13.5px; font-weight:700; margin:var(--az-sp-3) 0 3px; }
.az-k-doc h4:first-of-type { margin-top:var(--az-sp-1); }
.az-k-doc p, .az-k-doc li { font-size:13px; line-height:1.85; color:var(--az-ink-2); }
.az-k-doc ul { padding-inline-start:var(--az-sp-5); margin:var(--az-sp-1) 0; }
.az-k-check { position:relative; display:flex; align-items:flex-start; gap:var(--az-sp-3); min-height:44px; margin-top:var(--az-sp-3); font-size:13.5px; line-height:1.7; padding-inline-start:var(--az-sp-7); padding-top:var(--az-sp-2); }
.az-k-check input { position:absolute; top:0; inset-inline-start:0; width:44px; height:44px; margin:0; opacity:0; cursor:pointer; z-index:2; }
.az-k-check .az-k-check-box { position:absolute; top:12px; inset-inline-start:8px; width:20px; height:20px; border-radius:6px; border:1.5px solid var(--az-line-2); background:var(--az-surface); display:grid; place-items:center; }
.az-k-check input:checked + .az-k-check-box { background:var(--az-ink); border-color:var(--az-ink); }
.az-k-check input:checked + .az-k-check-box::after { content:''; width:9px; height:5px; border:2px solid var(--az-bg); border-top:0; border-right:0; transform:rotate(-45deg) translate(1px,-1px); }
.az-k-check input:focus-visible + .az-k-check-box { outline:2px solid var(--az-accent); outline-offset:2px; }
.az-k-check a { color:var(--az-accent-text); font-weight:700; position:relative; z-index:3; }
.az-k-check a::after { content:''; position:absolute; inset:-14px 0; }
/* لوحة العميل */
.az-k-summary { margin-top:var(--az-sp-3); font-size:14px; color:var(--az-ink-2); line-height:1.8; max-width:760px; }
.az-k-journey { margin-top:var(--az-sp-4); padding:var(--az-sp-3) var(--az-sp-4) var(--az-sp-2); border-radius:16px; background:var(--az-surface); border:1px solid var(--az-line); }
.az-k-journey .az-k-mtl { margin-top:var(--az-sp-2); }
.az-k-journey .az-k-mtl span.done::after { background:var(--az-ok-text); border-color:var(--az-ok-text); }
.az-k-journey .az-k-mtl span small { display:block; font-size:12px; color:var(--az-accent-text); font-weight:700; }
.az-k-dlv { background:var(--az-surface); border:1px solid var(--az-line); border-radius:16px; padding:var(--az-sp-3) var(--az-sp-4); box-shadow:var(--az-shadow); }
.az-k-dlv-top { display:flex; align-items:flex-start; gap:var(--az-sp-3); }
.az-k-dlv-top .az-k-lead { margin-top:2px; }
.az-k-dlv h3 { font-size:15px; font-weight:700; line-height:1.4; }
.az-k-tags { display:flex; align-items:center; gap:var(--az-sp-2) var(--az-sp-3); flex-wrap:wrap; margin-top:var(--az-sp-2); font-size:12.5px; color:var(--az-ink-3); }
.az-k-new { font-size:12px; font-weight:700; color:var(--az-accent-text); background:var(--az-accent-soft); border-radius:99px; padding:0 var(--az-sp-2); line-height:20px; }
.az-k-state { font-size:12.5px; font-weight:700; color:var(--az-warn); }
.az-k-state--ok { color:var(--az-ok-text); }
.az-k-pnote { font-size:12.5px; color:var(--az-ink-2); margin-top:var(--az-sp-2); padding-inline-start:var(--az-sp-3); border-inline-start:2px solid var(--az-ok-soft); line-height:1.7; }
.az-k-dlv-acts { display:flex; gap:var(--az-sp-2); align-items:center; flex-wrap:wrap; margin-top:var(--az-sp-3); padding-top:var(--az-sp-3); border-top:1px solid var(--az-line); }
.az-k-review { margin-top:var(--az-sp-3); }
.az-k-review .az-k-textarea { min-height:56px; margin-top:var(--az-sp-2); }
.az-k-thread { margin-top:var(--az-sp-1); }
.az-k-message { display:grid; grid-template-columns:28px minmax(0,1fr); gap:var(--az-sp-2); padding:var(--az-sp-2) 0; border-top:1px solid var(--az-line); font-size:13.5px; line-height:1.7; }
.az-k-message:first-child { border-top:0; }
.az-k-message b { font-size:12.5px; } .az-k-message time { font-size:12px; color:var(--az-ink-3); margin-inline-start:var(--az-sp-2); }
.az-k-reply { display:flex; gap:var(--az-sp-2); align-items:flex-start; margin-top:var(--az-sp-2); }
.az-k-upload { display:flex; align-items:center; gap:var(--az-sp-3); flex-wrap:wrap; padding:var(--az-sp-3); border:1.5px dashed var(--az-line-2); border-radius:12px; background:var(--az-bg); }
.az-k-upload small { font-size:12px; color:var(--az-ink-3); line-height:1.6; flex:1; min-width:200px; }
.az-k-keys { margin:var(--az-sp-1) 0 0; padding-inline-start:var(--az-sp-5); font-size:13px; color:var(--az-ink-2); line-height:1.8; }
/* المخرج المرسل */
.az-k-output-bar { display:flex; align-items:center; gap:var(--az-sp-3); margin-top:var(--az-sp-3); padding:var(--az-sp-2) var(--az-sp-4); border-radius:12px; background:var(--az-ok-soft); color:var(--az-ok-text); font-size:13px; line-height:1.6; }
.az-k-output-bar svg { width:16px; height:16px; flex:none; }
.az-k-output-bar bdi { font-family:system-ui,sans-serif; font-size:12px; }
.az-k-error-code { font-family:var(--font-ar-display),var(--font-ar-ui),serif; font-size:var(--h4); line-height:1; color:var(--az-accent-text); }
/* الإنجليزية تترجم الكروم فقط: المحتوى العربي يبقى عربياً باتجاهه */
html[data-lang="en"] .az-k-summary { max-width:none; }
html[data-lang="en"] .az-k-content { direction:rtl; unicode-bidi:isolate; font-family:var(--font-ar-ui),sans-serif; }
@media (max-width:760px) {
  .az-k-auth { grid-template-columns:1fr; margin-top:var(--az-sp-4); }
  .az-k-auth-brand { border-radius:18px 18px 0 0 !important; min-height:0; padding:var(--az-sp-6) var(--az-sp-5); gap:var(--az-sp-5); }
  .az-k-auth-brand h2 { font-size:var(--h4); }
  .az-k-auth .az-k-access-card { border-radius:0 0 18px 18px !important; }
  .az-k-cover { margin-top:var(--az-sp-4); padding:0; }
  .az-k-access-card { padding:var(--az-sp-5) var(--az-sp-4) var(--az-sp-4); }
  .az-k-reply { flex-direction:column; align-items:stretch; }
  .az-k-dlv-acts .az-k-btn { flex:1 1 auto; }
}

/* القشرة الخارجية: سطر تنقل واحد؛ الحماية في الرأس للمساحة كلها وفي البطاقة لمستواها. */
.az-k-client { background:var(--az-bg); color:var(--az-ink); font-family:var(--font-ar-ui),sans-serif; }
.az-k-client a { text-decoration:none; }
.az-k-client button, .az-k-client input, .az-k-client textarea { font-family:inherit; }
.az-k-client button { cursor:pointer; }
.az-k-client .az-k-btn, .az-k-client .az-k-input, .az-k-client .az-k-link { min-height:44px; }
.az-k-xtop { position:sticky; top:0; z-index:40; display:flex; align-items:center; gap:var(--az-sp-4); min-height:60px; padding:var(--az-sp-2) var(--az-sp-6); background:var(--az-bg); border-bottom:1px solid var(--az-line); }
.az-k-xtop .az-k-brand { align-self:center; min-height:44px; align-items:center; }
.az-k-xname { font-size:14px; font-weight:700; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.az-k-lang { display:inline-flex; padding:2px; border-radius:99px; background:var(--az-surface-2); flex:none; }
.az-k-lang a { display:inline-grid; place-items:center; min-width:44px; min-height:44px; padding:0 var(--az-sp-2); border-radius:99px; font-size:12.5px; color:var(--az-ink-2); }
.az-k-lang a[aria-current="true"] { background:var(--az-surface); color:var(--az-ink); font-weight:700; box-shadow:var(--az-shadow); }
.az-k-xfoot { max-width:var(--az-page); margin:var(--az-sp-6) auto 0; padding:var(--az-sp-4) var(--az-sp-6) var(--az-sp-7); font-size:12px; color:var(--az-ink-3); display:flex; align-items:center; gap:var(--az-sp-3) var(--az-sp-5); flex-wrap:wrap; border-top:1px solid var(--az-line); }
.az-k-content { direction:rtl; unicode-bidi:isolate; font-family:var(--font-ar-ui),sans-serif; text-align:start; overflow-wrap:anywhere; }
.az-k-client[dir="ltr"], html[lang="en"] .az-k-client { direction:ltr; font-family:system-ui,var(--font-ar-ui),sans-serif; }
.az-k-client-logo { max-width:88px; max-height:40px; object-fit:contain; }
.az-k-error { margin:var(--az-sp-3) 0; padding:var(--az-sp-2); color:var(--az-bad); background:var(--az-bad-soft); border-radius:10px; }
.az-k-password { display:block; }
.az-k-password > .az-k-btn { border:0; background:none; }
.az-k-access-card .az-k-field { display:flex; flex-direction:column; gap:var(--az-sp-2); margin-top:var(--az-sp-3); }
.az-k-access-card .az-k-fold { margin-top:var(--az-sp-4); }
.az-k-check { cursor:pointer; }
.az-k-check input { min-width:44px; min-height:44px; }
.az-k-doc h3 { font-size:var(--small); margin-top:var(--az-sp-4); }
.az-k-doc p, .az-k-legal p { font-size:var(--small); line-height:1.85; margin:var(--az-sp-2) 0; }
.az-k-legal { margin-top:var(--az-section-gap); }
.az-k-legal-body { padding:0 var(--az-sp-2) var(--az-sp-4); }
.az-k-client details.az-k-fold > summary { cursor:pointer; font-size:14px; font-weight:700; }
.az-k-client details.az-k-fold > summary::before { content:'＋'; flex:none; }
.az-k-client details.az-k-fold[open] > summary::before { content:'−'; }
.az-k-client .az-k-v { overflow-wrap:anywhere; }
.az-k-client .az-k-col { min-width:0; }
.az-k-section-head { display:flex; gap:var(--az-sp-3); align-items:center; }
.az-k-section-head h2, .az-k-client .az-k-sub { font-size:var(--small); font-weight:700; }
/* تمرير أفقي ظاهر: تلاشٍ عند الحافتين يقول «يتّصل بالمزيد» — لا قصّاً صامتاً. */
.az-k-journey .az-k-mtl { overflow-x:auto; padding:var(--az-sp-2) 0 var(--az-sp-3); scrollbar-width:thin; mask-image:linear-gradient(to right, transparent, black 16px, black calc(100% - 16px), transparent); -webkit-mask-image:linear-gradient(to right, transparent, black 16px, black calc(100% - 16px), transparent); }
.az-k-journey .az-k-mtl > span { min-width:85px; }
.az-k-journey .az-k-mtl > span.done::after { background:var(--az-ok-text); border-color:var(--az-ok-text); }
.az-k-journey .az-k-mtl small { display:block; font-size:12px; color:var(--az-accent-text); }
.az-k-dlv-top .az-k-grow { min-width:0; }
.az-k-dlv .az-k-fold { margin-top:var(--az-sp-3); }
.az-k-review-options { border:0; padding:0; display:flex; flex-wrap:wrap; gap:var(--az-sp-2); }
.az-k-review-options legend { font-size:12.5px; margin-bottom:var(--az-sp-2); color:var(--az-ink-2); }
/* مراجعة واحدة بثلاثة خيارات أصلية؛ اختيار radio لا يرسل النموذج. */
.az-k-choice { position:relative; display:inline-flex; min-height:44px; align-items:center; cursor:pointer; }
.az-k-choice input { position:absolute; width:100%; height:100%; opacity:0; margin:0; cursor:pointer; }
.az-k-choice span { padding:var(--az-sp-2) var(--az-sp-3); border-radius:99px; border:1px solid var(--az-line); background:var(--az-surface-2); font-size:12.5px; }
.az-k-choice input:checked + span { background:var(--az-accent-soft); color:var(--az-accent-text); border-color:var(--az-accent); }
.az-k-choice input:focus-visible + span { outline:2px solid var(--az-accent); outline-offset:2px; }
.az-k-reply > .az-k-field { flex:1; }
.az-k-message { display:block; }
.az-k-message p { white-space:pre-wrap; }
.az-k-message time { margin-inline-start:var(--az-sp-2); }
/* درج بريد أصلي: showModal يحبس التركيز وEscape يعيد زر الفتح؛ لا قناع يدوي. */
.az-k-mail-drawer { position:fixed; inset:0 auto 0 0; margin:0; width:min(440px,100vw); max-width:100vw; height:100dvh; max-height:100dvh; padding:0; border:0; background:var(--az-surface); color:var(--az-ink); box-shadow:var(--az-shadow-lift); }
.az-k-mail-drawer::backdrop { background:color-mix(in srgb,var(--ink) 28%,transparent); }
.az-k-mail-drawer .az-k-drawer-h { justify-content:space-between; }
.az-k-mail-drawer form { display:flex; flex-direction:column; height:calc(100% - 65px); }
.az-k-mail-drawer .az-k-drawer-b { flex:1; }
@media(max-width:760px) {
 .az-k-xtop { padding:var(--az-sp-1) var(--az-sp-3); gap:var(--az-sp-2); }
 .az-k-xtop .az-k-protect, .az-k-xtop .az-k-xname { display:none; }
 .az-k-client .az-k-page { padding-inline:var(--az-sp-3); }
 .az-k-client .az-k-head { overflow-x:auto; flex-wrap:nowrap; }
 .az-k-client .az-k-head h1 { flex:none; }
 .az-k-client .az-k-tabs { flex:none; }
 .az-k-cover { padding:0 var(--az-sp-3); }
 .az-k-client .az-k-board { grid-template-columns:minmax(0,1fr); }
 .az-k-client .az-k-protect { max-width:100%; white-space:normal; flex-wrap:wrap; }
}
/* محتوى السياق والمدخلات: قائمة نثرية مطوية، والرفع له هدف لمس كامل. */
.az-k-brief-item { padding:var(--az-sp-2) 0; border-bottom:1px solid var(--az-line); font-size:13px; line-height:1.8; }
.az-k-brief-item > b { color:var(--az-ink-3); font-size:12px; }
.az-k-brief-item p { white-space:pre-line; }
.az-k-intake { display:flex; flex-direction:column; gap:var(--az-sp-4); min-width:0; }
.az-k-intake .az-k-mtl { overflow-x:auto; }
.az-k-intake .az-k-mtl > span { min-width:85px; }
.az-k-intake .az-k-dlv-acts { flex-direction:column; align-items:stretch; }
.az-k-upload-zone { padding-block:var(--az-sp-3); border-top:1px solid var(--az-line); }
.az-k-upload-zone h4 { font-size:var(--small); }
.az-k-upload { position:relative; min-height:44px; margin-top:var(--az-sp-2); font-size:13px; cursor:pointer; }
.az-k-file-input { position:absolute; inset:0; opacity:0; width:100%; height:100%; cursor:pointer; }
.az-k-upload:focus-within { outline:2px solid var(--az-accent); outline-offset:2px; }

/* شريط المخرج المرسل من الطبقة ج؛ لا يغيّر تخطيط المحتوى أو آلية فوتر stamp.ts. */
.az-k-output-bar { margin:0; position:sticky; top:0; z-index:100; border-radius:0; flex-wrap:wrap; font-family:var(--font-ar-ui),sans-serif; }
.az-k-output-bar .az-k-link { margin-inline-start:auto; }

/* قد يُخدم شريط المخرج منفرداً دون portal.css؛ نفس أصل الخط المعتمد بلا إعادة ضبط للمحتوى. */
@font-face{font-family:'thmanyah sans';src:url('/fonts/thmanyahsans-Regular.woff2') format('woff2');font-weight:400;font-display:block}
@font-face{font-family:'thmanyah sans';src:url('/fonts/thmanyahsans-Bold.woff2') format('woff2');font-weight:700;font-display:block}
/* إعادة ضبط أزرار البدائيات — مطابقة لسطري #516 حرفياً حتى لا يتعارض الدمج. */
:where(.az-k-page,.az-k-drawer,.az-k-appear) :where(button){font:inherit;color:inherit;background:none;border:0;cursor:pointer}
:where(button[class^="az-k-"],button[class*=" az-k-"],.az-k-seg button,.az-k-opts button){font:inherit;color:inherit;background:none;border:0;cursor:pointer}
/* كومة محتوى بلا صندوق، والجداول قابلة للتمرير داخل حدودها فقط. */
.az-k-stack { display:flex; flex-direction:column; gap:var(--space-3); min-width:0; padding-block:var(--space-2); }
.az-k-stack > *, .az-k-page section, .az-k-page aside { min-width:0; }
.az-k-table-scroll { overflow-x:auto; max-width:100%; }
.az-k-table-scroll table { margin:0; }
.az-k-page .az-k-sub { font-size:var(--small); }
/* سطر شرح مباشر تحت الرأس: حجم صغير ثابت لا يرثه من قواعد النصوص القديمة. */
.az-k-page > p.az-k-dim { font-size:var(--small); line-height:1.7; margin-block:var(--space-2); }
.az-k-page .az-k-actions { flex-wrap:wrap; }
.az-k-page .az-k-input[type=checkbox] { width:auto; min-height:auto; }
.az-k-page .az-k-head { overflow-x:auto; }
.az-k-page [hidden] { display:none!important; }
.az-k-page .az-k-form .az-k-form { grid-column:1/-1; }
/* الشعار دون صحن أو قص؛ يتسع في رأس الكيان وحده. */
.az-k-org-logo { width:var(--space-5); height:var(--space-5); object-fit:contain; flex:none; }
.az-k-ehead .az-k-org-logo { width:calc(var(--space-5) * 2); height:calc(var(--space-5) * 2); }
/* أعمدة العميل والانتظار تتبع معنى الصف، مع حماية الأفعال من رابط الصف الممتد. */
.az-k-client-list { --az-cols:minmax(0,2fr) minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr) auto; }
.az-k-wait-list { --az-cols:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr); }
.az-k-page .az-k-c--act, .az-k-page .az-k-c .az-k-chip { position:relative; z-index:1; }
/* رقاقات مشاريع العميل: تلتف بدل أن تتراكب؛ القصيرة لا تنضغط، والاسم الطويل وحده يقتطع بنقاط،
   ولا قصّ للخلية فلا يختفي رابط قابل للتركيز. */
.az-k-c--chips { display:flex; flex-wrap:wrap; align-items:center; gap:var(--space-1) var(--space-2); white-space:normal; overflow:visible; }
.az-k-c--chips .az-k-chip { display:inline-block; min-inline-size:min(max-content,100%); max-inline-size:100%; box-sizing:border-box; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.az-k-c--chips .az-k-chip:focus-visible { outline-offset:-2px; }
.az-k-c--chips .az-k-chip::before { display:inline-block; vertical-align:middle; margin-inline-end:var(--az-sp-1); }
.az-k-c--chips .az-k-chip--long { min-inline-size:0; overflow:hidden; text-overflow:ellipsis; }
.az-k-list[data-view="cards"] .az-k-c--chips[data-l]::before { flex:none; }
@media(max-width:600px) { .az-k-c--chips .az-k-chip--long { padding-block:var(--az-sp-3); line-height:22px; } }
.az-k-anchor, .az-k-plan-item { scroll-margin-top:var(--space-7); }
.az-k-anchor:target, .az-k-row:target { background:var(--p50); outline:1px solid var(--p200); }
/* صاحب الخطوة اسم مستقل؛ az-k-who مستخدم مسبقاً لبطاقة الحساب. */
.az-k-wait-owner { font-size:var(--micro); font-weight:700; border-radius:var(--radius-pill); padding:0 var(--space-2); white-space:nowrap; }
.az-k-wait-owner--azr { background:var(--p50); color:var(--p700); }
.az-k-wait-owner--cl { background:var(--positive-bg); color:var(--az-ok-text); }
/* السرّية والنشر حقائق مستقلة، اللون مرافق للنص لا بديل عنه. */
.az-k-lvl, .az-k-st { font-size:var(--label); color:var(--mut); white-space:nowrap; }
.az-k-lvl::before { content:'■'; margin-inline-end:var(--space-1); color:var(--mut); }
.az-k-lvl[data-level=restricted]::before { color:var(--p700); }
.az-k-lvl[data-level=confidential]::before { color:var(--uncertain-ink); }
.az-k-lvl[data-level=secret]::before { color:var(--alert); }
.az-k-st--pub { color:var(--az-ok-text); font-weight:700; }
/* الخطة تقرأ بنداً ثم تسليماته، وسجل العميل يبقى منفصلاً عن التعليقات الداخلية. */
.az-k-plan-item, .az-k-thread { padding-block:var(--space-3); border-bottom:1px solid var(--rule); }
.az-k-message { padding:var(--space-2) var(--space-3); border-inline-start:1px solid var(--rule); }
.az-k-message p { white-space:pre-wrap; overflow-wrap:anywhere; margin:var(--space-1) 0; }
.az-k-message time { font-size:var(--micro); color:var(--mut); margin-inline-start:var(--space-2); }
.az-k-reply { display:flex; align-items:end; gap:var(--space-2); margin-block:var(--space-2); }
.az-k-reply .az-k-field { flex:1; }
/* إطار المعاينة يغيّر عرض المحتوى وحده، ومبدّله يختفي على الجوال. */
.az-k-frame { border:1px solid var(--rule); border-radius:var(--radius-md); overflow:hidden; margin-top:var(--space-3); }
.az-k-frame-bar { display:flex; justify-content:space-between; gap:var(--space-2); padding:var(--space-2) var(--space-3); background:var(--ink); color:var(--cream); font-size:var(--label); white-space:nowrap; overflow-x:auto; }
.az-k-preview-stage { display:flex; justify-content:center; padding:var(--space-3); background:var(--paper-2); }
.az-k-preview-stage iframe { border:0; width:100%; height:80vh; background:var(--paper); }
.az-k-preview-stage[data-device=phone] iframe { width:calc(var(--space-8) * 3 + var(--space-6)); max-width:100%; }
/* إغلاق المشروع يخفي الكتابة وحدها؛ الحارس الخلفي يبقى صاحب الصلاحية. */
.project-closed .az-k-page form:not(.project-reopen), .project-closed .closed-write { display:none; }
@media(max-width:760px) {
  .az-k-preview-devices { display:none; }
  .az-k-preview-stage { padding:0; }
  .az-k-preview-stage[data-device=phone] iframe { width:100%; }
  .az-k-page .az-k-head { gap:var(--space-1); }
  .az-k-page .az-k-head .az-k-head-acts .az-k-btn { padding-inline:var(--space-2); }
  .az-k-page .az-k-head h1 { max-width:55vw; overflow:hidden; text-overflow:ellipsis; }
  .az-k-page .az-k-head .az-k-tabs { flex:1 1 auto; min-width:0; overflow-x:auto; }
  .az-k-page .az-k-head .az-k-head-acts { flex:none; }
  /* رأسٌ بفعلٍ وتبويبين يضيق عن سطرٍ واحد على ٣٦٠px؛ العنوان يعلو سطره الخاص
     (لا يزاحم الفعل)، والتبويبات وفعلها في السطر الثاني — كلاهما لا يلتف هو نفسه. */
  .az-k-page .az-k-head { flex-wrap:wrap; row-gap:var(--space-2); }
  .az-k-page .az-k-head h1 { flex-basis:100%; max-width:none; white-space:normal; }
  .az-k-page .az-k-head .az-k-tabs { flex:1 1 auto; min-width:0; overflow-x:auto; }
  .az-k-page .az-k-head .az-k-head-acts { flex:none; margin-inline-start:auto; }
  .az-k-client-list .az-k-row, .az-k-wait-list .az-k-row { grid-template-columns:minmax(0,1fr); }
  .az-k-page .az-k-li { grid-template-columns:minmax(0,1fr); }
  .az-k-page .az-k-btn, .az-k-page .az-k-seg button, .az-k-page .az-k-fb { min-height:44px; min-width:44px; }
  .az-k-page .az-k-ehead-acts { grid-column:1/-1; }
  .az-k-reply { align-items:stretch; flex-direction:column; }
}
/* الطيّات الأصلية للنماذج مستقلة عن مشغّل الطيّة المشتركة لتبقى لوحة المفاتيح طبيعية. */
.az-k-disclosure { border-top:1px solid var(--rule); padding-block:var(--space-2); }
.az-k-disclosure > summary { cursor:pointer; }
.az-k-field:focus-within .az-k-sr + .az-k-actions { outline:1px solid var(--p700); }
.az-k-page .az-k-fold { margin-top:var(--space-2); }
/* ═══ مكوّنات الوحدة ١٢ (المخرجات والمشاركة) — اقتراحات x- في w1-outputs.html.notes.md أُضيفت للعُدّة بالاسم ═══ */
/* az-k-st: حالة المخرج الثلاثية (رُفع · أُرسل · فُتح) بنقطة ولون */
.az-k-st { display:inline-flex; align-items:center; gap:var(--az-sp-2); font-size:12.5px; white-space:nowrap; min-width:0; }
.az-k-st::before { content:''; width:7px; height:7px; border-radius:99px; background:var(--az-line-2); flex:none; }
.az-k-st[data-s="sent"]::before { background:var(--az-accent); }
.az-k-st[data-s="opened"] { color:var(--az-ok-text); font-weight:700; }
.az-k-st[data-s="opened"]::before { background:var(--az-ok); }
.az-k-st small { font-weight:500; color:var(--az-ink-3); font-size:12px; overflow:hidden; text-overflow:ellipsis; }
/* az-k-link: عنوان رابط LTR مقطوع يُنسخ ولا يُنقر */
.az-k-link { display:block; min-width:0; padding:var(--az-sp-2) var(--az-sp-3); border-radius:10px; border:1px solid var(--az-line); background:var(--az-bg); font-family:var(--font-en),system-ui,sans-serif; font-size:12.5px; color:var(--az-ink-2); direction:ltr; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; user-select:all; }
/* az-k-seal: معاينة شريط الختم كما يُحقن وقت الخدمة (stamp.ts:injectShareBanner) */
.az-k-seal { margin-top:var(--az-sp-2); border-radius:10px; background:var(--az-nav); color:var(--az-nav-ink); font-size:12px; font-weight:700; padding:var(--az-sp-2) var(--az-sp-3); text-align:center; line-height:1.6; }
.az-k-seal i { font-style:normal; color:var(--p300); }
.az-k-seal bdi { font-family:var(--font-en),system-ui,sans-serif; font-weight:500; }
.az-k-acts { display:flex; gap:var(--az-sp-2); flex-wrap:wrap; margin-top:var(--az-sp-2); }
.az-k-acts form { display:contents; }
.az-k-srcline { font-size:12.5px; color:var(--az-ink-3); margin-top:var(--az-sp-2); line-height:1.7; }
/* المبدّل المقطعي بروابط (تجميعٌ يُحمل في العنوان) كما بأزرار */
.az-k-seg a { position:relative; display:inline-flex; align-items:center; font-size:12.5px; line-height:28px; padding:0 var(--az-sp-3); border-radius:99px; color:var(--az-ink-2); text-decoration:none; }
.az-k-seg a[aria-current="true"] { background:var(--az-surface); color:var(--az-ink); font-weight:700; box-shadow:var(--az-shadow); }
.az-k-fbar a.az-k-fb { text-decoration:none; }
@media (max-width:760px) { .az-k-seg a { line-height:44px; padding-inline:var(--az-sp-3); } }

/* ═══ «البطاقة الممتلئة ٢» — بطاقة الجهة مركّبةً على بدائيات الوحدة ٠ ═══════════════════════
   المرجع: portal-redesign-audit/docs/redesign/audit/v2/bd-card3.html (اللوح .fboard :1058، وما تحت
   ٩٠٠ :1150) وbd-card-display-brief.md §٤. من الوحدة ٠ كما هي: اللوح az-k-board وعموداه az-k-col
   (ثلثان/ثلث، وعمود واحد تحت ٩٠٠)، والبطاقة az-k-card برأسها az-k-card-h، والعلامة az-k-conf،
   والبلاطة az-k-tile، والشريحة az-k-src، والاقتباس az-k-quote، والطيّ az-k-prose/az-k-more،
   والخصائص az-k-props، والقائمة az-k-list، والطيّات az-k-fold، ورأس الكيان az-k-ehead.
   وما هنا قواعد هذه الشاشة وحدها لما لا مقابل له في العُدّة (المسار المرسوم، شريط الحالة، سطر
   رحلة المخرج، أدوات الترتيب والرفّ، الحجمان) — بمتغيّرات --az-* و--space-* وبلا بكسل خام. */

/* الوجه: الرأس · المسار المرسوم · شريط الحالة · الخلاصة والحركة التالية · القطاع */
.az-face + .az-face { margin-top: var(--az-section-gap); }
.az-face-titles { min-width: 0; }
.az-trace { margin-top: var(--az-section-gap); overflow-x: auto; scrollbar-width: none; }
.az-trace::-webkit-scrollbar { display: none; }
.az-trace > ol { display: grid; grid-template-columns: repeat(10, minmax(calc(var(--space-6) + var(--space-5)), 1fr)); margin: 0; padding: 0; list-style: none; }
.az-trace-s { position: relative; display: flex; flex-direction: column; align-items: center; gap: var(--space-1); padding-top: var(--space-4); text-align: center; color: var(--az-ink-3); font-size: var(--micro); line-height: 1.35; }
.az-trace-s::before { content: ""; position: absolute; top: calc(var(--space-2) + var(--space-1)); inset-inline: 0; border-top: calc(var(--stroke-hair) * 2) solid var(--az-line-2); }
.az-trace-s:first-child::before { inset-inline-start: 50%; }
.az-trace-s:last-child::before { inset-inline-end: 50%; }
.az-trace-s[data-s="done"]::before, .az-trace-s[data-s="on"]::before { border-color: var(--az-accent); }
.az-trace-s > i { position: absolute; top: var(--space-2); inline-size: var(--space-3); block-size: var(--space-3); border-radius: var(--radius-pill); background: var(--az-bg); box-shadow: inset 0 0 0 calc(var(--stroke-hair) * 2) var(--az-line-2); }
.az-trace-s[data-s="done"] > i { background: var(--az-accent); box-shadow: none; }
.az-trace-s[data-s="on"] > i { top: var(--space-1); inline-size: var(--space-4); block-size: var(--space-4); background: var(--az-accent-text); box-shadow: 0 0 0 var(--space-1) var(--az-accent-soft); }
.az-trace-s[data-s="on"] { padding-top: calc(var(--space-4) + var(--space-2) ); color: var(--az-ink); font-weight: 700; }
.az-trace-s[data-s="done"] { color: var(--az-ink-2); }
.az-trace-s[data-s="skip"] { opacity: .6; }
.az-trace-s > small { color: var(--az-ink-2); font-size: var(--micro); font-weight: 400; }
/* شريط الحالة (bd-card3 .strip): أربع خانات في سطر، والرابعة «ينتظر حكمك» أو «يحتاج انتباهك».
   القيمة az-k-prose: تُطوى بعد ثلاثة أسطر وتحتها «المزيد» — لا قصّ. */
.az-strip { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: var(--az-section-gap); border: var(--stroke-hair) solid var(--az-line); border-radius: var(--radius-md); background: var(--az-surface); overflow: hidden; }
.az-strip-c { display: flex; flex-direction: column; align-items: flex-start; gap: calc(var(--space-1) / 2); min-width: 0; padding: var(--space-3); border-inline-start: var(--stroke-hair) solid var(--az-line); color: var(--az-ink); font-size: var(--label); line-height: 1.45; text-decoration: none; }
.az-strip-c:first-child { border-inline-start: 0; }
.az-strip-c > b { color: var(--az-ink-3); font-size: var(--micro); font-weight: 500; }
.az-strip-c > .az-k-prose { max-width: 100%; }
.az-strip-c a { color: var(--az-accent-text); }
.az-strip-c[data-s="warn"] { justify-content: center; background: var(--az-warn-soft); color: var(--az-warn); }
.az-strip-c[data-s="warn"] > b { display: flex; align-items: center; gap: var(--space-2); color: var(--az-warn); font-size: var(--label); font-weight: 700; }
.az-strip-c[data-s="warn"] > b > i { min-inline-size: calc(var(--space-4) + var(--space-1) / 2); padding-inline: calc(var(--space-1) * 1.5); border-radius: var(--radius-pill); background: var(--az-warn); color: var(--az-bg); font-size: var(--micro); font-style: normal; line-height: calc(var(--space-4) + var(--space-1) / 2); text-align: center; }
.az-strip-c[data-s="warn"] > span { font-size: var(--micro); }
.az-strip-c[data-s="warn"]:hover { box-shadow: inset 0 0 0 var(--stroke-hair) var(--az-warn); }
.az-strip--study { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.az-strip--study [data-study-summary-item="questions"] { grid-column: span 2; }
.az-strip--study [data-study-summary-item="questions"] span { overflow-wrap: anywhere; }
.az-strip--study .az-strip-detail { display: block; }
.az-strip-detail > summary { display: flex; flex-direction: column; gap: calc(var(--space-1) / 2); cursor: pointer; list-style: none; overflow-wrap: anywhere; }
.az-strip-detail > summary::-webkit-details-marker { display: none; }
.az-strip-detail > summary > b { color: var(--az-ink-3); font-size: var(--micro); font-weight: 500; }
.az-strip-open { color: var(--az-accent-text); font-size: var(--micro); font-weight: 700; }
.az-strip-detail[open] { grid-column: 1 / -1; }
.az-strip-full { margin-top: var(--space-3); padding-top: var(--space-3); border-top: var(--stroke-hair) solid var(--az-line); overflow-wrap: anywhere; white-space: normal; line-height: 1.7; }
/* الخلاصة = .callout في bd-card2، والحركة = .nextl، والقطاع سطر هادئ.
   المقاسات من سلّم التوكنز: جسم الاقتباس --body (١٨) كالنموذج، وعنوانه --small
   لأن ١٦ بلا رمز في السلّم. الترتيب لا يتغيّر هنا. */
.az-face .az-k-quote.az-face-why {
  margin-top: var(--az-section-gap);
  padding: var(--space-3) var(--space-4) var(--space-3) var(--space-3);
  border-inline-start: calc(var(--stroke-hair) * 3) solid var(--az-accent);
  background: var(--az-surface);
  border-radius: var(--radius-sm) var(--radius-md) var(--radius-md) var(--radius-sm);
  font-size: var(--body);
  line-height: 1.75;
  font-weight: 500;
}
.az-face .az-k-quote.az-face-why > .az-k-who2 {
  margin: 0 0 var(--space-1);
  font-family: var(--font-ar-display), var(--font-ar-ui), serif;
  font-size: var(--small);
  font-weight: 700;
  color: var(--az-accent-text);
}
.az-face .az-k-quote.az-face-why em { font-style: normal; font-weight: 700; color: var(--az-accent-text); }
.az-k-card--next > h3 { margin: 0 0 var(--space-1); font-size: var(--label); }
.az-k-card--next > [data-next] { font-size: var(--small); font-weight: 700; line-height: 1.5; }
.az-face[data-section="next"] > .az-nextl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-2) var(--space-3);
  margin-top: var(--space-3);
  padding: var(--space-3) var(--space-4);
  border-radius: var(--radius-md);
}
.az-face[data-section="next"] > .az-nextl > h3 { margin: 0; white-space: nowrap; }
.az-face[data-section="next"] > .az-nextl > [data-next] { flex: 1 1 12rem; min-width: min(100%, 12rem); margin: 0; }
.az-face[data-section="next"] > .az-nextl > .az-card-decided {
  flex: 1 1 100%;
  order: 2;
  margin: 0;
  color: var(--az-ink-2);
  font-size: var(--label);
  line-height: 1.5;
}
.az-face[data-section="next"] > .az-nextl > .az-next-acts { flex: 1 1 100%; order: 3; margin-top: 0; }
.oc .az-face[data-section="next"] .live-note textarea.az-k-input {
  height: calc(var(--space-6) + var(--space-4));
  min-height: 44px;
}
.az-next-acts { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2); margin-top: var(--space-2); }
.az-next-acts .az-k-input, .az-next-acts .az-k-select { flex: 1 1 calc(var(--space-9) + var(--space-6)); width: auto; min-width: 0; }
.az-sectorline { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-1) var(--space-3); margin: var(--az-section-gap) 0 0; padding: var(--space-2) var(--space-3); border-radius: var(--radius-md); background: var(--az-surface-2); color: var(--az-ink-2); font-size: var(--label); }
.az-sectorline > span:first-child, .az-sectorline > small { color: var(--az-ink-3); font-size: var(--micro); }

/* اللوح: زرّ الترتيب الهادئ، وأدوات الترتيب والرفّ في وضعه وحده، والحجمان */
.az-deck-top { display: flex; justify-content: flex-end; margin-top: var(--az-section-gap); }
.az-deck-top > [aria-pressed="true"] { background: var(--az-accent-soft); color: var(--az-accent-text); }
.oc > .az-k-board { margin-top: var(--space-2); }
[data-board] > .az-k-col { min-height: var(--space-6); border-radius: var(--radius-lg); }
.az-deck-lbl { display: none; padding-inline: var(--space-1); color: var(--az-accent-text); font-size: var(--micro); font-weight: 700; }
.is-arranging .az-deck-lbl { display: block; }
.is-arranging [data-board] > .az-k-col { outline: calc(var(--stroke-hair) * 1.5) dashed var(--az-accent-line); outline-offset: var(--space-2); }
[data-board] > .az-k-col.is-target { background: var(--az-accent-soft); }
/* منطقة «أسفل العمودين»: ما يطول بعرض كامل بدل أن يمدّ أحد العمودين؛ تغيب إن خلت. */
[data-board] > .az-k-col[data-col="wide"] { grid-column: 1 / -1; }
.oc:not(.is-arranging) [data-board] > .az-k-col[data-col="wide"]:not(:has(.az-bcard:not([hidden]))) { display: none; }
.az-drop { block-size: calc(var(--stroke-hair) * 3); margin-block: calc(var(--space-2) * -1); border-radius: var(--radius-pill); background: var(--az-accent); }
.az-bcard[hidden] { display: none; }
.az-bcard:not(.is-x) > .az-bcard-x, .az-bcard.is-x > .az-bcard-b, .az-bcard:not(.is-x) [data-late] { display: none; }
.az-bcard > .az-k-card-h > h2 { margin: 0; font: inherit; }
.az-bcard > .az-k-card-h > small { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.az-bcard > .az-k-card-h > .az-k-conf { margin-inline-start: auto; }
.az-bcard > .az-k-more { margin-top: var(--space-2); }
.az-bcard-tools { display: none; position: absolute; top: var(--space-2); inset-inline-end: var(--space-2); gap: var(--space-1); z-index: 2; }
.is-arranging .az-bcard-tools { display: flex; }
.is-arranging .az-bcard > .az-k-card-h > .az-k-conf { visibility: hidden; }
.is-arranging .az-bcard[draggable="true"] { cursor: grab; }
.az-bcard.is-drag { opacity: .3; }
.az-shelf { display: none; flex-wrap: wrap; align-items: center; gap: var(--space-2); margin-top: var(--space-3); padding: var(--space-3) var(--space-4); border: calc(var(--stroke-hair) * 1.5) dashed var(--az-accent-line); border-radius: var(--radius-md); background: var(--az-accent-soft); color: var(--az-ink-2); font-size: var(--label); }
.is-arranging .az-shelf { display: flex; }
.az-shelf > b { color: var(--az-accent-text); }
.az-shelf > [data-board-reset] { margin-inline-start: auto; }
/* بدائيات العُدّة داخل بطاقة المكوّن: بلا هامشٍ علويّ ولا عرضٍ أقصى، ومفتاح الخاصية بعرض العيّنة */
.az-bcard .az-k-props { margin-top: 0; max-width: none; }
.az-bcard .az-k-prop { grid-template-columns: var(--space-8) minmax(0, 1fr); font-size: var(--label); }
.az-bcard .az-k-list { margin-top: 0; --az-cols: minmax(0, 1fr) auto; }
.az-bcard .az-k-tiles + .az-k-dim { margin: var(--space-1) 0 var(--space-2); font-size: var(--micro); }
.az-bcard .az-k-fold-b { padding-inline-start: var(--space-2); }

/* أزرار العُدّة النصّية تفترض أساس kit.css (زرٌّ بلا إطار ولا خلفية)، وأساسه لم يُنقل عامًّا في
   الوحدة ٠؛ فيُحصر هنا في البطاقة. */
.oc :is(.az-k-fold-h, .az-k-more, .az-k-more-props) { border: 0; background: none; font-family: inherit; cursor: pointer; }
.oc .az-k-fold-h { color: inherit; }
/* سطر المعلومة: عنوان سطرٍ واحد وتفصيلٌ مطويّ، والمصدر شريحة تلتفّ داخل عمودها الضيّق */
.claim-head { display: block; overflow: hidden; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.claim-detail > summary { display: inline-flex; list-style: none; cursor: pointer; }
.claim-detail > summary::-webkit-details-marker { display: none; }
.claim-value > .az-k-quote { margin: 0; }
.claim-src > .az-k-src { flex-wrap: wrap; align-items: center; max-width: 100%; white-space: normal; }
.claim-src > .az-k-src a { color: var(--az-accent-text); }
/* سطر رحلة المخرج (bd-card3 x-trk): رُفع ← أُرسل ← فُتح، والفتح بلون الحرارة */
.az-track { display: grid; margin: 0; padding: 0; list-style: none; }
.az-track > li { display: grid; gap: var(--space-1); padding: var(--space-2) 0; border-bottom: var(--stroke-hair) solid var(--az-line); font-size: var(--label); }
.az-track > li:last-child { border-bottom: 0; }
.az-steps { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-1) var(--space-2); font-size: var(--micro); }
.az-steps > i { color: var(--az-ink-3); font-style: normal; }
.az-steps > [data-s="ok"] { color: var(--az-ok-text); font-weight: 600; }
.az-steps > [data-s="no"] { color: var(--az-ink-3); }
.az-steps > [data-s="hot"] { color: var(--az-accent-text); font-weight: 700; }
/* من في الجهة: صفّ صورٍ متراكبة (bd-card3 .avrow) */
.az-avrow { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2) var(--space-3); margin-top: var(--space-2); }
.az-av { display: inline-flex; margin-inline-end: calc(var(--space-2) * -1); border-radius: var(--radius-sm); box-shadow: 0 0 0 calc(var(--stroke-hair) * 2) var(--az-surface); text-decoration: none; }

@media (max-width: 760px) {
  .az-strip { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .az-strip--study { grid-template-columns: minmax(0, 1fr); }
  .az-strip--study [data-study-summary-item="questions"] { grid-column: auto; }
  .az-strip--study .az-strip-c { border-inline-start: 0; }
  .az-strip-c { border-top: var(--stroke-hair) solid var(--az-line); }
  .az-strip-c:nth-child(-n+2) { border-top: 0; }
  .az-strip-c:nth-child(odd) { border-inline-start: 0; }
  .az-strip-c[data-s="warn"] { min-height: calc(var(--space-6) - var(--space-1)); }
  .az-bcard > .az-k-card-h { flex-wrap: wrap; white-space: normal; }
  .az-bcard > .az-k-card-h > .az-k-conf { flex-basis: 100%; margin-inline-start: 0; }
  .az-bcard .az-k-prop { grid-template-columns: calc(var(--space-7) + var(--space-4) + var(--space-1)) minmax(0, 1fr); }
  .oc .az-k-more, .claim-detail > summary { min-width: calc(var(--space-6) - var(--space-1)); min-height: calc(var(--space-6) - var(--space-1)); align-items: center; }
  .az-av { align-items: center; justify-content: center; min-width: calc(var(--space-6) - var(--space-1)); min-height: calc(var(--space-6) - var(--space-1)); margin-inline-end: 0; }
  .az-face .az-k-quote.az-face-why { margin-top: var(--space-3); padding: var(--space-3); }
  .az-face[data-section="next"] > .az-nextl > [data-next] { flex-basis: 100%; min-width: 0; }
  .oc .az-face[data-section="next"] .live-note .az-k-btn--solid { flex: 1 1 100%; min-height: 44px; }
}

/* ═══ ملف التعارف على بطاقة الشخص (المرحلة أ، ٥ أكتوبر ٢٠٢٦) ═══
   az-pf-ring  حلقة الاكتمال حول صورة الشخص (--p نسبة مئوية).
   az-pf-chips شريط سطر واحد يلتف: الجوال والبريد والروابط، مع نقطة الحالة (مؤكد/مقترح).
   az-pf-missing شريط «ينقص ليكتمل» سطرًا واحدًا، وكل نقص رابط إلى موضع إكماله.
   az-pf-row  صف طريقة تواصل أو رابط داخل az-k-card، والأفعال في az-pf-acts. */
.az-pf-ring { --p:0; width:76px; height:76px; border-radius:99px; display:grid; place-items:center; flex:none;
  background:conic-gradient(var(--az-accent-text) calc(var(--p) * 1%), var(--az-line) 0); }
.az-pf-ring .az-k-pav { box-shadow:0 0 0 3px var(--az-bg); }
.az-person .az-pf-head { grid-template-columns:76px minmax(0,1fr) auto; }
.az-pf-chips { display:flex; flex-wrap:wrap; gap:var(--az-sp-2); margin-top:var(--az-sp-2); }
.az-pf-chip { display:inline-flex; align-items:center; gap:var(--az-sp-2); font-size:12.5px; line-height:24px; padding:0 var(--az-sp-3); border-radius:99px;
  border:1px solid var(--az-line); background:var(--az-surface); color:var(--az-ink-2); text-decoration:none; white-space:nowrap; }
a.az-pf-chip:hover { border-color:var(--az-accent-line); color:var(--az-ink); }
.az-pf-add { border-style:dashed; color:var(--az-ink-3); }
.az-pf-dot { width:7px; height:7px; border-radius:99px; background:var(--az-warn); flex:none; }
.az-pf-dot.ok { background:var(--az-ok); }
.az-pf-missing { display:flex; align-items:center; gap:var(--az-sp-2); flex-wrap:nowrap; overflow-x:auto; margin:var(--az-sp-2) 0 var(--az-sp-1); padding:var(--az-sp-2) var(--az-sp-3);
  border-radius:10px; background:var(--az-accent-soft); font-size:12.5px; color:var(--az-accent-text); white-space:nowrap; }
.az-pf-missing b { font-weight:600; margin-inline-end:var(--az-sp-1); }
.az-pf-need { padding:0 var(--az-sp-2); line-height:22px; border-radius:7px; border:1px dashed var(--az-accent-line); color:var(--az-accent-text); text-decoration:none; }
a.az-pf-need:hover { background:var(--az-surface); }
.az-pf-pct { margin-inline-start:auto; color:var(--az-ink-3); }
.az-pf-row { align-items:center; }
.az-pf-row > span { min-width:0; white-space:normal; }
.az-pf-row .az-k-meta { white-space:normal; overflow-wrap:anywhere; }
.az-pf-val { font-family:var(--font-en, inherit); font-variant-numeric:tabular-nums; unicode-bidi:isolate; overflow-wrap:anywhere; }
.az-pf-acts { display:flex; gap:var(--az-sp-2); flex:none; margin:0; }
.az-pf-suggest { background:color-mix(in srgb, var(--az-warn-soft) 55%, transparent); border-radius:8px; padding-inline:var(--az-sp-2); }
.az-pf-check { flex-direction:row; align-items:center; gap:var(--az-sp-2); align-self:end; }
.az-pf-head .az-pf-photo-src { display:flex; flex-wrap:wrap; align-items:baseline; gap:var(--az-sp-1) var(--az-sp-3); margin:var(--az-sp-2) 0 0;
  font-size:12.5px; line-height:1.6; color:var(--az-ink-3); }
.az-pf-photo-src a { color:inherit; }
.az-pf-inline { display:inline-flex; margin:0; }
.az-pf-inline .az-k-btn { min-height:0; padding:0; font-size:12.5px; width:auto; }
@media (max-width: 760px) {
  .az-person .az-pf-head { grid-template-columns:56px minmax(0,1fr); }
  .az-pf-ring { width:56px; height:56px; }
  .az-pf-row { flex-wrap:wrap; }
  .az-pf-acts .az-k-btn { min-height:44px; }
}

/* ═══ az-ac / az-cb — قسم المفاهيم والافتراضات (MHM-152) ═══
   قسم واحد بلا صندوق داخله. المبدّل والفلتر نص صغير في سطر لا يلتف.
   الوجه مطوي، والمقارنة والقصة والكل تُبدّل ما يُرسم. */
.az-ac { display: grid; gap: var(--space-2); min-width: 0; }
.az-ac-h { display: flex; align-items: baseline; gap: var(--space-2); margin: 0; font-size: var(--label); font-weight: 700; line-height: 1.4; }
.az-ac-h .az-state { font-size: var(--micro); font-weight: 500; }
.az-ac .az-decision { margin: 0; padding: 0; border: 0; background: none; box-shadow: none; }
.az-ac .az-decision h4 { display: inline; margin: 0; font-size: var(--small); font-weight: 700; }
.az-ac .az-decision .sec-note { display: inline; margin: 0; font-size: var(--micro); }
.az-ac .sec { margin: 0; padding: 0; border: 0; background: none; box-shadow: none; }
.az-ac-scroll { overflow-x: auto; max-width: 100%; }
.az-ac-chain { width: 100%; border-collapse: collapse; font-size: var(--small); }
.az-ac-chain th, .az-ac-chain td { padding: var(--az-sp-1) var(--az-sp-3) var(--az-sp-1) 0; text-align: start; vertical-align: baseline; border-bottom: 1px solid var(--az-line, var(--rule)); max-width: 24ch; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.az-ac-chain th { font-size: var(--micro); font-weight: 500; color: var(--az-ink-3, var(--mut)); }
.az-ac-chain .az-state { margin-inline-end: var(--az-sp-1); }
.az-ac-muted { color: var(--mut); font-size: var(--micro); }
.az-ac-story-src { display: none; }
.az-ac-switch, .az-cb-bar { display: flex; flex-wrap: nowrap; align-items: center; gap: 0; overflow-x: auto; scrollbar-width: none; margin: 0; }
.az-ac-text, .az-cb-bar :is(label, button) { display: inline-flex; align-items: center; gap: var(--az-sp-1); flex: none; white-space: nowrap; min-height: 0; padding: 0 var(--az-sp-2); border: 0; border-radius: 0; background: none; color: var(--mut); font: inherit; font-size: var(--micro); cursor: pointer; text-decoration: underline; text-underline-offset: 2px; }
.az-cb-bar :is(label, button) i { font-style: normal; color: inherit; font-size: inherit; }
.az-ac-text[aria-pressed="true"], .az-cb-bar button[aria-pressed="true"], .az-cb-bar input:checked + label { background: none; border: 0; color: var(--az-ink, var(--ink)); font-weight: 700; text-decoration: none; }
.az-cb-bar input:focus-visible + label, .az-cb-bar button:focus-visible, .az-ac-text:focus-visible { outline: 1px solid var(--p500); outline-offset: 2px; }
.az-cb-srcbox { position: absolute; inline-size: var(--space-1); block-size: var(--space-1); margin: calc(var(--space-1) * -1); overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.az-cb-bar .az-cb-srcbtn { margin-inline-start: auto; }
.az-ac .az-cv-stories, .az-ac .az-v-compare { display: none; }
.az-cv-arrow { color: var(--p500); }
.az-cb[data-view="story"] .az-cv-stories, [data-az-component="assumptions-concepts"][data-view="story"] .az-cv-stories { display: block; }
.az-cb[data-view="story"] .az-cv-stories .az-cv-story, [data-az-component="assumptions-concepts"][data-view="story"] .az-cv-stories .az-cv-story { display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--space-1) var(--space-2); margin: 0 0 var(--space-2); font-size: var(--small); line-height: 1.7; }
.az-cb[data-view="compare"] .az-v-compare, [data-az-component="assumptions-concepts"][data-view="compare"] .az-v-compare { display: grid; }
.az-cb[data-view="compare"] :is(.az-cb-list, .az-ac-concepts, .az-cv-stories),
.az-cb[data-view="story"] :is(.az-cb-list, .az-ac-concepts, .az-v-compare),
.az-cb[data-view="all"] :is(.az-v-compare, .az-cv-stories),
.az-cb[data-view="face"] :is(.az-v-compare, .az-cv-stories),
[data-az-component="assumptions-concepts"][data-view="compare"] :is(.az-cb-list, .az-ac-concepts, .az-cv-stories),
[data-az-component="assumptions-concepts"][data-view="story"] :is(.az-cb-list, .az-ac-concepts, .az-v-compare),
[data-az-component="assumptions-concepts"][data-view="all"] :is(.az-v-compare, .az-cv-stories),
[data-az-component="assumptions-concepts"][data-view="face"] :is(.az-v-compare, .az-cv-stories) { display: none; }
.az-cb article + article { margin-block-start: var(--space-2); }
.az-cb-round { display: flex; flex-wrap: wrap; gap: var(--space-2); align-items: baseline; margin: 0; font-size: var(--micro); }
.az-cb-round span { color: var(--mut); }
.az-cb-list { list-style: none; margin: 0; padding: 0; display: grid; max-width: 100%; }
.az-cb-list > li { min-width: 0; border: 0; border-bottom: 1px solid var(--az-line, var(--rule)); border-radius: 0; padding: 0; background: none; }
.az-cb-list summary { display: flex; align-items: center; flex-wrap: nowrap; gap: var(--space-2); min-height: 32px; height: auto; cursor: pointer; list-style: none; overflow: hidden; }
.az-cb-list summary::-webkit-details-marker { display: none; }
.az-cb-list summary b { min-width: 0; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.az-cb-list summary .az-state { align-self: center; flex: none; }
.az-ac-scores { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--mut); font-size: var(--micro); }
.az-cb-list details[open] > summary { font-weight: 700; }
.az-cb-list details > :not(summary) { margin: 0 0 var(--space-2); font-size: var(--small); line-height: 1.7; white-space: normal; }
.az-cb-list details p b { font-weight: 700; margin-inline-end: var(--space-1); }
.az-cb-flag { flex: none; font-size: var(--micro); color: var(--p700); white-space: nowrap; }
.az-cb-meta, .az-cb-none { color: var(--mut); }
.az-cb-reviews { display: grid; gap: var(--space-1); padding: var(--space-2); border-radius: var(--radius-sm); background: var(--paper-2); }
.az-cb-reviews > div { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--space-2); }
.az-cb-reviews dt { font-weight: 700; } .az-cb-reviews dd { margin: 0; white-space: pre-line; }
.az-cb-decision small { color: var(--mut); }
.az-cb-form { display: flex; align-items: stretch; gap: var(--space-1); }
.az-cb-form input[name="decision_text"] { flex: 1; min-width: 0; }
.az-cb-older { list-style: none; margin: var(--space-2) 0 0; padding: 0; }
.az-cb-older li { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: var(--space-2); }
.az-cb .az-cb-src { display: none; color: var(--mut); font-size: var(--micro); }
.az-cb:has(.az-cb-srcbox:checked) .az-cb-src { display: block; }
.az-ac-concepts > summary, .az-ac-assumptions > summary, .az-ac-rest > summary { cursor: pointer; font-size: var(--small); min-height: 32px; }
.az-cb[data-filter="selected"] .az-cb-list > li:not([data-place="selected"]),
.az-cb[data-filter="alternative"] .az-cb-list > li:not([data-place="alternative"]),
.az-cb[data-filter="merged"] .az-cb-list > li:not([data-place="merged"]),
.az-cb[data-filter="rejected"] .az-cb-list > li:not([data-place="rejected"]),
.az-cb[data-filter="not_nominated"] .az-cb-list > li:not([data-place="not_nominated"]) { display: none; }
.az-cb[data-filter="selected"] article:not(:has(li[data-place="selected"])),
.az-cb[data-filter="alternative"] article:not(:has(li[data-place="alternative"])),
.az-cb[data-filter="merged"] article:not(:has(li[data-place="merged"])),
.az-cb[data-filter="rejected"] article:not(:has(li[data-place="rejected"])),
.az-cb[data-filter="not_nominated"] article:not(:has(li[data-place="not_nominated"])) { display: none; }
.az-cb[data-filter="selected"] .az-cb-older > li:not([data-has~="selected"]),
.az-cb[data-filter="alternative"] .az-cb-older > li:not([data-has~="alternative"]),
.az-cb[data-filter="merged"] .az-cb-older > li:not([data-has~="merged"]),
.az-cb[data-filter="rejected"] .az-cb-older > li:not([data-has~="rejected"]),
.az-cb[data-filter="not_nominated"] .az-cb-older > li:not([data-has~="not_nominated"]) { display: none; }
.az-cb-pivot { margin-top: var(--space-1); }
.az-cb-pivot .az-k-btn { white-space: normal; }
@media (max-width: 640px) { .az-cb-form { flex-direction: column; } .az-cb-reviews > div { grid-template-columns: minmax(0, 1fr); gap: 0; } }
/* ── اعتماد الفرضيات (المحطة ٦): زر واحد يفتح ثلاثة خيارات، سطر ملاحظة، بلا صندوق داخل صندوق. */
.az-hyp { margin: 0 0 var(--space-2); }
.az-hyp h4 { font-size: var(--small); font-weight: 700; margin: 0 0 var(--space-1); }
.az-hyp-record b { margin-inline-end: var(--space-1); }
.az-hyp-decide > summary { display: inline-flex; align-items: center; min-height: 40px; cursor: pointer; list-style: none; }
.az-hyp-decide > summary::-webkit-details-marker { display: none; }
.az-hyp-form { display: grid; gap: var(--space-2); margin-block-start: var(--space-2); }
.az-hyp-form label { display: grid; gap: var(--space-1); font-size: var(--small); }
.az-hyp-form textarea { width: 100%; min-width: 0; box-sizing: border-box; }
.az-hyp-actions { display: flex; flex-wrap: wrap; gap: var(--space-1); }
@media (max-width: 640px) { .az-hyp-actions { flex-direction: column; } .az-hyp-actions .btn, .az-hyp-decide > summary { min-height: 44px; justify-content: center; } }
/* ── شريحة الشعار — إطار واحد لكل جهة ──────────────────────────────────────
   قرار محمد (٦ أكتوبر ٢٠٢٦): الشعارات بتناسب صحيح، لا مقصوصة ولا باهتة ولا شيء
   كبير وشيء صغير. فالإطار ثابت المقاس، والشعار داخله `contain` بلا قص، ومساحته
   البصرية يضبطها سكربت الصفحة من أبعاده (العريض يقصر، والمربع يصغر). والشعار
   الفاتح يقلب الإطار داكنًا. والجهة بلا شعار: اسمها نصًّا في الإطار نفسه. */
.az-logo-chip {
  display: inline-flex; align-items: center; justify-content: center;
  width: 112px; height: 52px; padding: var(--az-sp-1) var(--az-sp-3); box-sizing: border-box;
  border-radius: 10px; background: var(--paper); border: 1px solid var(--rule);
  color: var(--ink); text-decoration: none; flex: 0 0 auto; overflow: hidden;
}
.az-logo-chip img { display: block; max-width: 100%; max-height: 100%; width: 92px; height: 40px; object-fit: contain; }
.az-logo-chip:hover { border-color: var(--mut-2); }
.az-logo-chip--light { background: var(--ink); border-color: var(--ink); }
.az-logo-chip--name { font-size: var(--micro); line-height: 1.3; text-align: center; overflow-wrap: anywhere; }
.az-logo-chip__name { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.az-logo-chip__name[hidden] { display: none; }
.az-logo-chip--hero { width: 180px; height: 80px; padding: var(--az-sp-2) var(--az-sp-3); }
.az-logo-chip--hero img { width: 156px; height: 64px; }
.az-logo-chip--hero.az-logo-chip--name { font-size: var(--label); }
.az-logo-row { display: flex; flex-wrap: wrap; gap: var(--az-sp-2); }
.az-logo-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(9.5rem, 1fr)); gap: var(--space-3); }
.az-logo-grid > article { display: grid; justify-items: center; gap: var(--az-sp-1); text-align: center; font-size: var(--micro); color: var(--mut); }

/* ── المراحل — لوح الرحلة كله في الشاشة بلا سحب ─────────────────────────────
   كل مرحلة صف بعنوانها، ومحطاتها خلايا متساوية فيه. والمحطة الفارغة إطار خفيف
   منقط بلا خلفية: تبقى ظاهرة (الفراغ خبر) ولا تزاحم الممتلئة. */
.az-phases { display: grid; gap: var(--space-3); margin-bottom: var(--space-4); }
.az-phase { display: grid; grid-template-columns: 6.5rem minmax(0, 1fr); gap: var(--space-3); align-items: start; }
.az-phase > h2 { margin: 0; padding-top: var(--az-sp-2); font-size: var(--label); color: var(--mut); }
.az-phase__stations { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: var(--space-2); }
.az-stage { min-width: 0; padding: var(--space-2); border-radius: 12px; background: var(--paper-2); }
.az-stage > header { display: flex; align-items: baseline; gap: var(--az-sp-2); margin-bottom: var(--az-sp-1); font-size: var(--micro); }
.az-stage > header > a { color: var(--ink); font-weight: 600; text-decoration: none; min-width: 0; }
.az-stage > header > a:hover { text-decoration: underline; }
.az-stage > header > i { margin-inline-start: auto; font-style: normal; color: var(--mut); font-variant-numeric: tabular-nums; }
.az-stage > p { margin: 0; font-size: var(--micro); color: var(--mut-2); }
.az-stage--empty { background: transparent; border: 1px dashed var(--rule); }
.az-stage--empty > header > a { color: var(--mut); font-weight: 500; }
.az-stage .az-logo-chip { width: 100%; max-width: 112px; }
@media (max-width: 900px) {
  .az-phase { grid-template-columns: 1fr; gap: var(--az-sp-2); }
  .az-phase > h2 { padding-top: 0; }
  .az-phase__stations { grid-auto-flow: row; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ── سطر المحطة الفارغة في صفحة الجهة ─────────────────────────────────────── */
.az-stage-summary { margin: var(--space-2) 0 0; }
.az-stage-line { margin: var(--az-sp-1) 0 0; padding: var(--az-sp-2) var(--az-sp-3); border: 1px dashed var(--rule); border-radius: 10px; font-size: var(--small); color: var(--mut); }
.az-stage-line > span { color: var(--mut-2); font-size: var(--micro); }
.az-stage-line--here { border-style: solid; border-color: var(--mut-2); color: var(--ink); }

/* ── الموجز — فعل واحد في سطر واحد: التاريخ، الشعار، ما فُعل، محطته ─────────── */
.az-feed { margin: 0; padding: 0; list-style: none; }
.az-feed > li {
  display: grid; grid-template-columns: 4.5rem auto minmax(0, 1fr) auto; gap: var(--space-3);
  align-items: center; padding: var(--az-sp-2) 0; border-bottom: 1px solid var(--rule);
}
.az-feed time { color: var(--mut); font-size: var(--micro); font-variant-numeric: tabular-nums; }
.az-feed p { margin: 0; font-size: var(--small); line-height: var(--lh-body); }
.az-feed__tag { font-size: var(--micro); color: var(--mut); text-decoration: none; white-space: nowrap; }
.az-feed__tag:hover { text-decoration: underline; }
@media (max-width: 640px) {
  .az-feed > li { grid-template-columns: auto minmax(0, 1fr); gap: var(--az-sp-2); }
  .az-feed > li > p { grid-column: 1 / -1; }
  .az-feed__tag { grid-column: 1 / -1; min-height: 44px; display: inline-flex; align-items: center; }
}

/* ── الرادار — ثلاثة أعمدة متجاورة بمساحة كاملة ───────────────────────────── */
.az-radar { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-3); align-items: start; }
.az-radar-col { min-width: 0; padding: var(--space-3); border-radius: 14px; background: var(--paper-2); }
.az-radar-col > header { display: flex; align-items: baseline; gap: var(--space-2); }
.az-radar-col h2 { margin: 0; font-size: var(--h4); }
.az-radar-col > header > i { margin-inline-start: auto; font-style: normal; color: var(--mut); font-variant-numeric: tabular-nums; }
.az-radar-col > .az-k-hint { margin: var(--az-sp-1) 0 var(--space-2); }
.az-radar-list { margin: 0; padding: 0; list-style: none; display: grid; gap: var(--space-2); }
.az-radar-list > li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--space-2); align-items: start; padding: var(--space-2); border-radius: 10px; background: var(--paper); }
.az-radar-list p { margin: 0; font-size: var(--small); line-height: var(--lh-body); }
.az-radar-list small { display: block; margin-top: 2px; color: var(--mut); font-size: var(--micro); }
@media (max-width: 900px) { .az-radar { grid-template-columns: 1fr; } }

/* ── نظرة أولى في صفحة أحمد: ما تحرك، والقادم، والمتوقف ─────────────────────
   ثلاثة أعمدة بلا لوح: عنوان بعدّاده، وسطر لكل بند (تاريخ قصير، الجهة رابطًا، ما جرى). */
.az-glance { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-4); margin: var(--space-3) 0 var(--space-4); }
.az-glance__col { min-width: 0; }
.az-glance__col > h2 { margin: 0 0 var(--az-sp-1); font-size: var(--small); font-weight: 700; display: flex; align-items: baseline; gap: var(--az-sp-2); }
.az-glance__col > h2 > i { font-style: normal; color: var(--mut); font-weight: 500; font-variant-numeric: tabular-nums; }
.az-glance__list { margin: 0; padding: 0; list-style: none; }
.az-glance__list > li { display: grid; grid-template-columns: 3.75rem minmax(0, 1fr); gap: var(--space-2); padding: var(--az-sp-1) 0; border-top: 1px solid var(--rule); }
.az-glance__list time { direction: rtl; font-family: inherit; letter-spacing: normal; color: var(--mut); font-size: var(--micro); font-variant-numeric: tabular-nums; padding-top: 2px; }
.az-glance__list b { display: block; font-size: var(--small); font-weight: 600; overflow-wrap: anywhere; }
.az-glance__list p { margin: 0; font-size: var(--label); color: var(--mut); line-height: var(--lh-body); overflow-wrap: anywhere; }
.az-glance__list small { color: var(--mut-2); white-space: nowrap; }
.az-glance__more { display: inline-flex; align-items: center; min-height: 32px; font-size: var(--micro); color: var(--mut); }
@media (max-width: 900px) { .az-glance { grid-template-columns: 1fr; gap: var(--space-3); } }

/* ── التقويم — الشهر شبكة سبعة أعمدة، والمواعيد قائمة تحتها؛ والهاتف يرى القائمة وحدها ── */
.az-cal-bar { display: flex; align-items: center; gap: var(--space-2); margin: var(--space-3) 0 var(--space-2); white-space: nowrap; overflow-x: auto; scrollbar-width: none; }
.az-cal-bar > h2 { margin: 0; font-size: var(--h4); min-width: 9rem; text-align: center; }
.az-cal-bar .az-k-btn { flex: none; }
.az-cal-count { margin-inline-start: auto; font-size: var(--micro); color: var(--mut); }
.az-cal-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); border-top: 1px solid var(--rule); border-inline-start: 1px solid var(--rule); }
.az-cal-wd { padding: var(--az-sp-1) var(--az-sp-2); font-size: var(--micro); color: var(--mut); border-inline-end: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.az-cal-blank, .az-cal-day { min-height: 6.5rem; min-width: 0; border-inline-end: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.az-cal-day { padding: var(--az-sp-1) var(--az-sp-2) var(--az-sp-1); }
.az-cal-num { display: block; font-size: var(--micro); color: var(--mut); font-variant-numeric: tabular-nums; }
.az-cal-day.is-past .az-cal-num { color: var(--mut-2); }
.az-cal-day.is-today { background: var(--paper-2); box-shadow: inset 0 2px 0 var(--az-accent); }
.az-cal-day.is-today .az-cal-num { color: var(--ink); font-weight: 700; }
.az-cal-day > ul { margin: var(--az-sp-1) 0 0; padding: 0; list-style: none; display: grid; gap: 3px; }
.az-cal-ev { padding: 2px var(--az-sp-2); border-inline-start: 2px solid var(--mut-2); font-size: var(--micro); line-height: 1.4;
  overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow-wrap: anywhere; }
.az-cal-ev b { font-weight: 600; }
.az-cal-ev > span { color: var(--mut); }
.az-cal-ev--next, .az-cal-ev--meeting { border-inline-start-color: var(--az-accent); }
.az-cal-ev--window, .az-cal-ev--review, .az-cal-ev--expiry { border-inline-start-style: dashed; }
.az-cal-ev.is-past { opacity: .55; }
.az-cal-more { font-size: var(--micro); padding-inline-start: var(--az-sp-2); }
.az-cal-more a { color: var(--mut); }
.az-cal-agenda { margin: 0; padding: 0; list-style: none; }
.az-cal-agenda > li { padding: var(--az-sp-2) 0; border-bottom: 1px solid var(--rule); scroll-margin-top: 80px; }
.az-cal-agenda > li > time { display: block; direction: rtl; font-family: inherit; letter-spacing: normal; font-size: var(--micro); color: var(--mut); margin-bottom: var(--az-sp-1); }
.az-cal-agenda > li.is-past { opacity: .6; }
.az-cal-agenda > li.is-today > time { color: var(--ink); font-weight: 700; }
.az-cal-agenda ul { margin: 0; padding: 0; list-style: none; display: grid; gap: var(--az-sp-2); }
.az-cal-agenda ul > li { display: grid; grid-template-columns: 6rem minmax(0, 1fr); gap: var(--space-2); align-items: baseline; }
.az-cal-kind { font-size: var(--micro); color: var(--mut); white-space: nowrap; }
.az-cal-agenda b { font-size: var(--small); font-weight: 600; overflow-wrap: anywhere; }
.az-cal-agenda p { margin: 0; font-size: var(--label); color: var(--mut); line-height: var(--lh-body); overflow-wrap: anywhere; }
.az-cal-agenda small { color: var(--mut-2); }
@media (max-width: 640px) {
  .az-cal-grid { display: none; }
  .az-cal-agenda ul > li { grid-template-columns: 1fr; gap: 0; }
  .az-cal-bar .az-k-btn { min-height: 44px; }
  .az-cal-count { display: none; }
}

/* ── وصول «اليوم» وتطوير الأعمال ────────────────────────────────────────────
   أنماط الصفحة تُحقن بعد هذا الملف. أولوية هذه القواعد أعلى كي تثبت.
   --qc-soft يساوي --mut-2 (#6F675D) وعلى --cream (#F2EDE3) التباين 4.77؛
   --mut (#6B5E47) على الكريم 5.43 وعلى الورق 5.92. */
body.quiet-command .t-kicker { color: var(--mut); }
body.quiet-command :is(a, button, input, select, textarea, summary, [tabindex], [role="button"], [role="tab"], [role="link"]):focus-visible {
  outline: 2px solid var(--p700);
  outline-offset: 2px;
}

/* ── أهداف اللمس ≥ 44px على الجوال (MHM-192 D9) ─────────────────────────────
   الصندوق الفعلي (getBoundingClientRect) يبلغ ٤٤، لا ::after شفاف. في الصفوف
   المتجاورة (الأشخاص؛ وصفحة العملاء مستثناة عمدًا) يُسترد الارتفاع الزائد بهامش سالب صغير فلا تطول
   الصفحة؛ وفي بطاقة الجهة لا هامش سالب كي لا يتراكب هدفان متجاوران.
   روابط الفقرات النصّية (`p a`) مستثناة عمدًا. */
@media (max-width: 600px) {
  /* رقاقة الجهة لا تتقلص مع الصف: القصيرة كاملة والطويلة وحدها تُقطع بنقاط. فوق 600px يبقى السلوك كما كان. */
  .az-k-tl { flex-wrap:wrap; row-gap:0; }
  .az-k-tl > span:first-child { max-inline-size:100%; }
  .az-k-prow .az-k-tl > .az-k-chip { flex:0 0 auto; min-inline-size:min(max-content,100%); max-inline-size:100%; }
  .oc .entry-body > a:first-child { inline-size:100%; min-inline-size:0; white-space:normal; overflow-wrap:anywhere; }
  body .az-k-brand { min-inline-size: 44px; justify-content: center; margin-inline: -5px; }
  body :is(.az-study-record, .az-tag, .az-tag-form button, .az-tag-off button, .az-v-lens, .az-decider-more, .az-act, .az-owner-link,
    .az-v-reveal-body form > button, .az-v-reveal form > button, .az-v-stack-face form > button, .az-v-stack-more form > button, .az-card-outputs form > button,
    details form > button, .az-v-row a, .az-v-row-detail a, .az-v-index-item a, .az-v-stack-face a, .az-v-stack-more a, .az-face li > a, .az-k-prose a:not(p a), .az-k-prose bdi > a,
    .oc .entry-body > a, .oc .entry-path a, .oc .entry-know-link, .az-know-value a, .az-glance__list b > a, .az-stage > header > a, a.dl,
    .ri-reading strong > a, .az-pf-val, .az-pf-need, .az-pf-chip, .thr-item, .az-k-meta a, .az-glance__more, .az-v-press, .az-v-row-title,
    .az-back, .az-org-identity__mark-link, .az-cal-agenda b > a, .az-k-li b a, .entry-body > a, .entry-path a):not(p a) {
    min-block-size: 44px; box-sizing: border-box; display: inline-flex; align-items: center; min-inline-size: 44px; max-inline-size: 100%;
  }
  body .az-k-prow .az-k-chip { min-inline-size: min(calc(var(--space-5) + var(--space-3)), 100%); justify-content: center; }
  body :is(.az-k-chip, .az-k-c--main a.az-k-name):not([data-client-row] *) { min-block-size: 44px; box-sizing: border-box; margin-block: -2px; }
  body .az-k-c--main a.az-k-name:not([data-client-row] *) { line-height: 44px; }
  body :is(.az-v-row > a, .az-v-index-item > a, .az-v-row-title, .oc .entry-body > a) { display: flex; }
  body :is(.az-v-press, .az-v-stack-face a, .az-know-value a, .az-v-row-detail a):not(.az-v-row-title) { min-inline-size: 44px; justify-content: center; }
  body :is(.oc, .az-k-page, main) details > summary, body .ri-switch, body label:has(> input[type="checkbox"], > input[type="radio"]) { min-block-size: 44px; box-sizing: border-box; }
}

/* حركة دقيقة هادئة (MHM-189): كلها داخل no-preference، والمحتوى مرئي بلا CSS الحركة.
   الدخول يحرّك opacity وtranslate فقط، فلا يحجب transform الخاص بالضغط والرفع. */
.az-dcard-more > summary::after { content: "\2039"; margin-inline-start: var(--space-2); font-size: var(--body); line-height: 1; }
.az-dcard-more[open] > summary::after { rotate: -90deg; }
.az-dcard-more > summary { gap: var(--space-1); }

@media (prefers-reduced-motion: no-preference) {
  @keyframes az-enter { from { opacity: 0; translate: 0 calc(var(--space-1) * 1.5); } to { opacity: 1; translate: 0 0; } }
  @keyframes az-here-pulse { 0%, 100% { opacity: 1; } 50% { opacity: .55; } }
  @keyframes az-done { to { height: 0; opacity: 0; padding-block: 0; border-block-width: 0; margin-block: 0; display: none; } }

  .az-dcard, .s1 .s1-item, .s1 .s1-tile {
    --az-n: 5;
    animation: az-enter 240ms var(--ease-out) calc(var(--az-n) * 40ms) both;
  }
  :is(.az-dcard, .s1 .s1-item, .s1 .s1-tile):nth-child(1) { --az-n: 0; }
  :is(.az-dcard, .s1 .s1-item, .s1 .s1-tile):nth-child(2) { --az-n: 1; }
  :is(.az-dcard, .s1 .s1-item, .s1 .s1-tile):nth-child(3) { --az-n: 2; }
  :is(.az-dcard, .s1 .s1-item, .s1 .s1-tile):nth-child(4) { --az-n: 3; }
  :is(.az-dcard, .s1 .s1-item, .s1 .s1-tile):nth-child(5) { --az-n: 4; }

  .az-dcard, .s1 .s1-item, .s1 .s1-tile {
    transition: transform 90ms var(--ease-out), box-shadow var(--dur-1) var(--ease), border-color var(--dur-1) var(--ease), background-color var(--dur-1) var(--ease);
  }
  @media (hover: hover) {
    .az-dcard:hover { transform: translateY(calc(var(--space-1) / -2)); box-shadow: var(--shadow-md); }
  }
  :is(.az-dcard, .s1 .s1-item, .s1 .s1-tile):active { transform: scale(.985); }

  .az-dcard-more { interpolate-size: allow-keywords; }
  .az-dcard-more::details-content { block-size: 0; overflow: clip; transition: block-size 180ms var(--ease-out), content-visibility 180ms allow-discrete; }
  .az-dcard-more[open]::details-content { block-size: auto; }
  .az-dcard-more > summary::after { transition: rotate 180ms var(--ease-out); }

  .az-v-segs > i[data-state="current"], .az-v-station[aria-current="step"] .az-v-station-dot { animation: az-here-pulse 2.4s ease-in-out infinite; }

  .s1 .s1-item[data-done] { interpolate-size: allow-keywords; overflow: hidden; animation: az-done 200ms var(--ease) forwards; pointer-events: none; }
}
