/* ══════════════════════════════════════════════════════════════════════════
   SHARKS — طقم الكومبوننتس  ·  WP-UI-02 · LANE-UI · R07 · 2026-08-30
   ──────────────────────────────────────────────────────────────────────────
   الملف ده فيه الكومبوننتس اللى كل شاشه محتاجاها، مكتوبين مره واحده.
   بيتحمّل فى الست لوحات بعد sharks-identity.css.

   قواعد الملف ده، ومحصلش استثناء عليها:

     ١. مفيش ولا قيمه لون خام. كله var(). لو محتاج لون مش موجود،
        التوكن بيتضاف فى sharks-tokens.css مش هنا.

     ٢. خصائص منطقيه بس — margin-inline-start مش margin-left. اللوحات
        بتشتغل عربى RTL وإنجليزى LTR على نفس الماركب، وأى left/right
        بيقلب الشاشه فى لغه من الاتنين.

     ٣. اللون ممنوع يكون الإشاره الوحيده. كل شاره فيها أيقونه أو نص جنب
        اللون. حد مايفرقش بين الأحمر والأخضر لازم يقرا نفس المعلومه.

     ٤. كل حاجه تتوصلها بالكيبورد ليها حلقة تركيز ظاهره. مفيش
        outline:none من غير بديل، ولا مره واحده.

     ٥. الجداول مابتقصّش نص ساكت. اللى مش لاقى مكان بيلف أو بيتزحلق
        جوّه حاويته — الصفحه نفسها عمرها ما بتزحلق أفقى.

   البادئه sk- على كل كلاس عشان ما تتخانقش مع بوتستراب ولا مع الأربع
   قوالب اللى اللوحات مبنيه عليها.
   ══════════════════════════════════════════════════════════════════════════ */


/* ═══════════  ٠) الأساسيات المشتركه  ═══════════════════════════════════ */

/* حلقة التركيز — مكان واحد بيمسك الموضوع ده فى النظام كله.
   :focus-visible بيدّيها للكيبورد بس، فالماوس مش بيرسم إطار على كل دوسه. */
[class^="sk-"]:focus-visible,
[class*=" sk-"]:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:2px;
  border-radius:var(--r-sm);
}

/* الأرقام — سطر واحد بيمسك كل رقم فى النظام.
   direction:ltr مع unicode-bidi:isolate عشان الرقم ما يتقلبش جوّه جمله
   عربى. ده بيحصل فعلاً من غير العزل، والمبلغ بيتقرا مقلوب. */
.sk-num{
  font-family:var(--f-num);
  font-variant-numeric:tabular-nums;
  direction:ltr;
  unicode-bidi:isolate;
  white-space:nowrap;
}

/* أى كود بيتقرا حرف حرف — AWB · SKU · رقم الأوردر · التليفون.
   نفس علّة الأرقام بالظبط. */
.sk-code{
  font-family:var(--f-num);
  direction:ltr;
  unicode-bidi:isolate;
  white-space:nowrap;
  letter-spacing:.02em;
}

/* أيقونه بتلفّ فى RTL (سهم · شيفرون · رجوع · تالى).
   الأيقونات اللى مابتلفش — بحث · مستخدم · ساعه · صح — مالهاش الكلاس ده. */
[dir="rtl"] .sk-icon-flip{ transform:scaleX(-1) }

/* مخفى بصريًا بس قارئ الشاشه بيقراه */
.sk-sr{
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}


/* ═══════════  ١) شارة الحاله  ═══════════════════════════════════════════
   ──────────────────────────────────────────────────────────────────────
   اللون بييجى من --st-<رقم>-* فى ملف التوكنز، والرقم بيتحط على العنصر
   كـ data-status. يعنى لون الحاله بيتقرّر فى مكان واحد فى النظام كله.

   الشاره دايمًا فيها تلات حاجات: نقطه ملوّنه · علامه نصّيه · اسم الحاله
   بالحروف. الاسم مش اختيارى — من غيره الشاره بتبقى لون وخلاص.
   ══════════════════════════════════════════════════════════════════════ */
.sk-badge{
  display:inline-flex; align-items:center; gap:var(--sp-1);
  min-block-size:var(--h-chip);
  padding-block:0; padding-inline:var(--pad-chip-x);
  border:1px solid var(--st-x-br);
  background:var(--st-x-bg);
  color:var(--st-x-tx);
  border-radius:var(--r-xs);
  font-size:var(--fs-xs);
  font-weight:var(--fw-semibold);
  line-height:1.6;
  white-space:nowrap;
  max-width:100%;
}
.sk-badge__dot{
  inline-size:6px; block-size:6px; border-radius:var(--r-full);
  background:currentColor; flex:0 0 auto;
}
.sk-badge__mark{ font-size:var(--fs-2xs); flex:0 0 auto; line-height:1 }
.sk-badge__txt{ overflow:hidden; text-overflow:ellipsis }

.sk-badge[data-status="0"] { background:var(--st-0-bg);  border-color:var(--st-0-br);  color:var(--st-0-tx) }
.sk-badge[data-status="1"] { background:var(--st-1-bg);  border-color:var(--st-1-br);  color:var(--st-1-tx) }
.sk-badge[data-status="2"] { background:var(--st-2-bg);  border-color:var(--st-2-br);  color:var(--st-2-tx) }
.sk-badge[data-status="3"] { background:var(--st-3-bg);  border-color:var(--st-3-br);  color:var(--st-3-tx) }
.sk-badge[data-status="4"] { background:var(--st-4-bg);  border-color:var(--st-4-br);  color:var(--st-4-tx) }
.sk-badge[data-status="5"] { background:var(--st-5-bg);  border-color:var(--st-5-br);  color:var(--st-5-tx) }
.sk-badge[data-status="6"] { background:var(--st-6-bg);  border-color:var(--st-6-br);  color:var(--st-6-tx) }
.sk-badge[data-status="7"] { background:var(--st-7-bg);  border-color:var(--st-7-br);  color:var(--st-7-tx) }
.sk-badge[data-status="8"] { background:var(--st-8-bg);  border-color:var(--st-8-br);  color:var(--st-8-tx) }
.sk-badge[data-status="9"] { background:var(--st-9-bg);  border-color:var(--st-9-br);  color:var(--st-9-tx) }
.sk-badge[data-status="10"]{ background:var(--st-10-bg); border-color:var(--st-10-br); color:var(--st-10-tx) }
.sk-badge[data-status="11"]{ background:var(--st-11-bg); border-color:var(--st-11-br); color:var(--st-11-tx) }
.sk-badge[data-status="12"]{ background:var(--st-12-bg); border-color:var(--st-12-br); color:var(--st-12-tx) }
.sk-badge[data-status="13"]{ background:var(--st-13-bg); border-color:var(--st-13-br); color:var(--st-13-tx) }
.sk-badge[data-status="14"]{ background:var(--st-14-bg); border-color:var(--st-14-br); color:var(--st-14-tx) }


/* ═══════════  ٢) الفلوس  ═══════════════════════════════════════════════
   يمين العمود · أرقام جدوليه · منزلتين · LTR جوّه العربى.
   العمله بتتكتب فى رأس العمود مره واحده، مش على كل صف.

   ⚠️ sk-money--none هى الحاله اللى المواصفه بتصرّ عليها: منتج من غير
      سعر مش منتج ببلاش. 0.00 هنا كانت هتبقى كذبه بتتاخد عليها قرارات.
   ══════════════════════════════════════════════════════════════════════ */
.sk-money{
  font-family:var(--f-num);
  font-variant-numeric:tabular-nums;
  direction:ltr; unicode-bidi:isolate;
  text-align:end; white-space:nowrap;
  font-weight:var(--fw-medium);
}
.sk-money--none{
  font-family:var(--f-ui);
  direction:inherit;
  color:var(--warn-tx);
  font-size:var(--fs-xs);
  font-weight:var(--fw-semibold);
}
.sk-money--neg{ color:var(--err-tx) }
th.sk-money-h, td.sk-money{ text-align:end }
.sk-money-h__cur{
  display:block; font-size:var(--fs-2xs); font-weight:var(--fw-regular);
  color:var(--mist); letter-spacing:.04em;
}


/* ═══════════  ٣) الجدول  ═══════════════════════════════════════════════
   ──────────────────────────────────────────────────────────────────────
   الجدول بيتلفّ فى حاويه ليها زحلقه أفقيه خاصه بيها. الصفحه نفسها
   عمرها ما بتزحلق — ده شرط من المواصفه على كل الشاشات.

   تحت ٧٦٨: العمود الأول بيتجمّد. ده الحل التانى اللى المواصفه بتسمح
   بيه بدل تحويل الصف لكارت — بيتشال للجداول اللى فيها عمود تعريف
   واضح (كود الأوردر · اسم المنتج) لإن من غيره الزحلقه بتضيّع السياق.
   ══════════════════════════════════════════════════════════════════════ */
.sk-tablewrap{
  inline-size:100%; max-inline-size:100%;
  overflow-x:auto; overflow-y:visible;
  -webkit-overflow-scrolling:touch;
  border:1px solid var(--line);
  border-radius:var(--r);
  background:var(--surf);
}
.sk-table{
  inline-size:100%; border-collapse:collapse;
  font-size:var(--fs-sm); color:var(--ink);
}
.sk-table caption{
  caption-side:top; text-align:start;
  padding:var(--pad-cell-y) var(--pad-cell-x);
  font-size:var(--fs-sm); font-weight:var(--fw-semibold); color:var(--slate);
  border-block-end:1px solid var(--line);
}
.sk-table th, .sk-table td{
  padding:var(--pad-cell-y) var(--pad-cell-x);
  border-block-end:1px solid var(--line);
  text-align:start; vertical-align:middle;
}
.sk-table thead th{
  position:sticky; inset-block-start:0; z-index:var(--z-sticky);
  background:var(--paper2); color:var(--mist);
  font-size:var(--fs-2xs); font-weight:var(--fw-bold);
  letter-spacing:.04em; text-transform:uppercase;
  border-block-end:1px solid var(--line2);
}
.sk-table tbody tr:hover{ background:var(--paper2) }
.sk-table tbody tr:last-child td{ border-block-end:0 }

/* الترتيب — الزرار جوّه الـth عشان يتوصله بالكيبورد ويتقرا كزرار */
.sk-sort{
  all:unset; cursor:pointer; display:inline-flex; align-items:center; gap:var(--sp-1);
  font:inherit; color:inherit; letter-spacing:inherit;
}
.sk-sort:focus-visible{ outline:2px solid var(--accent); outline-offset:2px }
.sk-sort__ar{ opacity:.35; font-size:var(--fs-2xs) }
[aria-sort="ascending"] .sk-sort__ar,
[aria-sort="descending"] .sk-sort__ar{ opacity:1; color:var(--accent) }

/* الاختيار الجماعى */
.sk-table td.sk-pick, .sk-table th.sk-pick{ inline-size:2.5rem; text-align:center }
.sk-table tr[data-picked="1"]{ background:var(--accent-soft) }

/* تحت ٧٦٨ — العمود الأول بيتجمّد */
@media (max-width:767.98px){
  .sk-table--freeze th:first-child,
  .sk-table--freeze td:first-child{
    position:sticky; inset-inline-start:0; z-index:calc(var(--z-sticky) - 1);
    background:var(--surf);
    border-inline-end:1px solid var(--line2);
  }
  .sk-table--freeze thead th:first-child{ z-index:var(--z-sticky); background:var(--paper2) }
  .sk-table--freeze tbody tr:hover td:first-child{ background:var(--paper2) }
}


/* ═══════════  ٤) بلاطة الإحصائيه  ══════════════════════════════════════
   الرقم · اسمه · النافذه الزمنيه · وحجم العيّنه لو الرقم نسبه.
   النافذه مش زينه: «نسبة التسليم ٩٤٪» من غير مده مالهاش معنى.
   ══════════════════════════════════════════════════════════════════════ */
.sk-tile{
  background:var(--surf); border:1px solid var(--line);
  border-radius:var(--r); padding:var(--sp-3) var(--sp-4);
  display:flex; flex-direction:column; gap:2px; min-inline-size:0;
}
.sk-tile__n{
  font-family:var(--f-num); font-variant-numeric:tabular-nums;
  direction:ltr; unicode-bidi:isolate;
  font-size:var(--fs-3xl); font-weight:var(--fw-bold); line-height:1.15; color:var(--ink);
}
.sk-tile__l{ font-size:var(--fs-sm); color:var(--slate); font-weight:var(--fw-medium) }
.sk-tile__w{ font-size:var(--fs-2xs); color:var(--mist) }
.sk-tile__n--none{ font-family:var(--f-ui); font-size:var(--fs-md); color:var(--warn-tx) }

/* عيّنه صغيره — الرقم بيتعرض رمادى ومكتوب جنبه على كام.
   نسبه محسوبه على ٣ شحنات مش نسبه، دى صدفه. */
.sk-tile--low .sk-tile__n{ color:var(--mist) }
.sk-tile__low{
  font-size:var(--fs-2xs); color:var(--warn-tx); font-weight:var(--fw-semibold);
  display:inline-flex; align-items:center; gap:var(--sp-1);
}
.sk-tile__d{ font-size:var(--fs-xs); font-weight:var(--fw-semibold) }
.sk-tile__d--up{ color:var(--ok-tx) }
.sk-tile__d--down{ color:var(--err-tx) }


/* ═══════════  ٥) الحالات الخمسه  ═══════════════════════════════════════
   تحميل · فاضى · مش مفعّل · خطأ · ممنوع.
   الحاله التالته دى قاعده ملزمه (DEC-002): شاشه فاضيه ممنوع تبان
   كأنها شغّاله. لازم تقول إنها لسه مش حيّه ومين تسأله.
   ══════════════════════════════════════════════════════════════════════ */
.sk-state{
  background:var(--surf); border:1px solid var(--line); border-radius:var(--r);
  padding:var(--sp-8) var(--sp-6);
  display:flex; flex-direction:column; align-items:center; gap:var(--sp-2);
  text-align:center; color:var(--slate);
}
.sk-state__i{ font-size:var(--fs-3xl); line-height:1; opacity:.75 }
.sk-state__t{ margin:0; font-size:var(--fs-lg); font-weight:var(--fw-semibold); color:var(--ink) }
.sk-state__p{ margin:0; max-inline-size:38rem; font-size:var(--fs-md) }
.sk-state__act{ margin-block-start:var(--sp-2); display:flex; gap:var(--sp-2); flex-wrap:wrap; justify-content:center }

.sk-state--notactive{ background:var(--warn-bg); border-color:var(--warn-br); color:var(--warn-tx) }
.sk-state--notactive .sk-state__t{ color:var(--warn-tx) }
.sk-state--error{ background:var(--err-bg); border-color:var(--err-br); color:var(--err-tx) }
.sk-state--error .sk-state__t{ color:var(--err-tx) }
.sk-state--denied{ background:var(--paper2); border-color:var(--line2) }

/* شريط علوى للحاله «مش مفعّل» — بيتحط فوق شاشه فيها محتوى تجريبى */
.sk-notactive-bar{
  display:flex; align-items:center; gap:var(--sp-2);
  background:var(--warn-bg); color:var(--warn-tx);
  border:1px solid var(--warn-br); border-radius:var(--r);
  padding:var(--sp-2) var(--sp-3); font-size:var(--fs-xs);
  font-weight:var(--fw-semibold); margin-block-end:var(--sp-3);
}

/* ── التحميل: هياكل بنفس شكل النتيجه، مش سبينر على الصفحه كلها ──────── */
.sk-skel{
  background:linear-gradient(90deg,var(--paper2) 25%,var(--line) 37%,var(--paper2) 63%);
  background-size:400% 100%;
  animation:sk-shimmer 1.4s ease-in-out infinite;
  border-radius:var(--r-xs); block-size:.85em;
}
.sk-skel--line{ inline-size:100% }
.sk-skel--w60{ inline-size:60% }
.sk-skel--w40{ inline-size:40% }
.sk-skel--tile{ block-size:1.9rem; inline-size:55% }
@keyframes sk-shimmer{ from{background-position:100% 0} to{background-position:0 0} }

/* حركه أقل — إعداد الجهاز بيغلب. الهيكل بيفضل ظاهر، بس ساكن. */
@media (prefers-reduced-motion:reduce){
  .sk-skel{ animation:none; background:var(--paper2) }
}


/* ═══════════  ٦) معاينة الفعل الجماعى  ═════════════════════════════════
   ممنوع أى فعل جماعى ينفّذ من غير ما يعرض مين بالظبط هيتأثّر.
   العدد لوحده مش معاينه — رقم ٤١٢ مش بيقول لحد إن فيه أوردر متسلّم جوّه.
   ══════════════════════════════════════════════════════════════════════ */
.sk-bulk{
  border:1px solid var(--accent-line); border-radius:var(--r);
  background:var(--accent-soft); overflow:hidden;
}
.sk-bulk__h{
  padding:var(--sp-2) var(--sp-3); border-block-end:1px solid var(--accent-line);
  font-size:var(--fs-sm); font-weight:var(--fw-semibold); color:var(--ink);
  display:flex; align-items:center; gap:var(--sp-2); flex-wrap:wrap;
}
.sk-bulk__list{
  margin:0; padding:var(--sp-2) var(--sp-3); list-style:none;
  max-block-size:14rem; overflow-y:auto;
  font-size:var(--fs-sm); background:var(--surf);
}
.sk-bulk__list li{
  padding-block:var(--sp-1); border-block-end:1px dashed var(--line);
  display:flex; justify-content:space-between; gap:var(--sp-3); align-items:center;
}
.sk-bulk__list li:last-child{ border-block-end:0 }
.sk-bulk__warn{
  padding:var(--sp-2) var(--sp-3); background:var(--warn-bg); color:var(--warn-tx);
  font-size:var(--fs-xs); font-weight:var(--fw-semibold);
  border-block-start:1px solid var(--warn-br);
}
.sk-bulk__f{
  padding:var(--sp-2) var(--sp-3); display:flex; gap:var(--sp-2); flex-wrap:wrap;
  border-block-start:1px solid var(--accent-line);
}


/* ═══════════  ٧) علامة «مش نهائى»  ═════════════════════════════════════
   ──────────────────────────────────────────────────────────────────────
   هويّة الفولفلمنت مش متختاره — لا اسم ولا دومين ولا لوجو ولا ألوان.
   is_placeholder = true فى config/sharks.php بيولّد العلامه دى.

   غرضها الوحيد: إن الحاجه المؤقته ما تبقاش هويّة الشركه بالسكوت. أى
   أصل مؤقت بيتعرض ومعاه العلامه دى، على الشاشه، مش فى تعليق.
   ماتشيلهاش عشان الشاشه تبقى أنضف — شيلها قرار مالك.
   ══════════════════════════════════════════════════════════════════════ */
.sk-ph{
  display:inline-flex; align-items:center; gap:var(--sp-1);
  padding:1px var(--sp-2);
  background:repeating-linear-gradient(135deg,var(--warn-bg),var(--warn-bg) 6px,transparent 6px,transparent 12px);
  border:1px dashed var(--warn-br); color:var(--warn-tx);
  border-radius:var(--r-xs);
  font-size:var(--fs-2xs); font-weight:var(--fw-bold);
  letter-spacing:.03em; white-space:nowrap; vertical-align:middle;
}
.sk-ph__i{ line-height:1 }
.sk-phwrap{ display:inline-flex; align-items:center; gap:var(--sp-2); flex-wrap:wrap }


/* ═══════════  ٨) حقول الإدخال  ═════════════════════════════════════════
   كل حقل ليه label حقيقى مربوط بـfor. الـplaceholder مش ليبل —
   بيختفى أول ما المستخدم يكتب، وقارئ الشاشه مش مضمون يقراه.
   ══════════════════════════════════════════════════════════════════════ */
.sk-field{ display:flex; flex-direction:column; gap:var(--gap-label); min-inline-size:0 }
.sk-field > label{
  font-size:var(--fs-xs); font-weight:var(--fw-semibold); color:var(--slate);
}
.sk-field__hint{ font-size:var(--fs-2xs); color:var(--mist) }
.sk-field__err{ font-size:var(--fs-2xs); color:var(--err-tx); font-weight:var(--fw-semibold) }

/* ── التحكّمات: ارتفاع واحد · حشوه واحده · نصف قطر واحد ────────────────
   الحقل والزرار والـselect كلهم بيقعدوا على **نفس** --h-control، وهو
   نفسه محسوب من --pad-btn-y مش مكتوب بالإيد. يعنى لما الكثافه تتغيّر،
   التلاته بيتحرّكوا مع بعض ويفضلوا مترّصين فى نفس الصف.

   ⚠️ box-sizing مقفول هنا بالقصد: القوالب التلاته بتحطّ border-box
      على * بس مش كلهم بيوصلوا للعناصر اللى جوّه shadow-ish widgets.
   ══════════════════════════════════════════════════════════════════ */
.sk-input,
.sk-select,
.sk-btn{
  box-sizing:border-box;
  min-block-size:var(--h-control);
  border-radius:var(--r-sm);
  font-family:var(--f-ui);
  font-size:var(--fs-md);
  line-height:var(--lh-control);
}

.sk-input,
.sk-select{
  padding-block:var(--pad-btn-y);
  padding-inline:var(--pad-cell-x);
  border:1px solid var(--line2);
  background:var(--surf); color:var(--ink);
  inline-size:100%; min-inline-size:0;
}
.sk-input::placeholder,
.sk-select::placeholder{ color:var(--mist); opacity:1 }

/* حالة التركيز — ظاهره على الاتنين (الحلقه + الحدّ). الحلقه لوحدها
   بتضيع على خلفيه غامقه، والحدّ لوحده مش كفايه لضعاف البصر. */
.sk-input:focus-visible,
.sk-select:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:1px;
  border-color:var(--accent);
}

/* الخطأ — مش لون بس: الحدّ بيتخن والخلفيه بتتلوّن، والرساله جنبه نص.
   اللون لوحده مش إشاره. */
.sk-input[aria-invalid="true"],
.sk-select[aria-invalid="true"],
.sk-input.is-invalid,
.sk-select.is-invalid{
  border-color:var(--err);
  border-inline-start-width:3px;
  background:var(--err-bg);
}
.sk-input[disabled], .sk-select[disabled],
.sk-input[readonly]{
  background:var(--paper2); color:var(--mist); cursor:not-allowed;
}
.sk-input--num{
  font-family:var(--f-num); font-variant-numeric:tabular-nums;
  direction:ltr; text-align:end;
}

/* ── الـselect ────────────────────────────────────────────────────────
   ⚠️ العيب المقيس: select من غير option مختار كان بيرسم **بقايا حبّه
      صغيّره** — سهم القالب مرسوم على خلفيه بمقاس ثابت، فلما النص فاضى
      الخلفيه بتفضل ظاهره لوحدها كحته لون بلا معنى.
      الحل: بنرسم السهم بنفسنا كـSVG مموضَّع من الحافه المنطقيه، وبنحجز
      له مكان بـpadding-inline-end. الحافه المنطقيه معناها إنه بيقلب
      لوحده فى RTL من غير قاعده تانيه.
      و`appearance:none` بيشيل رسمة المتصفح الأصليه اللى كانت بتتراكب. */
.sk-select{
  -webkit-appearance:none; -moz-appearance:none; appearance:none;
  /* مكان محجوز للسهم من ناحية النهايه المنطقيه */
  padding-inline-end:calc(var(--pad-cell-x) * 2 + var(--icon));
}

/* السهم — عنصر مرسوم بالماسك، مش صورة خلفيه.
   ⚠️ الصوره جوّه `data:` URI **مايقدرش يقرا `var()`**، فلونها بيتكتب
      حرفيًا. سهم رمادى غامق مكتوب بلونه بيبقى شبه مختفى على حقل غامق.
      الماسك بياخد لونه من `background` بتاع العنصر، فبيتبع التوكن.
   ⚠️ والموضع من `inset-inline-end` — بيقلب لوحده فى RTL من غير قاعده
      تانيه. النسخه القديمه كانت بـ`background-position:left` وقاعده
      منفصله لـ`[dir="ltr"]`. */
.sk-selectwrap{ position:relative; display:block; min-inline-size:0 }
.sk-selectwrap::after{
  content:'';
  position:absolute;
  inset-inline-end:var(--pad-cell-x);
  inset-block-start:50%;
  transform:translateY(-50%);
  inline-size:var(--icon);
  block-size:var(--icon);
  pointer-events:none;
  background:var(--mist);
  -webkit-mask:var(--sk-caret) center / contain no-repeat;
          mask:var(--sk-caret) center / contain no-repeat;
}
:root{
  --sk-caret:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
}
.sk-select::-ms-expand{ display:none }
/* الخيار الفاضى بيتقرا «اختار» مش فراغ */
.sk-select:invalid, .sk-select[data-empty="1"]{ color:var(--mist) }

/* ── الأزرار — تلات مقاسات وبس ────────────────────────────────────────
   sm · md (الافتراضى) · lg. مفيش مقاس رابع، ومفيش حشوه مكتوبه على
   زرار لوحده. كلهم على نفس --pad-btn-* بدرجه فوق أو تحت. */
.sk-btn{
  display:inline-flex; align-items:center; justify-content:center;
  gap:var(--gap-icon);
  padding-block:var(--pad-btn-y);
  padding-inline:var(--pad-btn-x);
  font-weight:var(--fw-semibold);
  border:1px solid var(--line2); background:var(--surf); color:var(--ink);
  cursor:pointer; text-decoration:none; white-space:nowrap;
  transition:background-color .15s ease, border-color .15s ease, color .15s ease;
}
.sk-btn--sm{
  --pad-btn-y:var(--sp-1);
  padding-inline:var(--sp-3);
  font-size:var(--fs-xs);
}
.sk-btn--lg{
  --pad-btn-y:var(--sp-3);
  padding-inline:var(--sp-6);
  font-size:var(--fs-lg);
}
/* زرار أيقونه بس — مربّع، وعرضه = ارتفاعه، فبيفضل هدف لمس كامل */
.sk-btn--icon{
  padding-inline:0;
  inline-size:var(--h-control);
  min-inline-size:var(--tap); min-block-size:var(--tap);
}

.sk-btn:hover{ background:var(--paper2); border-color:var(--line2) }
.sk-btn:active{ transform:translateY(1px) }
.sk-btn--primary{ background:var(--solid); border-color:var(--solid); color:var(--solid-tx) }
.sk-btn--primary:hover{ background:var(--solid-hv); border-color:var(--solid-hv); color:var(--solid-tx) }
.sk-btn--accent{ background:var(--accent); border-color:var(--accent); color:var(--accent-tx) }
.sk-btn--accent:hover{ background:var(--accent-2); border-color:var(--accent-2) }
.sk-btn--danger{ background:var(--err-fill); border-color:var(--err-fill); color:var(--fill-tx) }
.sk-btn--danger:hover{ background:var(--err); border-color:var(--err) }
.sk-btn--ghost{ background:transparent; border-color:transparent; color:var(--slate) }
.sk-btn--ghost:hover{ background:var(--paper2); color:var(--ink) }
.sk-btn[disabled], .sk-btn[aria-disabled="true"]{
  opacity:.5; cursor:not-allowed; transform:none;
}
.sk-btn[disabled]:hover{ background:var(--surf) }

/* صف أزرار — مسافه واحده، من الـgap مش من هوامش على كل زرار */
.sk-btnrow{ display:flex; flex-wrap:wrap; gap:var(--gap-inline); align-items:center }

/* ── صفوف الفورم — إيقاع واحد ─────────────────────────────────────────
   ⚠️ العيب المقيس على admin/orders: تلتاشر صف فلتر، المسافه بين
      الليبل والحقل مختلفه من صف لصف والمسافه بين الصفوف كمان.
      الحل هنا **إيقاع بس** — مفيش إعادة ترتيب للفلتر نفسه (حزمه تانيه).
      المسافه بين الصفوف من `gap` على الحاويه، مش من margin على كل صف:
      الهوامش بتتجمّع وبتتلغى مع بعض، والـgap لأ. */
.sk-form{ display:flex; flex-direction:column; gap:var(--gap-formrow) }
.sk-formgrid{
  display:grid; gap:var(--gap-formrow);
  grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));
}
.sk-form > *, .sk-formgrid > *{ margin-block:0 }
/* عنوان القسم فوق مجموعة الحقول — العلاقه بينه وبين أول حقل واحده */
.sk-form__h{
  margin:0 0 var(--gap-card);
  font-size:var(--fs-lg); font-weight:var(--fw-semibold); color:var(--ink);
}
/* شريط الفعل تحت الفورم — مربوط بالفورم بمسافة قسم، مش عايم */
.sk-form__act{
  display:flex; flex-wrap:wrap; gap:var(--gap-inline);
  align-items:center;
  margin-block-start:var(--gap-section);
  padding-block-start:var(--pad-card);
  border-block-start:1px solid var(--line);
}


/* ═══════════  ٩) حساب التكلفه الحيّه — كتالوج المسوّق  ══════════════════
   ──────────────────────────────────────────────────────────────────────
   المواصفه §8: الحاسبه جوّه الكتالوج، مش صفحه تانيه ومش عرض ساكن.
   تلات أرقام منفصله ظاهره (سعر التاجر · عمولة شاركس · أساس الشحن)،
   وبعدين هامش المسوّق، وبعدين سعر العميل ومكسبه — بيتحدّثوا وهو بيكتب.

   sk-calc__row--gap هى الحاله اللى الرقم فيها مش موجود فى الداتا.
   بتتعرض صريحه. ممنوع تتحسب ولا تتخفى ولا يتحط صفر مكانها.
   ══════════════════════════════════════════════════════════════════════ */
.sk-calc{
  border:1px solid var(--line); border-radius:var(--r);
  overflow:hidden; background:var(--surf);
}
.sk-calc__row{
  display:flex; align-items:baseline; justify-content:space-between; gap:var(--gap-card);
  padding:var(--pad-cell-y) var(--pad-cell-x);
  border-block-end:1px solid var(--line);
  font-size:var(--fs-sm);
}
.sk-calc__row:last-child{ border-block-end:0 }
.sk-calc__k{ color:var(--slate); min-inline-size:0 }
.sk-calc__v{
  font-family:var(--f-num); font-variant-numeric:tabular-nums;
  direction:ltr; unicode-bidi:isolate; font-weight:var(--fw-medium);
  white-space:nowrap;
}
.sk-calc__row--head{
  background:var(--paper2); color:var(--mist);
  font-size:var(--fs-2xs); font-weight:var(--fw-bold);
  letter-spacing:.04em; text-transform:uppercase;
}
.sk-calc__row--head .sk-calc__v{ font-family:var(--f-ui); letter-spacing:.04em }
.sk-calc__row--gap{ background:var(--warn-bg); color:var(--warn-tx) }
.sk-calc__row--gap .sk-calc__k{ color:var(--warn-tx); font-weight:var(--fw-semibold) }
.sk-calc__row--gap .sk-calc__v{
  font-family:var(--f-ui); font-size:var(--fs-2xs); font-weight:var(--fw-semibold);
  white-space:normal; text-align:end;
}
.sk-calc__row--sum{ background:var(--paper2); font-weight:var(--fw-bold) }
.sk-calc__row--earn{ background:var(--ok-bg); color:var(--ok-tx); font-weight:var(--fw-bold) }
.sk-calc__row--earn .sk-calc__v{ font-size:var(--fs-lg) }
.sk-calc__row--input{ background:var(--accent-soft) }
.sk-calc__row--input .sk-input{ max-inline-size:7.5rem; padding-block:var(--sp-1) }


/* ═══════════  ١٠) أرباح المسوّق — أربع خطوط  ═══════════════════════════
   إجمالى · معلّق · تحت الاسترداد · صافى مستحق. ممنوع يتجمّعوا فى رقم.
   الفرق بينهم هو الفرق بين «كسبت» و«تقدر تقبض».
   ══════════════════════════════════════════════════════════════════════ */
.sk-earn{ display:grid; grid-template-columns:repeat(auto-fit,minmax(12rem,1fr)); gap:var(--gap-grid) }
.sk-earn__c{
  background:var(--surf); border:1px solid var(--line); border-radius:var(--r);
  padding:var(--pad-card); display:flex; flex-direction:column; gap:var(--gap-label);
  border-inline-start:3px solid var(--line2);
}
.sk-earn__c--gross  { border-inline-start-color:var(--slate) }
.sk-earn__c--pending{ border-inline-start-color:var(--warn) }
.sk-earn__c--claw   { border-inline-start-color:var(--err) }
.sk-earn__c--net    { border-inline-start-color:var(--ok) }
.sk-earn__n{
  font-family:var(--f-num); font-variant-numeric:tabular-nums;
  direction:ltr; unicode-bidi:isolate;
  font-size:var(--fs-2xl); font-weight:var(--fw-bold); line-height:1.2;
}
.sk-earn__l{ font-size:var(--fs-sm); font-weight:var(--fw-semibold); color:var(--ink) }
.sk-earn__w{ font-size:var(--fs-2xs); color:var(--mist) }


/* ═══════════  ١١) الشبكه والتخطيط  ═════════════════════════════════════ */
.sk-grid{ display:grid; gap:var(--gap-grid) }
.sk-grid--cards{ grid-template-columns:repeat(auto-fill,minmax(20rem,1fr)) }
.sk-grid--tiles{ grid-template-columns:repeat(auto-fit,minmax(10rem,1fr)); gap:var(--gap-grid) }
.sk-card{
  background:var(--surf); border:1px solid var(--line); border-radius:var(--r);
  padding:var(--pad-card); display:flex; flex-direction:column; gap:var(--gap-card);
  min-inline-size:0;
}
.sk-card__t{ margin:0; font-size:var(--fs-lg); font-weight:var(--fw-semibold); line-height:1.5 }
.sk-chips{ display:flex; flex-wrap:wrap; gap:var(--gap-label) }
.sk-chip{
  border:1px solid var(--line); background:var(--paper2); color:var(--slate);
  border-radius:var(--r-xs);
  min-block-size:var(--h-chip); padding-block:0; padding-inline:var(--pad-chip-x);
  display:inline-flex; align-items:center;
  font-size:var(--fs-2xs); white-space:nowrap;
}
.sk-chip--ok  { color:var(--ok-tx);   background:var(--ok-bg);   border-color:var(--ok-br) }
.sk-chip--warn{ color:var(--warn-tx); background:var(--warn-bg); border-color:var(--warn-br) }
.sk-chip--err { color:var(--err-tx);  background:var(--err-bg);  border-color:var(--err-br) }

/* الصفحه نفسها ممنوع تزحلق أفقى — الشرط ده على الست لوحات */
.sk-page{ max-inline-size:100%; overflow-x:clip }


/* ═══════════  ١٢) العروض  ══════════════════════════════════════════════
   ١٤٤٠ · ١٠٢٤ · ٧٦٨ · ٣٧٥ · ٣٢٠ — كلهم متجرّبين.
   ٣٢٠ هو أضيق جهاز لسه بيتباع؛ لو اشتغل عليه بيشتغل على اللى فوقه.
   ══════════════════════════════════════════════════════════════════════ */
@media (max-width:767.98px){
  .sk-grid--cards{ grid-template-columns:1fr }
  .sk-state{ padding:var(--sp-6) var(--sp-4) }
  .sk-earn{ grid-template-columns:1fr }
}
@media (max-width:400px){
  .sk-grid--tiles{ grid-template-columns:1fr 1fr }
  .sk-tile__n{ font-size:var(--fs-2xl) }
  .sk-calc__row{ padding-inline:var(--sp-2) }
  .sk-badge__txt{ max-inline-size:9rem }
}


/* ═══════════  ١٣) الترقيم  ═══════════════════════════════════════════════
   ──────────────────────────────────────────────────────────────────────
   مقيس يوم 2026-08-30 على عرض ٣٢٠: شريط الترقيم بيطلع **٥٢ عنصر برّه
   الشاشه**. والـ<body> عليه overflow-x:hidden، يعنى الزياده مابتتزحلقش —
   بتتقصّ. النتيجه إن المسوّق على تليفون صغيّر مش قادر يوصل للصفحه ٢
   أصلاً: الأرقام موجوده فى الصفحه بس مقصوصه ومفيش طريقه توصلها.

   الصفحه نفسها مابتزحلقش أفقى (scrollWidth == clientWidth == 320)،
   فالفحص الآلى كان بيعدّى — الكسر مكانش سكرول، كان **قصّ ساكت**.

   الحل: الشريط بيلفّ، ولو لسه مش لاقى مكان بيزحلق **جوّه حاويته هو**.
   ══════════════════════════════════════════════════════════════════════ */
.pagination{ flex-wrap:wrap; row-gap:var(--sp-1) }

@media (max-width:480px){
  /* ⚠️ اتقاس تانى يوم 2026-09-03 على /admin/orders عرض ٣٢٠:
       **تمن روابط ترقيم لسه مش موصوله** — الصفحات ٤ لـ٨ و١٨ و١٩ و«»».
       إحداثياتهم بالسالب (‎-85‎ لحد ‎-553‎) ومفيش أى أب بيزحلق يوصلهم.

     السبب إن العلاج القديم كان بيدّى الزحلقه لـ`nav:has(> .pagination)`
     — يعنى بيفترض إن الترقيم ملفوف فى <nav>. ترقيم لارافيل ملفوف كده
     فعلاً، لكن ترقيم DataTables لأ (بيتحطّ فى <div class="dataTables_
     paginate">)، والصفحه فيها **الاتنين**. فالقاعده اللى بتخلّى الشريط
     `nowrap` كانت شغّاله على الاتنين، والزحلقه على واحد بس.

     يعنى العلاج القديم كان بيصلّح نص المشكله وبيوسّع النص التانى.

     العلاج دلوقتى: **الشريط نفسه هو اللى بيزحلق**، مش حاويته. فمش مهم
     مين لافّه ولا إيه اسم الوسم. */
  .pagination{
    flex-wrap:nowrap;
    inline-size:auto;
    max-inline-size:100%;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    justify-content:flex-start;
    margin-inline:0;
    /* شريط الزحلقه نفسه ما ياكلش من ارتفاع الصف */
    scrollbar-width:thin;
  }
  .pagination > *{ flex:0 0 auto }
  .pagination .page-link{ padding-inline:var(--sp-2) }

  /* والحاويات لو كانت موجوده بتفضل تزحلق كمان — حزام وحمّالات */
  nav:has(> .pagination),
  .sk-pagewrap,
  .dataTables_paginate{
    max-inline-size:100%; overflow-x:auto; -webkit-overflow-scrolling:touch;
  }
}


/* ═══════════  ١٤) الأيقونات — عائله واحده  ══════════════════════════════
   ──────────────────────────────────────────────────────────────────────
   العائله Feather، وبتترسم SVG جوّانى من skIcon() (السبب الكامل مكتوب
   فى app/Http/Helper/index.php فوق الداله).

   القواعد الأربعه اللى الملف ده بيفرضها:

     ١. مقاس واحد — var(--icon). ١٦px فى اللوحات، ٢٠px فى المخازن،
        والفرق جاى من توكن مش من كلاس على كل أيقونه.
     ٢. وزن خط واحد — stroke-width بيتحطّ فى الـSVG نفسه بقيمه ٢،
        وnon-scaling-stroke بيخلّيه ثابت مهما اتغيّر المقاس.
     ٣. مسافه واحده للنص — الأب بياخد gap:var(--gap-icon). ممنوع هامش
        على الأيقونه نفسها؛ الهوامش هى اللى كانت بتخلّى كل صف فى الدرج
        بمسافه مختلفه عن اللى تحته.
     ٤. الخط الأساسى — الأيقونه جوّه سطر نص بتنزل .125em عشان مركزها
        البصرى يقع على وسط الحرف مش على أعلاه.

   ⚠️ الانعكاس فى RTL: الكلاس sk-i--flip بيتحطّ من skIcon() على
      الأيقونات الأفقيه بس. البحث والجرس والساعه والعربيّه والشخص
      مابيتقلبوش — عربيّة تسوّق مقلوبه لسه عربيّة تسوّق، لكن سهم
      «التالى» غير مقلوب بيشاور على الصفحه اللى فاتت. */
.sk-i{
  inline-size:var(--icon);
  block-size:var(--icon);
  flex:0 0 auto;
  vertical-align:-.125em;
  stroke-width:2;
  vector-effect:non-scaling-stroke;
  overflow:visible;
}
.sk-i--sm{ --icon:14px }
.sk-i--lg{ --icon:20px }
.sk-i--xl{ --icon:28px }
.sk-i--2xl{ --icon:40px }

[dir="rtl"] .sk-i--flip{ transform:scaleX(-1) }
/* الكلاس القديم لسه شغّال — كان فى الطقم من WP-UI-02 */
[dir="rtl"] .sk-icon-flip{ transform:scaleX(-1) }

@keyframes sk-i-spin{ to{ transform:rotate(360deg) } }
.sk-i--spin{ animation:sk-i-spin 1s linear infinite; transform-origin:50% 50% }
@media (prefers-reduced-motion:reduce){ .sk-i--spin{ animation-duration:2.4s } }

/* أى صف فيه أيقونه + نص — مسافه واحده، ومن gap مش من margin */
.sk-iconrow{ display:inline-flex; align-items:center; gap:var(--gap-icon) }


/* ═══════════  ١٥) أرضية التركيز  ═══════════════════════════════════════
   ──────────────────────────────────────────────────────────────────────
   المواصفه §6: حلقة تركيز ظاهره على كل عنصر تفاعلى، وممنوع
   outline:none من غير بديل.

   القاعده تحت عامّه بالقصد — بتغطّى عناصر القوالب التلاته كمان، مش بس
   كلاسات sk-. أى زرار أو لينك أو حقل فى أى لوحه بياخد حلقه.

   :focus-visible معناها إن الماوس مابيرسمش إطار على كل دوسه — الكيبورد
   بس. ودى الحاجه اللى خلّت المطوّرين يشيلوا الـoutline من الأساس. */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[tabindex]:not([tabindex="-1"]):focus-visible,
[role="button"]:focus-visible,
[role="tab"]:focus-visible,
[role="menuitem"]:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:2px;
}

/* تخطّى للمحتوى — أول حاجه بالـtab، ومابتبانش غير وهى مركّز عليها */
.sk-skip{
  position:absolute; inset-block-start:0; inset-inline-start:0;
  transform:translateY(-120%);
  z-index:var(--z-modal);
  padding:var(--pad-btn-y) var(--pad-btn-x);
  background:var(--solid); color:var(--solid-tx);
  border-radius:0 0 var(--r) 0; font-weight:var(--fw-semibold);
}
.sk-skip:focus{ transform:translateY(0) }


/* ═══════════  ١٦) الدرج على الموبايل  ══════════════════════════════════
   ──────────────────────────────────────────────────────────────────────
   ⚠️ العيب المقيس على warehouse-375: الدرج كان بيفتح من الشمال فى شاشه
      RTL. ده مش تفضيل — ده اتجاه غلط. فى RTL الدرج بيقعد على اليمين
      لأن ده مكان بداية السطر، وزرار الهامبرجر نفسه هناك.

   الحل بيستعمل inset-inline-start بس — يعنى «بداية السطر» — فبيقع يمين
   فى RTL وشمال فى LTR من غير أى قاعده تانيه ولا أى [dir=]. القاعده
   اللى كانت غلط كانت مكتوبه left:-250px.

   ⚠️ والعيب التانى: مكانش فيه تظليل ورا الدرج المفتوح، فالصفحه اللى
      تحته بتفضل مقرويه بالكامل والطبقتين بيتخانقوا على العين. */
.sk-scrim{
  position:fixed; inset:0;
  background:var(--scrim);
  z-index:1049;
  opacity:0; visibility:hidden;
  transition:opacity .18s ease, visibility .18s;
}
.sk-scrim.is-on{ opacity:1; visibility:visible }
body.sk-locked{ overflow:hidden }

@media (prefers-reduced-motion:reduce){
  .sk-scrim{ transition:none }
}

/* ── بنود الدرج — مسافه بدل الفواصل ──────────────────────────────────
   ⚠️ العيب المقيس: فاصل تحت كل بند. الفاصل معناه «اللى فوق واللى تحت
      حاجتين مختلفتين»؛ لما يتحطّ بين كل اتنين، خمس بنود مترابطه بيبقوا
      شكلهم خمس حاجات غريبه عن بعض.
      العلاج: المجموعه بتتعرّف بالمسافه (--gap-menugrp) وبعنوان مجموعه،
      والبنود جوّه المجموعه بينهم --gap-menu وبس. */
.sk-menu{
  list-style:none; margin:0;
  padding:var(--pad-card) var(--gap-card);
  display:flex; flex-direction:column; gap:var(--gap-menu);
}
.sk-menu__grp{
  margin-block-start:var(--gap-menugrp);
  padding-inline:var(--gap-card);
  font-size:var(--fs-2xs); font-weight:var(--fw-bold);
  letter-spacing:.06em; text-transform:uppercase;
  color:var(--mist);
}
.sk-menu__grp:first-child{ margin-block-start:0 }
.sk-menu a, .sk-menu button{
  display:flex; align-items:center; gap:var(--gap-icon);
  min-block-size:var(--tap);
  padding-block:var(--pad-btn-y);
  padding-inline:var(--gap-card);
  border-radius:var(--r);
  color:inherit; text-decoration:none;
  font-size:var(--fs-md); font-weight:var(--fw-medium);
  border:1px solid transparent;
}
.sk-menu a:hover, .sk-menu button:hover{ background:var(--accent-soft) }
.sk-menu [aria-current="page"]{
  background:var(--accent-soft); border-color:var(--accent-line);
  font-weight:var(--fw-semibold);
}


/* ═══════════  ١٧) تحكّمات الشريط العلوى  ═══════════════════════════════
   ──────────────────────────────────────────────────────────────────────
   ⚠️ العيبين المقيسين: لسان تروس ملحوم فى حافة الشاشه، وكبسولة كوره
      تحت على اليمين. الاتنين ثابتين فوق المحتوى فى كل عرض، والاتنين
      بيغطّوا كلام فعلاً على ٣٧٥ و٣٢٠.

   الحل مش إخفاء — الوظيفتين لسه موجودتين. اتنقلوا لمكانهم الطبيعى: جنب
   قايمة الحساب فى الشريط العلوى، زى أى تحكّم بيخصّ الحساب. */
.sk-tbc{
  position:relative;
  display:inline-flex; align-items:center;
}
.sk-tbc__btn{
  display:inline-flex; align-items:center; justify-content:center;
  gap:var(--sp-1);
  min-inline-size:var(--tap); min-block-size:var(--tap);
  padding-inline:var(--sp-2);
  border:1px solid transparent; border-radius:var(--r);
  background:transparent; color:inherit; cursor:pointer;
  font-family:var(--f-ui); font-size:var(--fs-xs); font-weight:var(--fw-semibold);
  line-height:1;
}
.sk-tbc__btn:hover{ background:var(--accent-soft) }
.sk-tbc__btn[aria-expanded="true"]{ background:var(--accent-soft); border-color:var(--accent-line) }
.sk-tbc__code{ letter-spacing:.04em }

.sk-tbc__pop{
  position:absolute;
  inset-block-start:calc(100% + var(--sp-1));
  inset-inline-end:0;
  z-index:var(--z-dropdown);
  min-inline-size:9rem;
  padding:var(--sp-1);
  background:var(--surf); color:var(--ink);
  border:1px solid var(--line);
  border-radius:var(--r);
  box-shadow:var(--sh);
  display:none;
}
.sk-tbc.is-open .sk-tbc__pop{ display:block }
.sk-tbc__pop a, .sk-tbc__pop button{
  display:flex; align-items:center; gap:var(--gap-icon);
  inline-size:100%;
  min-block-size:var(--tap);
  padding-block:var(--pad-btn-y); padding-inline:var(--sp-3);
  border:0; border-radius:var(--r-sm);
  background:transparent; color:inherit; text-decoration:none;
  font-family:var(--f-ui); font-size:var(--fs-md); text-align:start;
  cursor:pointer;
}
.sk-tbc__pop a:hover, .sk-tbc__pop button:hover{ background:var(--paper2) }
.sk-tbc__pop [aria-current="true"]{ font-weight:var(--fw-semibold); background:var(--accent-soft) }


/* ═══════════  ١٨) البادج على أيقونه  ═══════════════════════════════════
   ⚠️ العيب المقيس على warehouse-375: عدّاد الإشعارات قاعد نصّه برّه
      الجرس. السبب إن القالب بيموضّعه بـtop/right ثابتين وهو مش عارف
      مقاس الأيقونه.
      هنا الحاويه هى المرجع (position:relative) والبادج بيتعلّق فى
      الركن المنطقى بإزاحه نسبيّه من مقاس الأيقونه — فبيفضل مترّس مهما
      اتغيّر المقاس أو الاتجاه. */
.sk-iconbtn{
  position:relative;
  display:inline-flex; align-items:center; justify-content:center;
  min-inline-size:var(--tap); min-block-size:var(--tap);
  border:1px solid transparent; border-radius:var(--r);
  background:transparent; color:inherit; cursor:pointer;
}
.sk-iconbtn:hover{ background:var(--accent-soft) }
.sk-iconbtn__n{
  position:absolute;
  inset-block-start:calc(50% - var(--icon));
  inset-inline-end:calc(50% - var(--icon));
  min-inline-size:1.125rem;
  block-size:1.125rem;
  padding-inline:var(--sp-1);
  display:flex; align-items:center; justify-content:center;
  border-radius:var(--r-full);
  background:var(--err-fill); color:var(--fill-tx);
  font-family:var(--f-num); font-variant-numeric:tabular-nums;
  font-size:var(--fs-2xs); font-weight:var(--fw-bold);
  line-height:1;
  direction:ltr; unicode-bidi:isolate;
  box-shadow:0 0 0 2px var(--surf);
}


/* ═══════════  ١٩) الصوره الشخصيه  ══════════════════════════════════════
   صوره حقيقيه أو أول حرفين من الاسم. السبب الكامل مكتوب فى أول
   resources/views/components/sharks/avatar.blade.php.
   ══════════════════════════════════════════════════════════════════════ */
.sk-av{
  --sk-av-size:36px;
  inline-size:var(--sk-av-size);
  block-size:var(--sk-av-size);
  flex:0 0 auto;
  border-radius:var(--r-full);
  object-fit:cover;
  background:var(--paper2);
  border:1px solid var(--line);
  display:inline-flex; align-items:center; justify-content:center;
  overflow:hidden;
}
.sk-av--init{
  --sk-av-hue:0;
  background:hsl(var(--sk-av-hue) 42% 92%);
  border-color:hsl(var(--sk-av-hue) 34% 80%);
  color:hsl(var(--sk-av-hue) 48% 26%);
  font-family:var(--f-ui);
  font-size:calc(var(--sk-av-size) * .38);
  font-weight:var(--fw-bold);
  line-height:1;
  letter-spacing:.02em;
  user-select:none;
}
:root[data-theme="dark"] .sk-av--init,
body.dark-only .sk-av--init{
  background:hsl(var(--sk-av-hue) 26% 22%);
  border-color:hsl(var(--sk-av-hue) 24% 34%);
  color:hsl(var(--sk-av-hue) 50% 86%);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]):not([data-theme="dark"]) .sk-av--init{
    background:hsl(var(--sk-av-hue) 26% 22%);
    border-color:hsl(var(--sk-av-hue) 24% 34%);
    color:hsl(var(--sk-av-hue) 50% 86%);
  }
}


/* ═══════════  ٢٠) بقايا الـselect الفاضى  ══════════════════════════════
   ──────────────────────────────────────────────────────────────────────
   ⚠️ العيب المقيس على admin-1440 و admin-375: كل select فاضى فى الفلتر
      بيرسم **كبسوله صغيّره مكسوره** جنبه — حتّه لون رأسيّه مالهاش معنى.

   السبب اتقاس على الـDOM الحى، مش اتخمّن:

     Select2 بيخفى الـ<select> الأصلى ويرسم بديله. الإخفاء عنده بالطريقه
     المعروفه:
         .select2-hidden-accessible{ height:1px!important; width:1px!important;
                                     clip:rect(0 0 0 0)!important; ... }
     الطريقه دى بتسيب العنصر موجود لقارئ الشاشه وبتشيله من الشاشه.

     بس `sharks-core.css` فيه:
         .form-control, .custom-select, … { height:auto !important }

     والـ<select> عليه الكلاسين. الاتنين !important، والملف بتاعنا
     بيتحمّل **بعد** select2.min.css فبيكسب. النتيجه إن الـ<select>
     المخفى بيرجع لارتفاعه الطبيعى (82px لسبع خيارات، 102px لستاشر)
     وبيتحسب فى التخطيط — والكبسوله اللى بتتشاف هى هو.

     يعنى مش «بقايا رسمه» ولا بق فى Select2 — ده عنصر حقيقى رجع للحياه
     من قاعده مالهاش علاقه.

   العلاج: بنرجّع عقد الإخفاء كامل هنا، والملف ده بيتحمّل **بعد**
   sharks-core.css فى الست لوحات. `clip-path:inset(50%)` جنب `clip`
   القديم عشان المتصفحات اللى بطّلت تحترم `clip`.

   ⚠️ ممنوع تستبدله بـdisplay:none. العنصر ده هو اللى بيحمل القيمه
      اللى بتتبعت مع الفورم واللى قارئ الشاشه بيقراها؛ إخفاؤه بالكامل
      بيكسر الاتنين.
   ══════════════════════════════════════════════════════════════════════ */
select.select2-hidden-accessible,
.select2-hidden-accessible{
  position:absolute !important;
  block-size:1px !important;
  inline-size:1px !important;
  height:1px !important;
  width:1px !important;
  min-block-size:0 !important;
  min-inline-size:0 !important;
  padding:0 !important;
  border:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0 0 0 0) !important;
  clip-path:inset(50%) !important;
  white-space:nowrap !important;
}

/* نفس الحكايه مع nice-select — بيخفى الأصلى بنفس الطريقه */
.nice-select + select,
select.nice-select-hidden{
  position:absolute !important;
  block-size:1px !important; inline-size:1px !important;
  padding:0 !important; border:0 !important; margin:-1px !important;
  overflow:hidden !important; clip:rect(0 0 0 0) !important;
  clip-path:inset(50%) !important; white-space:nowrap !important;
}

/* ── مظهر الـselect المرسوم من Select2 ────────────────────────────────
   البديل اللى Select2 بيرسمه لازم يبقى بنفس ارتفاع وحشوه ونصف قطر
   الحقول العاديه، وإلا الصف اللى فيه input جنب select بيطلع بارتفاعين. */
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple{
  min-block-size:var(--h-control) !important;
  border:1px solid var(--line2) !important;
  border-radius:var(--r-sm) !important;
  background:var(--surf) !important;
  padding-block:calc(var(--pad-btn-y) - 2px) !important;
  padding-inline:var(--pad-cell-x) !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered{
  padding:0 !important;
  line-height:var(--lh-control) !important;
  color:var(--ink) !important;
}
.select2-container--default .select2-selection--single .select2-selection__placeholder,
.select2-container--default .select2-search__field::placeholder{
  color:var(--mist) !important;
}
/* حلقة التركيز — Select2 بيشيل الـoutline من غير بديل */
.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--focus .select2-selection--multiple,
.select2-container--default.select2-container--open .select2-selection--single,
.select2-container--default.select2-container--open .select2-selection--multiple{
  outline:2px solid var(--accent) !important;
  outline-offset:1px !important;
  border-color:var(--accent) !important;
}


/* ═══════════  ٢١) إيقاع فورمات القوالب  ════════════════════════════════
   ──────────────────────────────────────────────────────────────────────
   اللوحات مبنيّه على أربع قوالب بوتستراب مختلفه، وكل قالب بيحطّ إيقاعه
   على `.form-group` و`.row`. النتيجه إن نفس العلاقه — «من الليبل للحقل»
   — ليها قيمه مختلفه فى كل شاشه.

   ⚠️ المقيس على admin/orders عرض ١٤٤٠ قبل الملف ده:
        · ١٣ صف فلتر، المسافه بين الصفوف ١٢px (دى كانت سليمه)
        · المسافه من الليبل للحقل: **قيمتين** — 15px و16px
        · ارتفاع الحقل 37px والنظام بيقول 38
        · الزرار الأساسى فوق عنوان «فلتر» بـ10px — رقم مالوش أى علاقه
          بأى مسافه تانيه فى الصفحه، فالاتنين بيقروا كأنهم مالهمش علاقه
          ببعض.

   ⚠️ **مش إعادة ترتيب للفلتر.** الحقول زى ما هى وترتيبها زى ما هو —
      حزمة تانيه. اللى بيتغيّر هنا **الإيقاع بس**.

   الطريقه: بنشيل حشوات أعمدة بوتستراب من صفوف الفورم وبنحطّ المسافه
   من `gap` — قيمه واحده صريحه بدل جمع حشوتين ما حدش بيحسبهم.
   ══════════════════════════════════════════════════════════════════════ */

.form-group{
  margin-block-end:var(--gap-formrow);
}
.form-group:last-child{ margin-block-end:0 }

.form-group.row{
  align-items:center;
  margin-inline:0;
  row-gap:var(--gap-label);
}
/* الحشوه بتتشال من العمودين، والمسافه بتتحطّ مره واحده على الليبل */
.form-group.row > [class*="col-"]{
  padding-inline:0;
}
.form-group.row > label[class*="col-"],
.form-group.row > .label-control[class*="col-"]{
  padding-inline-end:var(--gap-card);
  padding-block:0;
  margin-block-end:0;
  font-size:var(--fs-xs);
  font-weight:var(--fw-semibold);
  color:var(--slate);
  line-height:var(--lh-control);
}

/* تحت ٧٦٨ الصف بيتكسّر لسطرين: المسافه بقت رأسيّه، فالحشوه الأفقيه
   بتتصفّر — وإلا الليبل بيبان مزحلق عن الحقل اللى تحته. */
@media (max-width:767.98px){
  .form-group.row > label[class*="col-"],
  .form-group.row > .label-control[class*="col-"]{
    padding-inline-end:0;
  }
}

/* عنوان القسم فوق الفورم — علاقته بأول حقل نفس علاقة الكارت بمحتواه */
.content-t .form > h4,
.content-t .form > .h4,
.card-body > .form > h4{
  margin:0 0 var(--gap-card);
  font-size:var(--fs-2xl);
  font-weight:var(--fw-bold);
}

/* ⚠️ الزرار اللى فوق العنوان كان عايم بـ10px. دلوقتى بينهم مسافة قسم
   كامله — يعنى العين بتقراهم حاجتين منفصلتين بوضوح، مش حاجه واحده
   المسافه بينها غلط. */
.content-t{ margin-block-start:var(--gap-section) }


/* ═══════════  ٢٢) أزرار القوالب  ═══════════════════════════════════════
   `.btn` بتاعة بوتستراب موجوده فى الست لوحات بأربع حشوات مختلفه.
   بنوحّدها على نفس التوكنز بتاعة .sk-btn — يعنى زرار القالب وزرار
   الطقم بيبقى ليهم نفس الارتفاع ونفس الحشوه ونفس نصف القطر، وبيترصّوا
   جنب بعض فى نفس الصف من غير ما حد يظبّط بالإيد.
   ══════════════════════════════════════════════════════════════════════ */
.btn{
  min-block-size:var(--h-control);
  padding-block:var(--pad-btn-y);
  padding-inline:var(--pad-btn-x);
  border-radius:var(--r-sm);
  font-size:var(--fs-sm);
  font-weight:var(--fw-semibold);
  line-height:var(--lh-control);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:var(--gap-icon);
}
.btn-sm{
  --pad-btn-y:var(--sp-1);
  padding-inline:var(--sp-3);
  font-size:var(--fs-xs);
}
.btn-lg{
  --pad-btn-y:var(--sp-3);
  padding-inline:var(--sp-6);
  font-size:var(--fs-lg);
}
/* هوفر حقيقى: القوالب بتغيّر اللون بس، والفرق مش باين على كل الألوان.
   بنضيف تغيّر فى الحدّ كمان فالتأثير باين على الزراير الشفافه برضه. */
.btn:hover{ filter:brightness(.94) }
.btn:active{ transform:translateY(1px) }
.btn:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:2px;
}
/* ⚠️ بوتستراب بيرسم حلقة التركيز بـbox-shadow على :focus — يعنى بتظهر
   مع الماوس كمان، وبتختفى تحت أى قاعده بتعيد تعريف الظل. بنشيلها
   ونسيب الـoutline اللى فوق يمسك. */
.btn:focus{ box-shadow:none }

/* الحقول — نفس المقاس فى كل اللوحات */
.form-control,
.custom-select{
  min-block-size:var(--h-control);
  padding-block:var(--pad-btn-y);
  padding-inline:var(--pad-cell-x);
  border-radius:var(--r-sm);
  font-size:var(--fs-md);
  line-height:var(--lh-control);
}
.form-control:focus-visible,
.custom-select:focus-visible{
  outline:2px solid var(--accent);
  outline-offset:1px;
}
.form-control:focus{ box-shadow:none }
/* حالة الخطأ — حدّ أتخن وخلفيه، مش لون وبس */
.form-control.is-invalid,
.form-control[aria-invalid="true"]{
  border-color:var(--err);
  border-inline-start-width:3px;
  background:var(--err-bg);
}

/* الجداول — حشوة خليّه واحده، ورأس متراصّ مع الجسم */
.table th,
.table td{
  padding:var(--pad-cell-y) var(--pad-cell-x);
  vertical-align:middle;
}
.table th{
  text-align:start;
  font-size:var(--fs-2xs);
  font-weight:var(--fw-bold);
  letter-spacing:.04em;
  color:var(--mist);
}
/* الفلوس على اليمين بأرقام جدوليه — العمود بيترص فوق بعضه */
.table td.money, .table th.money,
.table .sk-money{
  text-align:end;
  font-family:var(--f-num);
  font-variant-numeric:tabular-nums;
}

/* الكروت — حشوه واحده ونصف قطر واحد وحدّ واحد */
.card{
  border-radius:var(--r);
  border:1px solid var(--line);
}
.card > .card-body{
  padding:var(--pad-card);
}
.card > .card-header{
  padding:var(--pad-card);
  border-block-end:1px solid var(--line);
}

/* الشارات — ارتفاع واحد وحشوه واحده ونصف قطر واحد */
.badge{
  min-block-size:var(--h-chip);
  padding-block:0;
  padding-inline:var(--pad-chip-x);
  border-radius:var(--r-xs);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:var(--fs-2xs);
  font-weight:var(--fw-semibold);
  line-height:1;
}
.badge.rounded-circle,
.badge.rounded-pill{ border-radius:var(--r-full) }


/* ═══════════  ٢٣) غلاف تحكّمات الشريط العلوى  ══════════════════════════
   ──────────────────────────────────────────────────────────────────────
   ⚠️ المقيس على /profile عرض ٣٧٥ بعد النقل: التحكّمين طلعوا **جوّه
      دايره كبيره** وواحد فوق التانى. السبب إن قالب Cuba بيحطّ على كل
      `li` فى `.nav-menus` خلفيه داير ومقاس ثابت وحشوه — والغلاف الجديد
      ورث القواعد دى.

   القاعده تحت بتصفّر شكل بند القايمه وبتخلّى الاتنين فى صف واحد.
   بتشتغل فى الست لوحات لإن الأربع قوالب بيعملوا نفس الحاجه بأسماء
   مختلفه، والمشترك بينهم إن الغلاف بند فى قايمه.
   ══════════════════════════════════════════════════════════════════════ */
.sk-tbcs{
  display:inline-flex;
  align-items:center;
  gap:var(--sp-1);
}
/* الغلاف وأى أب مباشر ليه — بند قايمه القالب */
.sk-tbcs,
li:has(> .sk-tbcs),
.sk-tbc-host{
  background:none !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
  margin:0 !important;
  inline-size:auto !important;
  block-size:auto !important;
  min-inline-size:0 !important;
  min-block-size:0 !important;
  list-style:none !important;
  float:none !important;
}
/* :has مش مدعومه فى كل نسخه — الكلاس ده بيتحطّ باليد على الـli فى
   اللوحات اللى القالب بتاعها بيلوّن البند */
.sk-tbc-host{ display:inline-flex !important; align-items:center !important }


/* ═══════════  ٢٤) أهداف اللمس  ═════════════════════════════════════════
   ──────────────────────────────────────────────────────────────────────
   المقيس على عرض ٣٢٠ فى كتالوج المسوّق: تسع عناصر تفاعليّه أصغر من
   الحدّ — أيقونات ١٦×٢٢ (ضيفه للمفضّله · شارك) وزرار الدرج ٣٤×٣٧
   ومربّع اختيار ١٤×١٤.

   الحلّ مش تكبير الأيقونه — الأيقونه مقاسها من --icon وده صح. اللى
   بيكبر هو **المساحه اللى بتستقبل الدوسه**، بحشوه حوالين الأيقونه.
   الشكل مايتغيّرش والصباع بيلاقى مكان يدوس فيه.

   ⚠️ الحدّ نفسه من --tap: ٣٦ فى اللوحات المكتبيّه، ٤٤ فى المخازن،
      و٤٤ على أى جهاز باللمس مهما كانت اللوحه (شوف §٨ فى التوكنز).
   ══════════════════════════════════════════════════════════════════════ */
.sk-tap,
.toggle-sidebar,
.sidebar-toggle,
.nav-control,
.button-menu-mobile,
.product-hover a,
.product-hover li > a,
.sk-product-card a.content-center{
  min-inline-size:var(--tap);
  min-block-size:var(--tap);
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

/* مربّعات الاختيار جوّه الجداول بتفضل بمقاسها — الصفّ كله هو الهدف
   هناك، وتكبيرها بيكسر ارتفاع الصف. برّه الجداول بتاخد مساحه. */
input[type="checkbox"]:not(table input):not(.sk-table input),
input[type="radio"]:not(table input):not(.sk-table input){
  inline-size:1.125rem;
  block-size:1.125rem;
  accent-color:var(--accent);
}

/* على جهاز باللمس الحدّ بيعلى لـ٤٤ من التوكن، فالقاعده اللى فوق
   بتكبر معاه لوحدها — مفيش رقم تانى مكتوب هنا. */

/* بقيّة الأهداف الصغيّره اللى القياس مسكها على ٣٢٠:
     · روابط الترقيم                       34×30
     · أيقونة مسار التنقّل وأيقونة السله    16×22
     · زرار قفل لوحة المظهر                26×26
   كلها بقت على --tap. النص والأيقونه فى مكانهم — الحشوه بس هى اللى
   كبرت. */
.pagination .page-link{
  min-inline-size:var(--tap);
  min-block-size:var(--tap);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding-inline:var(--sp-2);
}
.breadcrumb-item > a,
.cart-box > a,
.notification-box > a,
.sk-themefab__x{
  min-inline-size:var(--tap);
  min-block-size:var(--tap);
  display:inline-flex;
  align-items:center;
  justify-content:center;
}


/* ═══════════  ٢٥) المسافه من الأيقونه للنص — الشلّ  ════════════════════
   ──────────────────────────────────────────────────────────────────────
   ⚠️ اتقاس على `admin-1440` بعد التحويل: `#sidebar-menu a` عليه
      `display:flex` بس `gap:normal` — يعنى **صفر** مسافه، فالأيقونه
      ملزوقه فى الحرف الأول.

   قبل التحويل كانت خطوط الأيقونات بتاخد مسافتها من `margin` مكتوب فى
   القالب لكل عائله لوحدها (`.mdi{margin-right:10px}` وشبيهاتها).
   لما الأيقونه بقت `<svg>`، القواعد دى بطّلت تنطبق — والمسافه راحت.
   ودى نفس المشكله القديمه من ناحيه تانيه: المسافه كانت **بتاعة عائلة
   الأيقونه**، مش بتاعة العلاقه.

   العلاج: العلاقه بتاخد قيمتها من `--gap-icon` على الأب، مره واحده لكل
   درج فى النظام. مفيش margin على الأيقونه نفسها — الهوامش هى اللى
   بتخلّى كل صف بمسافه مختلفه.

   لوحة المخازن مش هنا: درجها ليه قاعدته فى `sharks-wh-sidebar.css`. */
#sidebar-menu a,
#sidebar-menu > li > a,
.left-side-menu #side-menu a,
.sidebar-wrapper .sidebar-link,
.sidebar-wrapper .sidebar-submenu a,
.navbar-nav .nav-link,
.dropdown-item,
.notify-item{
  gap:var(--gap-icon);
}
/* اللينكات اللى القالب سايبها inline — بتبقى flex عشان الـgap يشتغل */
#sidebar-menu a,
.left-side-menu #side-menu a,
.sidebar-wrapper .sidebar-link,
.dropdown-item{
  display:flex;
  align-items:center;
}


/* ═══════════  ٢٦) حقل بحث Select2 جوّه المتعدّد  ═══════════════════════
   ──────────────────────────────────────────────────────────────────────
   ⚠️ العيب الأصلى (الـ<select> المخفى اللى رجع لارتفاعه) اتصلّح فى §٢٠،
      والقياس أكّد: ٢٣٫٦×١٠٢ ← ١×١.

   بس فضلت **كبسوله تانيه**، أصغر: `.select2-search__field` — حقل البحث
   الجوّانى بتاع المتعدّد. قياسه ١١×٢٤ وعليه حدّ ١px ونصف قطر ٨px من
   ثيم الأدمن، فبيرسم مستطيل صغيّر مدوّر جوّه حقل فاضى.

   الحقل ده مش المفروض يبان: هو مكان الكتابه جوّه الحاويه، والحاويه هى
   اللى ليها الحدّ. بيتشال منه الحدّ والخلفيه وبياخد عرض معقول عشان
   المستخدم يلاقى مكان يدوس فيه ويكتب.
   ══════════════════════════════════════════════════════════════════════ */
.select2-container--default .select2-search--inline .select2-search__field,
.select2-container .select2-search--inline .select2-search__field{
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  outline:0;
  margin:0 !important;
  padding:0 !important;
  min-inline-size:8rem;
  block-size:var(--lh-control) !important;
  line-height:var(--lh-control) !important;
  font-family:var(--f-ui);
  font-size:var(--fs-md);
  color:var(--ink);
}
.select2-container--default .select2-selection--multiple .select2-selection__rendered{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--sp-1);
  margin:0;
  padding:0;
}
/* الشيبس اللى بتتولد لكل اختيار — نفس شيب الطقم */
.select2-container--default .select2-selection--multiple .select2-selection__choice{
  min-block-size:var(--h-chip);
  padding-block:0;
  padding-inline:var(--pad-chip-x);
  border-radius:var(--r-xs);
  border:1px solid var(--line2);
  background:var(--paper2);
  color:var(--ink);
  display:inline-flex;
  align-items:center;
  gap:var(--sp-1);
  margin:0;
  font-size:var(--fs-2xs);
}

/* نص بدل الرقم («مش مفصوله فى الداتا» · «السعر مش متحطّ») — خط الواجهه
   مش خط الأرقام. الـmono بيفرّق الحروف العربى ويطلّعها «م ش  م ف ص و ل ه». */
.sk-money--none{ font-family:var(--f-ui)!important; letter-spacing:0!important; font-variant-numeric:normal }


/* ═══════════  مبدّل اللغه «AR | EN» — partials/lang-seg (2026-09-29)  ═══
   كبسوله صغيره فيها الكودين، اللغه الحاليه مملوءه. مكانش ينفع الاسم الكامل:
   كان بيتكسر على الموبايل. العرض ثابت فمابيزقّش باقى الشريط. */
.sk-lseg{
  display:inline-flex; align-items:center; flex:none; gap:2px; padding:2px;
  border:1px solid var(--line); border-radius:var(--r-full, 999px);
  background:var(--surf); white-space:nowrap; direction:ltr;
}
.sk-lseg a{
  display:inline-flex; align-items:center; justify-content:center;
  min-inline-size:32px; block-size:26px; padding:0 6px;
  border-radius:var(--r-full, 999px);
  font-family:var(--f-ui); font-size:11.5px; font-weight:var(--fw-semibold, 600); letter-spacing:.04em; line-height:1;
  color:var(--mist); text-decoration:none!important;
  transition:background-color .15s ease, color .15s ease;
}
.sk-lseg a:hover{ color:var(--ink); background:var(--paper2) }
.sk-lseg a[aria-current="true"]{ background:var(--solid); color:var(--solid-tx)!important }
.sk-lseg a:focus-visible{ outline:2px solid var(--accent); outline-offset:1px }
/* قوالب اللوحات (UBold) بتلوّن أى لينك فى الشريط العلوى بـ!important — ده بيغلبها */
html body .sk-lseg a[aria-current="true"]{ background:var(--solid)!important; color:var(--solid-tx)!important }
html body .sk-lseg a:not([aria-current="true"]){ color:var(--mist)!important }
