/* نواة ستايلات القائمة الجانبية (sidebar-core.js) — بادئة .sbc-
   html[data-sidebar-style] يضبطه سكربت مبكّر في <head> قبل أول رسم، فتُخفى
   القائمة القديمة وتُحجز مساحة المختار منذ الإطار الأول بلا وميض.
   --sb-width = عرض القائمة المحجوز للمحتوى؛ الستايل يضبطه بـapi.setWidth،
   والقيم هنا افتراضيات ما قبل التركيب (ومطابقة لما سيضبطه الستايل). */

html[data-sidebar-style="rails"]{--sb-width:320px}
html[data-sidebar-style="halo"]{--sb-width:280px}
html[data-sidebar-style="classic"]{--sb-width:264px}
@media (max-width:980px){
  html[data-sidebar-style="rails"]{--sb-width:72px}
  html[data-sidebar-style="halo"],html[data-sidebar-style="classic"]{--sb-width:0px}
}
@media (max-width:600px){
  html[data-sidebar-style="rails"]{--sb-width:0px}
}

/* القائمة القديمة تبقى في DOM مصدراً للحقيقة، لكنها لا تُرسم — **بعد** أن
   تركّب النواة ستايلاً فعلاً (html.sbc-ready). لو تعطّل JS أو تأخّر تبقى
   القائمة الكلاسيكية ظاهرة: لا لوحة بلا قائمة أبداً. */
html.sbc-ready:not([data-sidebar-style="classic"]) #sidebar{display:none!important}
html.sbc-ready:not([data-sidebar-style="classic"]) .shell{
  grid-template-columns:minmax(0,1fr);
  padding-inline-start:var(--sb-width);
  transition:padding-inline-start .36s cubic-bezier(.22,1,.36,1);
}
html[data-sidebar-style="classic"] #sbStyleRoot,html:not(.sbc-ready) #sbStyleRoot{display:none}
/* عناصر الستايل كلها position:fixed — الجذر لا يأخذ خانة في شبكة .shell */
#sbStyleRoot{display:contents}

/* أرصفة ثابتة في بعض الصفحات تتمركز في عرض المحتوى بعرض الشريط القديم (264) */
html.sbc-ready #wrRoot{--wr-side:var(--sb-width)}
html.sbc-ready #ccRoot{--cc-side:var(--sb-width)}

/* زرّ القائمة في الشريط العلوي + الستارة — للشاشات الضيقة (وضع الدرج) */
.sbc-menu{display:none}
html[data-sbc-drawer]:not([data-sidebar-style="classic"]) .sbc-menu{display:grid;flex:none}
.sbc-scrim{position:fixed;inset:0;z-index:54;background:rgba(14,7,24,.48);opacity:0;visibility:hidden;
  transition:opacity .28s cubic-bezier(.22,1,.36,1),visibility 0s .28s;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
html[data-sbc-drawer-open] .sbc-scrim{opacity:1;visibility:visible;transition:opacity .28s cubic-bezier(.22,1,.36,1),visibility 0s}
html[data-sidebar-style="classic"] .sbc-scrim{display:none}

/* تركيب/تبديل الستايل: بلا انتقال مرئي للمساحة (لا قفز 320→72 عند الفتح) */
html.sbc-no-anim .shell,html.sbc-no-anim #sbStyleRoot *{transition:none!important}

@media (prefers-reduced-motion:reduce){
  html[data-sidebar-style] .shell,.sbc-scrim{transition:none!important}
}
