/* ==========================================================
   SogJob — طبقة التصميم الحديثة (RTL/LTR عبر الخصائص المنطقية)
   تُحمَّل بعد Bootstrap. كل المكونات بالبادئة sj-
   ========================================================== */
:root {
  --sj-font: 'Cairo', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  /* ألوان مأخوذة من شعار SogJob: الكحلي #0b274c */
  --sj-navy: #0b274c;
  --sj-navy-900: #07182f;
  --sj-primary: #20569e;
  --sj-primary-600: #1b4a88;
  --sj-primary-700: #0b274c;
  --sj-primary-100: #d9e8fc;
  --sj-primary-50: #f0f6ff;
  --sj-sky: #3272c7;
  --sj-accent: #f59e0b;
  --sj-ink: #0b1b33;
  --sj-ink-2: #334155;
  --sj-muted: #64748b;
  --sj-line: #e2e8f0;
  --sj-bg: #f4f7fb;
  --sj-card: #ffffff;
  --sj-success: #15803d;
  --sj-success-bg: #dcfce7;
  --sj-danger: #b91c1c;
  --sj-danger-bg: #fee2e2;
  --sj-radius: 16px;
  --sj-radius-sm: 10px;
  --sj-shadow: 0 1px 2px rgba(15, 23, 42, .05), 0 8px 24px rgba(15, 23, 42, .06);
  --sj-shadow-lg: 0 12px 40px rgba(15, 23, 42, .16);
}

.sj-ui {
  font-family: var(--sj-font);
  background: var(--sj-bg);
  color: var(--sj-ink);
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
}
.sj-ui a { color: var(--sj-primary-600); }
.sj-ui h1, .sj-ui h2, .sj-ui h3, .sj-ui h4, .sj-ui h5 { font-family: var(--sj-font); line-height: 1.35; }
.sj-ui .container { max-width: 1200px; overflow: visible; }
.sj-ui img { max-width: 100%; height: auto; }

/* إتاحة */
.skip-link { position: absolute; inset-block-start: 0; inset-inline-start: 0; z-index: 3000; background: #fff; color: var(--sj-primary-700); padding: .6rem 1rem; border: 2px solid var(--sj-primary); border-radius: 0 0 12px 12px; font-weight: 700; }
.sj-ui a:focus-visible, .sj-ui button:focus-visible, .sj-ui input:focus-visible, .sj-ui select:focus-visible, .sj-ui textarea:focus-visible, .sj-ui .btn:focus-visible {
  outline: 3px solid #fbbf24; outline-offset: 2px; border-radius: 8px;
}
@media (prefers-reduced-motion: reduce) { .sj-ui * { transition: none !important; animation: none !important; scroll-behavior: auto !important; } }

/* ---------- أزرار ---------- */
.sj-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: .5rem;
  padding: .62rem 1.15rem; border-radius: 12px; border: 1px solid transparent;
  font-weight: 700; font-size: .95rem; line-height: 1.2; text-decoration: none !important;
  cursor: pointer; transition: transform .15s ease, box-shadow .15s ease, background-color .15s ease;
  min-height: 44px;
}
.sj-btn--primary { background: linear-gradient(135deg, var(--sj-primary) 0%, var(--sj-primary-700) 100%); color: #fff !important; box-shadow: 0 6px 16px rgba(11, 39, 76, .30); }
.sj-btn--primary:hover { transform: translateY(-1px); box-shadow: 0 10px 22px rgba(11, 39, 76, .38); }
.sj-btn--soft { background: var(--sj-primary-50); color: var(--sj-primary-700) !important; }
.sj-btn--soft:hover { background: var(--sj-primary-100); }
.sj-btn--ghost { background: transparent; color: var(--sj-ink-2) !important; border-color: var(--sj-line); }
.sj-btn--ghost:hover { background: #fff; border-color: #cbd5e1; }
.sj-btn--accent { background: var(--sj-accent); color: #111827 !important; box-shadow: 0 6px 16px rgba(245, 158, 11, .3); }
.sj-btn--lg { padding: .85rem 1.6rem; font-size: 1.05rem; border-radius: 14px; }
.sj-btn--block { width: 100%; }

/* ---------- الهيدر والتنقل ---------- */
.sj-header { position: sticky; inset-block-start: 0; z-index: 1030; background: rgba(255, 255, 255, .9); -webkit-backdrop-filter: saturate(180%) blur(12px); backdrop-filter: saturate(180%) blur(12px); border-block-end: 1px solid var(--sj-line); }
.sj-nav { padding-block: .55rem; }
.sj-nav .container { display: flex; align-items: center; justify-content: space-between; gap: .75rem; flex-wrap: wrap; }
.sj-brand { display: inline-flex; align-items: center; gap: .6rem; text-decoration: none !important; color: var(--sj-ink) !important; font-weight: 800; font-size: 1.25rem; }
.sj-brand img { height: 38px; width: auto; border-radius: 10px; }
.sj-nav__links { list-style: none; display: flex; align-items: center; gap: .25rem; margin: 0; padding: 0; }
.sj-nav__link { display: inline-flex; align-items: center; gap: .45rem; padding: .5rem .95rem; border-radius: 999px; color: var(--sj-ink-2) !important; text-decoration: none !important; font-weight: 700; font-size: .95rem; transition: background-color .15s ease, color .15s ease; }
.sj-nav__link:hover { background: var(--sj-primary-50); color: var(--sj-primary-700) !important; }
.sj-nav__link.is-active { background: var(--sj-primary-50); color: var(--sj-primary-700) !important; box-shadow: inset 0 0 0 1px var(--sj-primary-100); }
.sj-nav__tools { display: flex; align-items: center; gap: .6rem; }
.sj-lang { display: inline-flex; align-items: center; gap: .4rem; padding: .45rem .9rem; border-radius: 999px; border: 1px solid var(--sj-line); background: #fff; color: var(--sj-ink-2) !important; font-weight: 700; font-size: .9rem; text-decoration: none !important; min-height: 40px; }
.sj-lang:hover { border-color: var(--sj-primary); color: var(--sj-primary-700) !important; }
.sj-toggler { border: 1px solid var(--sj-line); background: #fff; border-radius: 12px; width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; font-size: 1.4rem; color: var(--sj-ink); }
.sj-nav__mobile { display: none; align-items: center; gap: .5rem; }
.sj-nav__panel { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex: 1 1 auto; }
@media (max-width: 991.98px) {
  .sj-nav .container { flex-wrap: wrap; }
  .sj-nav__mobile { display: flex; }
  .sj-nav__panel { flex: 0 0 100%; flex-direction: column; align-items: stretch; padding: .75rem 0 .5rem; gap: .75rem; }
  .sj-nav__links { flex-direction: column; align-items: stretch; }
  .sj-nav__link { padding: .75rem 1rem; border-radius: 12px; }
  .sj-nav__tools .sj-lang--desktop { display: none; }
  .sj-nav__tools { flex-direction: column; align-items: stretch; }
}
@media (min-width: 992px) { .sj-nav__panel.collapse { display: flex !important; } }
.sj-navsearch { position: relative; }
.sj-navsearch input { border: 1px solid var(--sj-line); background: #f8fafc; border-radius: 999px; padding: .5rem 1rem; padding-inline-start: 2.4rem; min-height: 40px; width: 220px; font-size: .92rem; font-family: var(--sj-font); }
.sj-navsearch i { position: absolute; inset-inline-start: .9rem; inset-block-start: 50%; transform: translateY(-50%); color: var(--sj-muted); }
@media (max-width: 991.98px) { .sj-navsearch input { width: 100%; } }

/* ---------- الواجهة الترحيبية ---------- */
.sj-hero { position: relative; overflow: hidden; color: #fff; padding-block: 3.2rem 6rem; background: linear-gradient(135deg, var(--sj-navy-900) 0%, var(--sj-navy) 50%, var(--sj-primary) 100%); }
.sj-hero::before, .sj-hero::after { content: ""; position: absolute; border-radius: 50%; filter: blur(60px); opacity: .45; pointer-events: none; }
.sj-hero::before { width: 420px; height: 420px; background: var(--sj-sky); inset-block-start: -160px; inset-inline-end: -120px; }
.sj-hero::after { width: 340px; height: 340px; background: #f59e0b; inset-block-end: -200px; inset-inline-start: -100px; opacity: .28; }
.sj-hero .container { position: relative; z-index: 1; }
.sj-eyebrow { display: inline-flex; align-items: center; gap: .5rem; background: rgba(255, 255, 255, .14); border: 1px solid rgba(255, 255, 255, .25); padding: .3rem .9rem; border-radius: 999px; font-weight: 700; font-size: .9rem; }
.sj-hero__title { font-size: clamp(1.9rem, 4.6vw, 3.1rem); font-weight: 800; margin: 1rem 0 .6rem; color: #fff; max-width: 22ch; }
.sj-hero__sub { font-size: clamp(1rem, 2vw, 1.2rem); color: #d3e3f8; max-width: 60ch; margin: 0; }

.sj-search { margin-block-start: 1.8rem; background: #fff; color: var(--sj-ink); border-radius: 20px; padding: .9rem; box-shadow: var(--sj-shadow-lg); }
.sj-search__row { display: grid; grid-template-columns: 1.7fr 1fr 1fr auto; gap: .6rem; }
.sj-field { position: relative; }
.sj-field i { position: absolute; inset-inline-start: .95rem; inset-block-start: 50%; transform: translateY(-50%); color: var(--sj-muted); pointer-events: none; }
.sj-field input, .sj-field select { width: 100%; min-height: 50px; border: 1px solid var(--sj-line); border-radius: 12px; padding: .6rem .9rem; padding-inline-start: 2.6rem; background: #f8fafc; font-family: var(--sj-font); font-size: 1rem; color: var(--sj-ink); }
.sj-field input:focus, .sj-field select:focus { background: #fff; border-color: var(--sj-primary); }
.sj-search__more { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem; margin-block-start: .6rem; padding-inline: .2rem; }
.sj-search__more a { font-weight: 700; font-size: .9rem; text-decoration: none; }
.sj-adv { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; margin-block-start: .6rem; }
@media (max-width: 991.98px) { .sj-search__row { grid-template-columns: 1fr 1fr; } .sj-search__row .sj-field--kw { grid-column: 1 / -1; } .sj-search__row .sj-btn { grid-column: 1 / -1; } }
@media (max-width: 575.98px) { .sj-search__row { grid-template-columns: 1fr; } .sj-adv { grid-template-columns: 1fr; } }

/* ---------- بطاقات المناطق ---------- */
.sj-regions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .9rem; margin-block-start: -3.2rem; position: relative; z-index: 2; }
.sj-region { display: flex; align-items: center; gap: .85rem; background: #fff; border: 1px solid var(--sj-line); border-radius: var(--sj-radius); padding: .95rem 1.1rem; text-decoration: none !important; color: var(--sj-ink) !important; box-shadow: var(--sj-shadow); transition: transform .15s ease, box-shadow .15s ease; min-height: 76px; }
.sj-region:hover { transform: translateY(-2px); box-shadow: var(--sj-shadow-lg); }
.sj-region__icon { width: 46px; height: 46px; border-radius: 14px; display: inline-flex; align-items: center; justify-content: center; font-size: 1.4rem; flex: 0 0 auto; background: var(--sj-primary-50); color: var(--sj-primary-700); }
.sj-region--gulf .sj-region__icon { background: #fef3c7; color: #b45309; }
.sj-region--europe .sj-region__icon { background: #cffafe; color: #0e7490; }
.sj-region__name { font-weight: 800; font-size: 1.05rem; line-height: 1.2; display: block; }
.sj-region__count { color: var(--sj-muted); font-size: .85rem; }
.sj-region.is-active { border-color: var(--sj-primary); box-shadow: 0 0 0 3px var(--sj-primary-100), var(--sj-shadow); }
@media (max-width: 575.98px) { .sj-regions { gap: .5rem; } .sj-region { flex-direction: column; text-align: center; padding: .75rem .4rem; gap: .4rem; } .sj-region__name { font-size: .92rem; } }

/* ---------- التخطيط والنتائج ---------- */
.sj-main { padding-block: 2rem 3rem; }
.sj-layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 1.8rem; align-items: start; }
@media (max-width: 991.98px) { .sj-layout { grid-template-columns: minmax(0, 1fr); } }
.sj-sec-title { display: flex; align-items: center; gap: .6rem; font-size: 1.4rem; font-weight: 800; margin: 0 0 1rem; }
.sj-sec-title small { font-weight: 600; color: var(--sj-muted); font-size: .9rem; }
.sj-chips { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin-block-end: 1rem; }
.sj-chip { display: inline-flex; align-items: center; gap: .4rem; padding: .35rem .85rem; border-radius: 999px; border: 1px solid var(--sj-line); background: #fff; color: var(--sj-ink-2) !important; text-decoration: none !important; font-weight: 700; font-size: .88rem; min-height: 36px; }
.sj-chip:hover { border-color: var(--sj-primary); color: var(--sj-primary-700) !important; }
.sj-chip.is-active { background: var(--sj-primary); border-color: var(--sj-primary); color: #fff !important; }
.sj-chip--filter { background: var(--sj-primary-50); border-color: var(--sj-primary-100); color: var(--sj-primary-700) !important; }
.sj-chip .sj-chip__n { background: rgba(15, 23, 42, .08); border-radius: 999px; padding: 0 .5rem; font-size: .78rem; }
.sj-chip.is-active .sj-chip__n { background: rgba(255, 255, 255, .25); }

.sj-list { display: grid; gap: .9rem; }
.sj-job { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 1rem; align-items: center; background: var(--sj-card); border: 1px solid var(--sj-line); border-radius: var(--sj-radius); padding: 1rem 1.1rem; box-shadow: var(--sj-shadow); transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease; }
.sj-job:hover { transform: translateY(-2px); box-shadow: var(--sj-shadow-lg); border-color: var(--sj-primary-100); }
.sj-avatar { --h: 220; width: 56px; height: 56px; border-radius: 14px; display: inline-flex; align-items: center; justify-content: center; font-weight: 800; font-size: 1.15rem; background: hsl(var(--h) 75% 93%); color: hsl(var(--h) 55% 30%); overflow: hidden; flex: 0 0 auto; text-decoration: none !important; }
.sj-avatar img { width: 100%; height: 100%; object-fit: cover; }
.sj-job__title { font-size: 1.08rem; font-weight: 800; margin: 0 0 .15rem; line-height: 1.45; }
.sj-job__title a { color: var(--sj-ink) !important; text-decoration: none !important; }
.sj-job__title a:hover { color: var(--sj-primary-700) !important; }
.sj-job__company { color: var(--sj-ink-2); font-weight: 600; font-size: .93rem; display: flex; align-items: center; gap: .4rem; }
.sj-meta { list-style: none; display: flex; flex-wrap: wrap; gap: .3rem 1rem; margin: .45rem 0 0; padding: 0; color: var(--sj-muted); font-size: .86rem; }
.sj-meta li { display: inline-flex; align-items: center; gap: .35rem; }
.sj-meta i { font-size: .95rem; }
.sj-badges { display: inline-flex; flex-wrap: wrap; gap: .35rem; margin-inline-start: .4rem; vertical-align: middle; }
.sj-badge { display: inline-flex; align-items: center; padding: .08rem .55rem; border-radius: 999px; font-size: .72rem; font-weight: 800; background: #f1f5f9; color: var(--sj-ink-2); }
.sj-badge--new { background: var(--sj-success-bg); color: var(--sj-success); }
.sj-badge--expired { background: var(--sj-danger-bg); color: var(--sj-danger); }
@media (max-width: 767.98px) {
  .sj-job { grid-template-columns: auto minmax(0, 1fr); padding: .9rem; }
  .sj-job__cta { grid-column: 1 / -1; }
  .sj-job__cta .sj-btn { width: 100%; }
}
.sj-empty { text-align: center; background: #fff; border: 1px dashed #cbd5e1; border-radius: var(--sj-radius); padding: 2.5rem 1.5rem; color: var(--sj-ink-2); }
.sj-empty i { font-size: 2.4rem; color: var(--sj-primary); }

/* ---------- الترقيم ---------- */
.sj-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: .4rem; margin-block-start: 2rem; }
.sj-page { min-width: 42px; min-height: 42px; display: inline-flex; align-items: center; justify-content: center; padding: 0 .8rem; border-radius: 12px; border: 1px solid var(--sj-line); background: #fff; color: var(--sj-ink-2) !important; font-weight: 700; text-decoration: none !important; }
.sj-page:hover { border-color: var(--sj-primary); color: var(--sj-primary-700) !important; }
.sj-page.is-current { background: var(--sj-primary); border-color: var(--sj-primary); color: #fff !important; }
.sj-page.is-disabled { opacity: .45; pointer-events: none; }
.sj-page.is-gap { border: 0; background: transparent; min-width: 24px; padding: 0; }

/* ---------- الشريط الجانبي ---------- */
.sj-aside { display: grid; gap: 1.1rem; position: sticky; inset-block-start: 88px; }
@media (max-width: 991.98px) { .sj-aside { position: static; } }
.sj-card { background: #fff; border: 1px solid var(--sj-line); border-radius: var(--sj-radius); box-shadow: var(--sj-shadow); padding: 1.15rem; }
.sj-card__title { font-size: 1.05rem; font-weight: 800; margin: 0 0 .8rem; display: flex; align-items: center; gap: .5rem; }
.sj-cta-card { background: linear-gradient(135deg, var(--sj-navy) 0%, var(--sj-primary) 100%); color: #fff; border: 0; position: relative; overflow: hidden; }
.sj-cta-card::after { content: ""; position: absolute; width: 180px; height: 180px; border-radius: 50%; background: rgba(255, 255, 255, .12); inset-block-end: -70px; inset-inline-end: -50px; }
.sj-cta-card h3 { color: #fff; font-size: 1.2rem; font-weight: 800; }
.sj-cta-card p { color: #d3e3f8; margin-block-end: 1rem; }
.sj-aside-list { list-style: none; margin: 0; padding: 0; display: grid; gap: .2rem; }
.sj-aside-list a { display: block; padding: .6rem .5rem; border-radius: 10px; color: var(--sj-ink) !important; text-decoration: none !important; font-weight: 700; font-size: .95rem; line-height: 1.5; }
.sj-aside-list a:hover { background: var(--sj-primary-50); }
.sj-aside-list small { display: block; color: var(--sj-muted); font-weight: 600; }

/* ---------- تفاصيل الوظيفة ---------- */
.sj-crumbs { display: flex; flex-wrap: wrap; gap: .4rem; list-style: none; margin: 0 0 1rem; padding: 0; font-size: .88rem; color: var(--sj-muted); }
.sj-crumbs a { color: var(--sj-muted) !important; text-decoration: none; }
.sj-crumbs a:hover { color: var(--sj-primary-700) !important; }
.sj-crumbs li + li::before { content: "›"; margin-inline-end: .4rem; color: #94a3b8; }
[dir="rtl"] .sj-crumbs li + li::before { content: "‹"; }
.sj-detail-hero { background: linear-gradient(180deg, #e3edfb 0%, var(--sj-bg) 100%); padding-block: 1.5rem 0; }
.sj-detail { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 1.6rem; align-items: start; padding-block: 1rem 3rem; }
@media (max-width: 991.98px) { .sj-detail { grid-template-columns: minmax(0, 1fr); } }
.sj-head { display: flex; gap: 1.1rem; align-items: flex-start; }
.sj-head .sj-avatar { width: 72px; height: 72px; font-size: 1.5rem; border-radius: 18px; }
.sj-head h1 { font-size: clamp(1.4rem, 3vw, 2rem); font-weight: 800; margin: 0 0 .3rem; }
.sj-head__company { font-weight: 700; color: var(--sj-ink-2); }
.sj-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: .7rem; margin-block-start: 1.1rem; }
.sj-fact { background: #f8fafc; border: 1px solid var(--sj-line); border-radius: 12px; padding: .65rem .85rem; display: flex; gap: .65rem; align-items: center; }
.sj-fact i { font-size: 1.25rem; color: var(--sj-primary); }
.sj-fact small { display: block; color: var(--sj-muted); font-size: .76rem; font-weight: 700; line-height: 1.2; }
.sj-fact b { font-size: .95rem; line-height: 1.3; }
.sj-prose { font-size: 1.06rem; line-height: 2; color: var(--sj-ink-2); text-align: start; overflow-wrap: anywhere; }
.sj-gallery { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: .6rem; }
.sj-gallery a { display: block; aspect-ratio: 4 / 3; border-radius: 12px; overflow: hidden; border: 1px solid var(--sj-line); }
.sj-gallery img { width: 100%; height: 100%; object-fit: cover; }
.sj-alert { border-radius: 12px; padding: .75rem 1rem; font-weight: 700; margin-block-end: 1rem; }
.sj-alert--danger { background: var(--sj-danger-bg); color: var(--sj-danger); }
.sj-alert--info { background: var(--sj-primary-50); color: var(--sj-primary-700); }
.sj-alert--warn { background: #fef3c7; color: #92400e; }
.sj-share { display: flex; flex-wrap: wrap; gap: .5rem; }
.sj-share a, .sj-share button { width: 44px; height: 44px; border-radius: 12px; border: 1px solid var(--sj-line); background: #fff; display: inline-flex; align-items: center; justify-content: center; font-size: 1.15rem; color: var(--sj-ink-2) !important; cursor: pointer; text-decoration: none !important; }
.sj-share a:hover, .sj-share button:hover { border-color: var(--sj-primary); color: var(--sj-primary-700) !important; background: var(--sj-primary-50); }
.sj-applybar { display: none; }
@media (max-width: 767.98px) {
  .sj-applybar { display: flex; gap: .6rem; position: fixed; inset-inline: 0; inset-block-end: 0; z-index: 1020; background: rgba(255, 255, 255, .96); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); border-block-start: 1px solid var(--sj-line); padding: .6rem .9rem calc(.6rem + env(safe-area-inset-bottom, 0px)); box-shadow: 0 -8px 24px rgba(15, 23, 42, .1); }
  .sj-applybar .sj-btn { flex: 1 1 auto; }
  .sj-has-applybar { padding-block-end: 84px; }
}

/* ---------- المقالات ---------- */
.sj-articles { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 1.1rem; }
.sj-article { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--sj-line); border-radius: var(--sj-radius); box-shadow: var(--sj-shadow); overflow: hidden; transition: transform .15s ease, box-shadow .15s ease; }
.sj-article:hover { transform: translateY(-2px); box-shadow: var(--sj-shadow-lg); }
.sj-article__img { aspect-ratio: 16 / 9; background: linear-gradient(135deg, var(--sj-primary-100), #e6f0ff); display: flex; align-items: center; justify-content: center; font-size: 2.2rem; color: var(--sj-primary); }
.sj-article__img img { width: 100%; height: 100%; object-fit: cover; }
.sj-article__body { padding: 1rem 1.1rem 1.2rem; display: flex; flex-direction: column; gap: .5rem; flex: 1; }
.sj-article__title { font-size: 1.08rem; font-weight: 800; margin: 0; }
.sj-article__title a { color: var(--sj-ink) !important; text-decoration: none !important; }
.sj-article__meta { color: var(--sj-muted); font-size: .84rem; }
.sj-article__body p { color: var(--sj-ink-2); margin: 0; }

/* ---------- التذييل ---------- */
.sj-footer { background: #07182f; color: #cbd5e1; margin-block-start: 3rem; padding-block: 3rem 1.5rem; }
.sj-footer a { color: #cbd5e1 !important; text-decoration: none !important; }
.sj-footer a:hover { color: #fff !important; }
.sj-footer__grid { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1.2fr; gap: 2rem; }
@media (max-width: 991.98px) { .sj-footer__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 575.98px) { .sj-footer__grid { grid-template-columns: 1fr; } }
.sj-footer h2 { color: #fff; font-size: 1rem; font-weight: 800; margin: 0 0 .9rem; }
.sj-footer ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .45rem; }
.sj-footer__brand { display: flex; align-items: center; gap: .6rem; color: #fff; font-weight: 800; font-size: 1.3rem; margin-block-end: .7rem; }
.sj-footer__brand img { height: 36px; border-radius: 10px; }
.sj-social { display: flex; flex-wrap: wrap; gap: .5rem; }
.sj-social a { width: 42px; height: 42px; border-radius: 12px; background: rgba(255, 255, 255, .08); display: inline-flex; align-items: center; justify-content: center; font-size: 1.15rem; transition: background-color .15s ease, transform .15s ease; }
.sj-social a:hover { background: var(--sj-primary); transform: translateY(-2px); }
.sj-footer__bottom { margin-block-start: 2rem; padding-block-start: 1.2rem; border-block-start: 1px solid rgba(255, 255, 255, .1); font-size: .88rem; color: #94a3b8; display: flex; flex-wrap: wrap; justify-content: space-between; gap: .6rem; }

/* ---------- صفحات ثابتة قديمة داخل الهيكل الجديد ---------- */
.sj-ui .card { border-radius: var(--sj-radius); border-color: var(--sj-line); }
.sj-ui .btn-primary { background: var(--sj-primary); border-color: var(--sj-primary); }
.sj-ui .btn-primary:hover { background: var(--sj-primary-700); border-color: var(--sj-primary-700); }
