/* =====================================================================
   رالي هب | Rally Hub — الواجهة الرئيسية
   ===================================================================== */
:root{
  /* ===== ألوان هوية داكار الرسمية ===== */
  --black:#000000;          /* أسود: خلفيات الفيديو والواجهات الداكنة */
  --white:#ffffff;          /* أبيض: خلفية الصفحة والنص فوق الداكن */
  --brand:#c4390e;          /* برتقالي محمر: لون الهوية الأبرز */
  --brand-dark:#a2260b;     /* برتقالي داكن: الحالات الأغمق */
  --brand-on-dark:#f2551f;  /* نفس الأحمر مرفوع الإضاءة — للنص فوق الصور الداكنة */
  --highlight:#ffda00;      /* أصفر ساطع: العلامات والتفاصيل البارزة */
  --gray:#444444;           /* رمادي داكن: النصوص الثانوية */
  --gray-soft:#f9f9f9;      /* رمادي فاتح جداً: الخلفيات الهادئة والفواصل */

  /* ===== الربط بمتغيرات الواجهة ===== */
  --bg:#ffffff;
  --bg-2:#f9f9f9;
  --surface:#ffffff;
  --surface-2:#f9f9f9;
  --surface-3:#efefef;
  --border:#e4e4e4;
  --border-2:#cfcfcf;
  --text:#000000;
  --text-2:#444444;
  --muted:#767676;
  --accent:#c4390e;
  --accent-2:#a2260b;
  --accent-dark:#a2260b;
  --accent-ink:#ffffff;     /* نص فوق البرتقالي */
  --hi:#ffda00;
  --hi-ink:#000000;         /* نص فوق الأصفر */
  --ok:#1f7a3d;
  --warn:#a2260b;
  --danger:#c4390e;
  --info:#0f5c8a;

  /* ===== الأقسام الداكنة (الواجهة، الفيديو، التذييل) ===== */
  --dark-bg:#000000;
  --dark-surface:#111111;
  --dark-border:#2a2a2a;
  --dark-text:#ffffff;
  --dark-text-2:#c8c8c8;

  /* زوايا مربعة تماماً — بلا انحناء */
  --radius:0px;
  --radius-sm:0px;
  --shadow:0 10px 30px rgba(0,0,0,.10);
  --shadow-sm:0 2px 8px rgba(0,0,0,.08);
  --max:1240px;
  --gutter:40px;      /* هامش حواف الصفحة — يُضبط من لوحة التحكم */
  --ff:'IBM Plex Sans Arabic','Segoe UI',Tahoma,Arial,sans-serif;
  --ff-d:'Alexandria','IBM Plex Sans Arabic','Segoe UI',Tahoma,Arial,sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--bg);color:var(--text);
  font-family:var(--ff);font-size:16px;line-height:1.75;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
svg{fill:currentColor;flex:0 0 auto}
svg.ic{width:1em;height:1em}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4,h5{margin:0 0 .6rem;line-height:1.35;font-weight:700;letter-spacing:-.2px;font-family:var(--ff-d)}
p{margin:0 0 1rem}
ul{margin:0;padding:0;list-style:none}
figure{margin:0}
:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}
.container{max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ---------- شريط التواصل العلوي (فوق الشعار) ---------- */
.topbar{background:var(--black);font-size:.82rem;color:var(--dark-text-2)}
.tb-in{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;min-height:44px}
.topbar a{color:inherit}
.topbar a:hover{color:var(--hi)}
.tb-links{display:flex;gap:1.1rem;align-items:center;justify-content:flex-start;min-width:0}
.tb-date{color:var(--muted);white-space:nowrap}
.tb-links a{white-space:nowrap}
.tb-links a.on{color:var(--hi);font-weight:800}
/* رابط التسجيل في الشريط الأسود بلون هوية الموقع */
.tb-links .tb-reg{color:var(--brand);font-weight:800;white-space:nowrap;
  border:1px solid var(--brand);padding:.15rem .6rem;line-height:1.7}
.tb-links .tb-reg:hover{background:var(--brand);color:#fff}
/* أيقونات التواصل — في المنتصف تماماً فوق الشعار */
.tb-social{display:flex;gap:.35rem;justify-content:center}
.tb-social a{width:30px;height:30px;display:grid;place-items:center;color:var(--dark-text-2);transition:.18s}
.tb-social a:hover{background:var(--hi);color:var(--hi-ink)}
.topbar svg{width:15px;height:15px}
.tb-right{display:flex;gap:.6rem;align-items:center;justify-content:flex-end}
.tb-cta{background:var(--hi);color:var(--hi-ink)!important;font-weight:800;padding:.34rem .9rem;white-space:nowrap;font-size:.78rem}
.tb-cta:hover{background:var(--white);color:var(--black)!important}
/* مبدّل اللغة */
.lang-switch{display:flex;border:1px solid var(--dark-border)}
.lang-switch a{padding:.28rem .62rem;font-size:.76rem;font-weight:800;letter-spacing:.04em;color:var(--dark-text-2)}
.lang-switch a.on{background:var(--white);color:var(--black)}
.lang-switch a:not(.on):hover{background:var(--dark-surface);color:var(--white)}

/* ---------- الهيدر: الشعار في الوسط والقائمة يمين ويسار ---------- */
.site-header{position:sticky;top:0;z-index:60}
.hd-bar{background:var(--brand);border-bottom:3px solid var(--brand-dark)}
.hd-in{
  display:grid;
  /* موازن | قائمة | شعار | قائمة | بحث — الموازن يجعل الشعار في المنتصف تماماً */
  grid-template-columns:42px 1fr auto 1fr 42px;
  align-items:center;gap:.8rem;min-height:66px;
}
.hd-spacer{width:42px}
.hd-nav ul{display:flex;align-items:center;gap:.1rem}
.hd-nav-a ul{justify-content:flex-end}
.hd-nav-b ul{justify-content:flex-start}
.hd-nav > ul > li > a{
  display:flex;align-items:center;gap:.3rem;padding:.5rem .7rem;font-weight:700;font-size:.92rem;
  color:var(--white);white-space:nowrap;transition:.16s
}
.hd-nav > ul > li > a:hover,
.hd-nav > ul > li > a.active{background:var(--hi);color:var(--hi-ink)}
.hd-nav > ul > li > a.active{font-weight:800}
.caret{width:11px!important;height:11px!important;opacity:.8;flex:0 0 auto}

/* شارة الشعار — خلفيتها بلون القائمة نفسه وتنزل تحت الشريط مثل داكار */
.hd-logo{
  position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3rem;
  background:var(--brand);padding:.5rem 1.5rem;align-self:stretch;min-width:158px;
  border-inline:1px solid rgba(255,255,255,.18);
}
.hd-logo img{height:46px;width:auto;max-width:180px;object-fit:contain}
.hd-logo-t{display:flex;flex-direction:column;align-items:center;line-height:1.1}
.hd-logo-t b{font-size:1.15rem;font-weight:900;color:var(--white)}
.hd-logo-t span{font-size:.6rem;letter-spacing:3px;color:var(--hi)}
.hd-badge{
  display:block;width:100%;background:var(--brand-dark);color:var(--white);
  font-family:var(--ff-d);font-size:.7rem;font-weight:700;letter-spacing:.02em;
  padding:.24rem .5rem;text-align:center;white-space:nowrap;direction:ltr;
}

.hd-icon{
  width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.4);
  background:transparent;color:var(--white);cursor:pointer;transition:.16s;flex:0 0 auto
}
.hd-icon:hover{background:var(--hi);border-color:var(--hi);color:var(--hi-ink)}
.hd-icon svg{width:19px;height:19px}
.only-mobile{display:none}
.only-desktop{display:block}

/* القوائم المنسدلة */
.has-drop{position:relative}
.drop{
  position:absolute;inset-inline-start:0;top:100%;min-width:238px;background:var(--surface);
  border:1px solid var(--border);box-shadow:var(--shadow);padding:.4rem;
  opacity:0;visibility:hidden;transform:translateY(8px);transition:.16s;z-index:5
}
.has-drop:hover .drop,.has-drop:focus-within .drop{opacity:1;visibility:visible;transform:none}
.drop a{display:flex;align-items:center;gap:.6rem;padding:.55rem .7rem;font-size:.89rem;color:var(--text-2)}
.drop a:hover{background:var(--gray-soft);color:var(--brand)}
.drop a i{width:9px;height:9px;flex:0 0 auto}

/* بحث منسدل */
.search-bar{display:none;background:var(--brand-dark)}
.search-bar.open{display:block}
.search-bar form{display:flex;gap:.6rem;padding:.85rem 0;align-items:center;position:relative}
.sb-ic{position:absolute;inset-inline-start:.9rem;width:18px;height:18px;color:var(--muted);pointer-events:none}
.search-bar input{flex:1;background:var(--white);border:0;color:var(--text);padding:.8rem 1rem .8rem 2.6rem;font-family:inherit;font-size:1rem}
[dir=rtl] .search-bar input{padding:.8rem 2.6rem .8rem 1rem}
.search-bar button{background:var(--hi);border:0;color:var(--hi-ink);padding:.8rem 1.6rem;font-family:inherit;font-weight:800;cursor:pointer}

/* ---------- قائمة الهاتف: لوح كامل يشبه التطبيق ---------- */
.mnav{
  position:fixed;inset:0;z-index:95;background:var(--surface);display:flex;flex-direction:column;
  transform:translateY(100%);transition:transform .3s cubic-bezier(.32,.72,0,1);
  padding-bottom:env(safe-area-inset-bottom)
}
.mnav[hidden]{display:none}
.mnav.open{transform:none}
.mnav-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;
  background:var(--brand);padding:.7rem 1rem;padding-top:calc(.7rem + env(safe-area-inset-top))}
.mnav-brand img{height:38px;width:auto;max-width:160px;object-fit:contain}
.mnav-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:1rem 1rem 2rem}
.mnav-search{display:flex;align-items:center;gap:.6rem;background:var(--gray-soft);border:1px solid var(--border);padding:.2rem .9rem;margin-bottom:1rem}
.mnav-search svg{width:18px;height:18px;color:var(--muted);flex:0 0 auto}
.mnav-search input{flex:1;background:none;border:0;padding:.85rem 0;font-family:inherit;font-size:1rem;color:var(--text);min-width:0}
.mnav-quick{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:1.2rem}
.mnav-quick a{display:flex;flex-direction:column;align-items:center;gap:.45rem;padding:.85rem .3rem;
  background:var(--gray-soft);border:1px solid var(--border);text-align:center}
.mnav-quick svg{width:22px;height:22px;color:var(--brand)}
.mnav-quick span{font-size:.7rem;font-weight:700;color:var(--text-2);line-height:1.25}
.mnav-list{display:flex;flex-direction:column;border-top:1px solid var(--border)}
.mnav-list > a, .mnav-list summary{
  display:flex;align-items:center;justify-content:space-between;gap:.8rem;
  padding:1.05rem .3rem;border-bottom:1px solid var(--border);
  font-family:var(--ff-d);font-weight:700;font-size:1.02rem;color:var(--text);cursor:pointer;list-style:none
}
.mnav-list summary::-webkit-details-marker{display:none}
.mnav-list .ch{width:16px;height:16px;color:var(--muted);flex:0 0 auto;transition:transform .2s}
/* السهم يشير باتجاه القراءة: يساراً في العربية ويميناً في الإنجليزية */
[dir=rtl] .mnav-list .ch{transform:scaleX(-1)}
.mnav-list details[open] > summary .ch{transform:rotate(90deg)}
[dir=rtl] .mnav-list details[open] > summary .ch{transform:rotate(90deg) scaleX(-1)}
.mnav-list a.sub{
  display:flex;align-items:center;gap:.6rem;padding:.8rem .3rem .8rem 1.4rem;
  border-bottom:1px solid var(--border);font-size:.94rem;color:var(--text-2);background:var(--gray-soft)
}
[dir=rtl] .mnav-list a.sub{padding:.8rem 1.4rem .8rem .3rem}
.mnav-list a.sub i{width:8px;height:8px;flex:0 0 auto}
.mnav-cta{display:flex;align-items:center;justify-content:center;gap:.6rem;margin-top:1.4rem;
  background:var(--brand);color:var(--white);font-weight:800;padding:1rem;font-family:var(--ff-d)}
.mnav-cta svg{width:19px;height:19px}
.mnav-lang{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.8rem}
.mnav-lang a{text-align:center;padding:.8rem;border:1px solid var(--border);font-weight:700;color:var(--text-2)}
.mnav-lang a.on{background:var(--black);border-color:var(--black);color:var(--white)}
.mnav-social{display:flex;justify-content:center;gap:.5rem;margin-top:1.4rem}
.mnav-social a{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--border);color:var(--text-2)}
.mnav-social a:hover{background:var(--brand);border-color:var(--brand);color:var(--white)}
.mnav-social svg{width:18px;height:18px}
.mnav-veil{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:90}
.mnav-veil[hidden]{display:none}

/* ---------- شريط الأخبار العاجلة ---------- */
.breaking{background:var(--black);color:var(--white);overflow:hidden}
.breaking .container{display:flex;align-items:center;gap:1rem;min-height:44px}
.breaking .bk-label{font-weight:900;font-size:.83rem;background:var(--hi);color:var(--hi-ink);padding:.25rem .8rem;border-radius:0;white-space:nowrap;display:flex;align-items:center;gap:.45rem}
.breaking .bk-label::before{content:"";width:8px;height:8px;border-radius:0;background:var(--brand);animation:pulse 1.4s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.25}}
.bk-track{flex:1;overflow:hidden;white-space:nowrap;min-width:0}
/* نسختان متتاليتان من العناوين فيبدو التمرير متواصلاً بلا فراغ */
.bk-track ul{display:flex;gap:3rem;width:max-content;padding-inline-end:3rem;
  animation:ticker 36s linear infinite;will-change:transform}
.bk-track:hover ul{animation-play-state:paused}
.bk-track a{font-size:.9rem;font-weight:600}
.bk-track a:hover{text-decoration:underline}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
[dir=rtl] .bk-track ul{animation-name:tickerRtl}
@keyframes tickerRtl{from{transform:translateX(0)}to{transform:translateX(50%)}}
@media (prefers-reduced-motion:reduce){.bk-track ul{animation:none}.bk-track{overflow-x:auto}}

/* ---------- الواجهة الكبيرة (Hero) ---------- */
.hero{position:relative;min-height:640px;display:flex;align-items:flex-end;overflow:hidden;background:var(--black);color:var(--dark-text)}
.hero-bg{position:absolute;inset:0}
.hero-bg img{width:100%;height:100%;object-fit:cover;transform:scale(1.03);animation:heroZoom 22s ease-in-out infinite alternate}
@keyframes heroZoom{from{transform:scale(1.02)}to{transform:scale(1.12)}}
/* التعتيم يُضبط من لوحة التحكم عبر --ph-ov */
.hero-bg .ph-shade{
  position:absolute;inset:0;
  /* تدرّج من الأعلى الصافي إلى الأسفل الداكن: أعلى الصورة يظهر كاملاً،
     والكتابة في الأسفل تقع فوق تعتيم كافٍ لقراءتها فوق أي صورة. */
  background:linear-gradient(180deg,
    rgba(0,0,0,calc(var(--ph-ov,.7) * .10))  0%,
    rgba(0,0,0,calc(var(--ph-ov,.7) * .22)) 25%,
    rgba(0,0,0,calc(var(--ph-ov,.7) * .55)) 45%,
    rgba(0,0,0,calc(var(--ph-ov,.7) * .90)) 65%,
    rgba(0,0,0,calc(var(--ph-ov,.7) * 1.20)) 85%,
    rgba(0,0,0,calc(var(--ph-ov,.7) * 1.35)) 100%);
}
.hero-bg::before{
  content:"";position:absolute;inset:0;z-index:1;
  background:radial-gradient(120% 80% at 80% 20%,rgba(196,57,14,.20),transparent 60%);
}
.hero-inner{position:relative;z-index:2;width:100%;padding-block:5rem 3rem}
.hero-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:2.4rem;align-items:end}
.hero-grid.solo{grid-template-columns:1fr}
.hero-kicker svg{width:14px;height:14px}
.hero-kicker{display:inline-flex;white-space:nowrap;align-items:center;gap:.5rem;background:var(--hi);color:var(--hi-ink);font-size:.78rem;font-weight:800;padding:.35rem .95rem;border-radius:0;margin-bottom:1rem}
.hero h1{font-size:clamp(2rem,4.6vw,3.6rem);font-weight:900;margin-bottom:1rem;text-shadow:0 4px 30px rgba(0,0,0,.6)}
.hero h1 a:hover{color:var(--hi)}
.hero p.lead{font-size:1.08rem;color:#f2f2f2;max-width:62ch;margin-bottom:1.6rem;
  text-shadow:0 2px 8px rgba(0,0,0,.75)}
.hero-meta{display:flex;flex-wrap:wrap;gap:1.2rem;color:#eaeaea;font-size:.88rem;margin-bottom:1.6rem;
  text-shadow:0 2px 6px rgba(0,0,0,.75)}
.hero-meta span{display:inline-flex;align-items:center;gap:.4rem}
.hero-meta svg{width:15px;height:15px;opacity:.85}
.hero-cta{display:flex;gap:.8rem;flex-wrap:wrap}

/* بطاقة العد التنازلي */
.countdown-card{background:var(--dark-surface);border:2px solid var(--brand);border-radius:0;padding:1.4rem;color:var(--dark-text)}
.countdown-card .cc-top svg{width:15px;height:15px}
.countdown-card .cc-top{display:flex;align-items:center;gap:.6rem;font-size:.78rem;color:var(--hi);font-weight:800;margin-bottom:.5rem;letter-spacing:.5px}
.countdown-card h3{font-size:1.25rem;margin-bottom:.25rem}
.countdown-card .cc-date{color:var(--dark-text-2);font-size:.87rem;margin-bottom:1rem}
.cd-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;text-align:center;margin-bottom:1rem}
.cd-cell{background:var(--black);border:1px solid var(--dark-border);border-radius:0;padding:.6rem .2rem}
.cd-cell b{display:block;font-size:1.45rem;font-weight:900;color:var(--hi);font-variant-numeric:tabular-nums}
.cd-cell span{font-size:.68rem;color:var(--dark-text-2)}

/* ---------- أزرار ---------- */
.btn{
  display:inline-flex;align-items:center;gap:.5rem;padding:.72rem 1.5rem;border-radius:0;
  font-weight:800;font-size:.94rem;font-family:inherit;border:1px solid transparent;cursor:pointer;transition:.2s
}
.btn-primary{background:var(--brand);color:var(--white);box-shadow:none}
.btn-primary:hover{background:var(--brand-dark);transform:none}
.btn-ghost{background:transparent;border-color:currentColor;color:inherit}
.btn-ghost:hover{background:var(--black);border-color:var(--black);color:var(--white)}
.btn-sm{padding:.45rem 1rem;font-size:.82rem}
.btn svg{width:16px;height:16px}

/* ---------- أقسام ---------- */
.section{padding:4rem 0}
.section.tight{padding:2.6rem 0}
.section.alt{background:var(--bg-2)}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}
.section-head .sh-title{position:relative;padding-inline-start:16px}
.section-head .sh-title::before{content:"";position:absolute;inset-inline-start:0;top:6px;bottom:6px;width:6px;border-radius:0;background:var(--brand)}
.section-head h2{font-size:1.75rem;margin:0}
.section-head p{color:var(--muted);font-size:.92rem;margin:.25rem 0 0}
.link-more{color:var(--brand);font-weight:800;font-size:.9rem;display:inline-flex;align-items:center;gap:.35rem}
.link-more svg{width:14px;height:14px;transform:scaleX(-1)}
.link-more:hover{gap:.6rem}

/* ---------- شبكة البطاقات ---------- */
.grid{display:grid;gap:1.5rem}
.grid-2{grid-template-columns:repeat(2,1fr)}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}
/* شبكة يحدّد عدد أعمدتها المستخدم من لوحة التحكم (--cols) وتتجاوب مع الشاشة */
.grid-cols{grid-template-columns:repeat(var(--cols,3),minmax(0,1fr))}
.cols-main{display:grid;grid-template-columns:1fr 340px;gap:2.4rem;align-items:start}

.card{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;
  display:flex;flex-direction:column;transition:.25s;height:100%
}
.card:hover{transform:translateY(-4px);border-color:var(--border-2);box-shadow:var(--shadow)}
.card-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--surface-2)}
.card-media img{width:100%;height:100%;object-fit:cover;transition:.5s}
.card:hover .card-media img{transform:scale(1.07)}
.card-body{padding:1.1rem 1.2rem 1.3rem;display:flex;flex-direction:column;flex:1}
.card h3{font-size:1.06rem;margin-bottom:.5rem}
.card h3 a:hover{color:var(--accent-2)}
.card p{font-size:.9rem;color:var(--muted);margin-bottom:1rem;flex:1}
.card-meta{display:flex;align-items:center;gap:.9rem;font-size:.78rem;color:var(--muted);margin-top:auto;padding-top:.6rem;border-top:1px solid var(--border)}
.card-meta span{display:inline-flex;align-items:center;gap:.3rem}
.card svg.ic{width:13px;height:13px;opacity:.8}

.tag{
  position:absolute;inset-block-start:.75rem;inset-inline-start:.75rem;z-index:2;
  background:var(--accent);color:var(--accent-ink);font-size:.72rem;font-weight:800;padding:.25rem .7rem;border-radius:0
}
.tag.ghost{background:rgba(10,12,17,.75);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.15)}

/* بطاقة أفقية */
.card-h{display:flex;gap:1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.7rem;transition:.2s}
.card-h:hover{border-color:var(--border-2);background:var(--surface-2)}
.card-h .ch-media{flex:0 0 96px;height:70px;border-radius:0;overflow:hidden}
.card-h .ch-media img{width:100%;height:100%;object-fit:cover}
.card-h h4{font-size:.92rem;margin:0 0 .35rem;line-height:1.5}
.card-h .ch-meta{font-size:.75rem;color:var(--muted);display:flex;align-items:center;gap:.3rem}
.card-h .ch-meta svg{width:12px;height:12px}

/* بطاقة الخبر الرئيسي */
.feature-card{position:relative;border-radius:var(--radius);overflow:hidden;min-height:420px;display:flex;align-items:flex-end;border:1px solid var(--border)}
.feature-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.6s}
.feature-card:hover img{transform:scale(1.05)}
.feature-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,8,12,.95) 5%,rgba(6,8,12,.35) 55%,transparent 90%)}
.feature-card .fc-body{position:relative;z-index:2;padding:1.6rem}
.feature-card h3{font-size:1.5rem}
.feature-card .card-meta{border:0}

/* ---------- بطاقات الراليات ---------- */
.rally-card{position:relative;border-radius:0;overflow:hidden;min-height:290px;display:flex;align-items:flex-end;border:1px solid var(--border);transition:.28s}
.rally-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.rally-card img.rc-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.6s}
.rally-card:hover img.rc-bg{transform:scale(1.07)}
/* تدرّج أسود شفّاف: أعلى البطاقة صافٍ تماماً لتظهر الصورة،
   ويشتدّ تدريجياً إلى الأسفل حيث تقع الكتابة فقط. */
.rally-card::after{content:"";position:absolute;inset:0;
  background:linear-gradient(0deg,
    rgba(6,8,12,.88)  0%,
    rgba(6,8,12,.66) 30%,
    rgba(6,8,12,.34) 55%,
    rgba(6,8,12,.10) 78%,
    transparent      100%)}
.rc-body{position:relative;z-index:2;padding:1.3rem;width:100%}
.rc-badge{display:inline-block;font-size:.7rem;font-weight:800;padding:.2rem .65rem;border-radius:0;color:#fff;margin-bottom:.55rem}
/* كل الكتابة بيضاء، وظلّ خفيف يحفظ وضوحها فوق الصور الفاتحة */
.rc-body h3{font-size:1.2rem;margin-bottom:.3rem;font-weight:800;
  color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.9),0 0 16px rgba(0,0,0,.55)}
.rc-body p{font-size:.83rem;margin:0 0 .8rem;font-weight:600;
  color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.9)}
.rc-stats{display:flex;gap:1.1rem;font-size:.75rem;font-weight:600;
  color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.9);
  border-top:1px solid rgba(255,255,255,.28);padding-top:.7rem}
.rc-stats b{color:#fff;font-weight:800}
.rally-card:hover .rc-body h3{color:var(--hi)}
.rally-logo{position:absolute;top:1rem;inset-inline-end:1rem;z-index:3;width:56px;height:56px;opacity:.95;filter:drop-shadow(0 4px 10px rgba(0,0,0,.5))}

/* ---------- التقويم ---------- */
.event-row{
  display:grid;grid-template-columns:88px 1fr auto;gap:1.3rem;align-items:center;
  background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.2rem;transition:.2s
}
.event-row:hover{border-color:var(--border-2);background:var(--surface-2)}
.ev-date{text-align:center;background:var(--bg-2);border:1px solid var(--border);border-radius:0;padding:.6rem .3rem}
.ev-date b{display:block;font-size:1.6rem;font-weight:900;line-height:1;color:var(--accent-2)}
.ev-date span{font-size:.72rem;color:var(--muted)}
.ev-main h4{margin:0 0 .3rem;font-size:1.05rem}
.ev-main .ev-sub{font-size:.83rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:.9rem;align-items:center}
.ev-main .ev-sub svg{width:13px;height:13px}
.ev-side{text-align:center;min-width:110px}
.badge{display:inline-block;font-size:.72rem;font-weight:800;padding:.25rem .75rem;border-radius:0;border:1px solid transparent}
.badge.upcoming{background:rgba(77,171,247,.14);color:#74c0fc;border-color:rgba(77,171,247,.3)}
.badge.ongoing{background:rgba(12,166,120,.16);color:#38d9a9;border-color:rgba(12,166,120,.35)}
.badge.finished{background:rgba(139,147,165,.14);color:var(--muted);border-color:var(--border-2)}
.badge.cancelled{background:rgba(224,49,49,.14);color:#ff8787;border-color:rgba(224,49,49,.3)}
.ev-side .days{display:block;font-size:.75rem;color:var(--muted);margin-top:.35rem}

/* ---------- جداول النتائج ---------- */
.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}
table.data{width:100%;border-collapse:collapse;font-size:.9rem;min-width:640px}
table.data thead th{
  background:var(--surface-2);color:var(--text-2);font-size:.78rem;font-weight:800;text-align:start;
  padding:.85rem 1rem;border-bottom:1px solid var(--border);white-space:nowrap
}
table.data td{padding:.8rem 1rem;border-bottom:1px solid var(--border);vertical-align:middle}
table.data tbody tr:last-child td{border-bottom:0}
table.data tbody tr:hover{background:var(--surface-2)}
.pos{width:44px;height:34px;display:grid;place-items:center;border-radius:0;font-weight:900;background:var(--surface-3);color:var(--text-2)}
.pos.p1{background:var(--hi);color:var(--hi-ink)}
.pos.p2{background:#d8d8d8;color:#000}
.pos.p3{background:var(--brand);color:var(--white)}
.pos.dnf{background:rgba(224,49,49,.16);color:#ff8787;font-size:.72rem}
.mono{font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.86rem;direction:ltr;text-align:right}
.driver-cell{display:flex;align-items:center;gap:.7rem}
.driver-cell b{font-weight:800}
.driver-cell small{display:block;color:var(--muted);font-size:.75rem;font-weight:500}
.num-chip{flex:0 0 34px;height:34px;display:grid;place-items:center;border-radius:0;background:var(--bg-2);border:1px solid var(--border);font-size:.78rem;font-weight:800;color:var(--accent-2)}

/* ---------- الشريط الجانبي ---------- */
.sidebar{display:flex;flex-direction:column;gap:1.6rem;position:sticky;top:96px}
.widget{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.2rem}
.widget h3{font-size:1.02rem;margin-bottom:1rem;padding-bottom:.7rem;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:.5rem}
.widget h3::before{content:"";width:5px;height:16px;border-radius:0;background:var(--brand)}
.widget-list{display:flex;flex-direction:column;gap:.75rem}
.cat-list li a{display:flex;justify-content:space-between;align-items:center;padding:.5rem .1rem;border-bottom:1px dashed var(--border);font-size:.9rem;color:var(--text-2)}
.cat-list li:last-child a{border-bottom:0}
.cat-list li a:hover{color:var(--accent-2)}
.cat-list .cnt{background:var(--surface-2);border-radius:0;padding:.05rem .6rem;font-size:.75rem;color:var(--muted)}
.rank-list{counter-reset:r}
.rank-list li{display:flex;gap:.8rem;align-items:center;padding:.55rem 0;border-bottom:1px dashed var(--border);font-size:.88rem}
.rank-list li:last-child{border-bottom:0}
.rank-list li::before{counter-increment:r;content:counter(r);flex:0 0 26px;height:26px;display:grid;place-items:center;border-radius:0;background:var(--surface-2);font-size:.78rem;font-weight:800;color:var(--accent-2)}
.rank-list .pts{margin-inline-start:auto;font-weight:800;color:var(--brand)}
.newsletter input{width:100%;background:var(--bg-2);border:1px solid var(--border);color:var(--text);padding:.7rem .9rem;border-radius:0;font-family:inherit;margin-bottom:.6rem}
.newsletter .btn{width:100%;justify-content:center}

/* ---------- صفحة المقال ---------- */
.page-hero{position:relative;min-height:400px;display:flex;align-items:flex-end;overflow:hidden;background:var(--black);color:var(--dark-text)}
.page-hero img.ph-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.page-hero .ph-shade{position:absolute;inset:0;z-index:1;
  /* من الأسفل الداكن (موضع الكتابة) إلى الأعلى الصافي (تظهر الصورة) */
  background:linear-gradient(0deg,
    rgba(0,0,0,calc(var(--ph-ov,.7) * 1.32)) 0%,
    rgba(0,0,0,calc(var(--ph-ov,.7) * 1.05)) 28%,
    rgba(0,0,0,calc(var(--ph-ov,.7) * .62)) 58%,
    rgba(0,0,0,calc(var(--ph-ov,.7) * .34)) 82%,
    rgba(0,0,0,calc(var(--ph-ov,.7) * .22)) 100%)}
.page-hero.ph-center{align-items:center;text-align:center}
.page-hero.ph-center .ph-body{padding-block:3.2rem}
.page-hero.ph-center .breadcrumb{justify-content:center}
.page-hero.ph-center .ph-sub{margin-inline:auto}
.page-hero .ph-sub{max-width:70ch;font-size:1.02rem;line-height:1.85;margin-top:.7rem}
.page-hero .ph-body{position:relative;z-index:2;width:100%;padding-block:3.5rem 2.4rem}
.page-hero h1{font-size:clamp(1.7rem,3.6vw,2.7rem);color:var(--dark-text)}
.page-hero .ph-body p{color:#f2f2f2;text-shadow:0 2px 8px rgba(0,0,0,.75)}
.page-hero h1{text-shadow:0 3px 14px rgba(0,0,0,.75)}
.page-hero .hero-meta a{color:var(--hi)}
.breadcrumb{display:flex;gap:.5rem;font-size:.82rem;color:var(--dark-text-2);margin-bottom:.9rem;flex-wrap:wrap}
.breadcrumb a:hover{color:var(--hi)}
.breadcrumb span{opacity:.5}
.article-body{font-size:1.06rem;line-height:2.05;color:var(--text-2)}
.article-body p{margin-bottom:1.3rem}
.article-body h2{font-size:1.4rem;color:var(--black);margin:2rem 0 .8rem}
.article-body h3{font-size:1.16rem;color:var(--black);margin:1.6rem 0 .6rem}
.article-body img{border-radius:var(--radius);margin:1.5rem 0}
.article-body blockquote{border-inline-start:5px solid var(--brand);background:var(--gray-soft);padding:1rem 1.3rem;border-radius:0;margin:1.6rem 0;color:var(--text)}
.article-body ul,.article-body ol{margin:0 0 1.3rem;padding-inline-start:1.4rem}
.article-body ul li{list-style:disc;margin-bottom:.4rem}
.article-body ol li{list-style:decimal;margin-bottom:.4rem}
.article-body a{color:var(--accent-2);text-decoration:underline}
.byline{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap;color:var(--muted);font-size:.86rem;padding:1rem 0;border-block:1px solid var(--border);margin-bottom:1.8rem}
.byline .av{width:38px;height:38px;border-radius:0;background:var(--surface-2);display:grid;place-items:center;font-weight:800;color:var(--accent-2)}
.tags-row{display:flex;gap:.5rem;flex-wrap:wrap;margin:1.8rem 0}
.tags-row a{background:var(--surface);border:1px solid var(--border);padding:.3rem .85rem;border-radius:0;font-size:.8rem;color:var(--text-2)}
.tags-row a:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.share-row{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin:1.5rem 0}
.share-row a{width:38px;height:38px;border-radius:0;display:grid;place-items:center;background:var(--surface);border:1px solid var(--border);color:var(--text-2)}
.share-row a:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.share-row svg{width:16px;height:16px}

/* ---------- معرض الصور ---------- */
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.85rem}
.gal-item{position:relative;aspect-ratio:4/3;border-radius:0;overflow:hidden;cursor:pointer;border:1px solid var(--border)}
.gal-item img{width:100%;height:100%;object-fit:cover;transition:.45s}
.gal-item:hover img{transform:scale(1.09)}
.gal-item figcaption{position:absolute;inset-inline:0;bottom:0;padding:.7rem;font-size:.78rem;background:linear-gradient(0deg,rgba(6,8,12,.92),transparent);opacity:0;transition:.25s}
.gal-item:hover figcaption{opacity:1}
.lightbox{position:fixed;inset:0;z-index:200;background:rgba(4,6,10,.96);display:none;align-items:center;justify-content:center;padding:2rem}
.lightbox.open{display:flex}
.lightbox img{max-width:92vw;max-height:84vh;border-radius:0;box-shadow:var(--shadow)}
.lb-close,.lb-prev,.lb-next{position:absolute;background:var(--black);border:1px solid var(--dark-border);color:var(--white);width:46px;height:46px;border-radius:0;font-size:1.3rem;cursor:pointer;display:grid;place-items:center}
.lb-close{top:1.5rem;inset-inline-end:1.5rem}
.lb-prev{inset-inline-start:1.5rem;top:50%;transform:translateY(-50%)}
.lb-next{inset-inline-end:1.5rem;top:50%;transform:translateY(-50%)}
.lb-cap{position:absolute;bottom:1.6rem;inset-inline:0;text-align:center;color:var(--text-2);font-size:.88rem}

/* ---------- الفيديو ---------- */
.video-card .card-media::after{
  content:"";position:absolute;inset:0;background:rgba(6,8,12,.28);transition:.25s
}
.video-card:hover .card-media::after{background:rgba(6,8,12,.1)}
.play-btn{position:absolute;inset:0;margin:auto;width:58px;height:58px;border-radius:0;background:var(--brand);display:grid;place-items:center;z-index:3;box-shadow:0 8px 24px rgba(0,0,0,.45);transition:.25s}
.video-card:hover .play-btn{transform:scale(1.12)}
.play-btn::before{content:"";border:11px solid transparent;border-right-color:var(--white);margin-inline-start:-5px}
[dir=rtl] .play-btn::before{border-right-color:transparent;border-left-color:var(--white);margin-inline-start:5px}
.duration{position:absolute;bottom:.6rem;inset-inline-end:.6rem;z-index:3;background:rgba(6,8,12,.85);padding:.1rem .5rem;border-radius:0;font-size:.74rem;font-weight:700}
.video-frame{position:relative;padding-top:56.25%;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);background:#000}
.video-frame iframe,.video-frame video{position:absolute;inset:0;width:100%;height:100%;border:0}

/* ---------- إحصائيات ---------- */
.stats-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.4rem;text-align:center;position:relative;overflow:hidden}
.stat::before{content:"";position:absolute;top:0;inset-inline:0;height:3px;background:linear-gradient(90deg,var(--accent-2),var(--accent-dark))}
.stat b{display:block;font-size:2.1rem;font-weight:900;color:var(--brand);line-height:1.2}
.stat span{font-size:.85rem;color:var(--muted)}

/* ---------- فلاتر ---------- */
.filters{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.8rem}
.filters a,.filters button{
  background:var(--surface);border:1px solid var(--border);color:var(--text-2);
  padding:.45rem 1.05rem;border-radius:0;font-size:.85rem;font-weight:700;font-family:inherit;cursor:pointer;transition:.18s
}
.filters a:hover{border-color:var(--brand);color:var(--brand)}
.filters a.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.select-inline{background:var(--surface);border:1px solid var(--border);color:var(--text);padding:.5rem .9rem;border-radius:0;font-family:inherit;font-size:.88rem}

/* ---------- الترقيم ---------- */
.pagination{display:flex;gap:.4rem;justify-content:center;margin-top:2.5rem;flex-wrap:wrap}
.pg{min-width:40px;height:40px;display:grid;place-items:center;padding:0 .7rem;border-radius:0;background:var(--surface);border:1px solid var(--border);font-size:.88rem;font-weight:700;color:var(--text-2)}
a.pg:hover{border-color:var(--accent);color:var(--accent)}
.pg.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.pg.disabled,.pg.dots{opacity:.4}

/* ---------- نماذج ---------- */
.form-grid{display:grid;gap:1.1rem}
.field label{display:block;font-size:.86rem;font-weight:700;margin-bottom:.4rem;color:var(--text-2)}
.field input,.field textarea,.field select{
  width:100%;background:var(--bg-2);border:1px solid var(--border);color:var(--text);
  padding:.75rem .95rem;border-radius:0;font-family:inherit;font-size:.95rem;transition:.18s
}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--brand);outline:none;box-shadow:0 0 0 3px rgba(196,57,14,.14)}
.field textarea{min-height:150px;resize:vertical;line-height:1.8}
/* تنبيهات مقروءة على الخلفية البيضاء */
.alert{padding:.85rem 1.1rem;border-radius:0;font-size:.9rem;line-height:1.7;margin-bottom:1rem;
  border:1px solid;border-inline-start-width:5px}
.alert.success{background:#eef7f1;border-color:#bcdfc9;border-inline-start-color:#1f7a3d;color:#155c2c}
.alert.error  {background:#fdeeea;border-color:#f3c4b8;border-inline-start-color:#c4390e;color:#8f2409}
.alert.info   {background:#eef4f9;border-color:#c3d8e8;border-inline-start-color:#0f5c8a;color:#0d4666}
.alert.warn   {background:#fdf6e0;border-color:#ecdda4;border-inline-start-color:#a2260b;color:#6f4a05}
.alert a{color:inherit;text-decoration:underline}
.alert code{background:rgba(0,0,0,.06);padding:.1em .4em;font-size:.88em}

.empty{text-align:center;padding:3.5rem 1rem;color:var(--muted);background:var(--surface);border:1px dashed var(--border-2);border-radius:var(--radius)}
.empty b{display:block;color:var(--text);font-size:1.05rem;margin-bottom:.4rem}

/* ---------- الفوتر ---------- */
.site-footer{background:var(--black);color:var(--dark-text-2);border-top:4px solid var(--brand);margin-top:3rem}
/* الفوتر: عدد الأعمدة يأتي من عدد الأعمدة المفعّلة في لوحة التحكم.
   نستعمل خاصية مخصّصة لا محدّد سمات، حتى تستطيع استعلامات الوسائط أدناه
   تجاوزها على الشاشات الصغيرة (محدّد السمات كان أقوى منها فيبقى أربعة أعمدة على الهاتف). */
/* مهم: نستعمل padding-block لا اختصار padding.
   الاختصار كان يصفّر الهامش الجانبي القادم من .container فتلتصق أعمدة
   الفوتر بحافّتَي الشاشة تماماً على الشاشات العريضة. */
.footer-top{padding-block:3.2rem 2.4rem;display:grid;gap:2.2rem;
  grid-template-columns:repeat(var(--ft-cols,4),minmax(0,1fr))}
/* هامش جانبي للفوتر يتّسع مع اتساع الشاشة ولا ينزل تحت هامش الصفحة */
.site-footer > .container{padding-inline:max(var(--gutter), 4vw)}
.footer-top.ft-1{max-width:620px;margin-inline:auto;text-align:center}
.footer-top.ft-1 .footer-social,
.footer-top.ft-1 .foot-contact li{justify-content:center}
.footer-top h4{font-size:1rem;margin-bottom:1.1rem;color:var(--white)}
.footer-top p{font-size:.88rem;color:var(--muted);line-height:1.9}
/* شعار المجلة في وسط عمود «نبذة الموقع» — الصورة عنصر كتلي فكانت
   تلتصق ببداية العمود (يمين الصفحة في العربية). */
.ft-about .brand{display:flex;flex-direction:column;align-items:center;gap:.4rem;text-align:center}
/* سقف عرض لا يصغّر شعارك الحالي، لكنه يمنع الشعارات المتجهية (SVG)
   من التمدّد على عرض العمود كله فيبقى التوسيط ظاهراً */
.ft-about .brand img{margin-inline:auto;max-width:min(100%,320px);width:auto;height:auto}
.ft-about .brand .bt{display:flex;flex-direction:column;align-items:center}
.footer-links li{margin-bottom:.55rem}
.footer-links a{font-size:.88rem;color:var(--muted);display:inline-flex;align-items:center;gap:.45rem}
.footer-links a::before{content:"‹";color:var(--accent);font-weight:900}
.footer-links a:hover{color:var(--accent-2)}
.foot-contact li{font-size:.87rem;color:var(--muted);margin-bottom:.7rem;display:flex;gap:.6rem;align-items:flex-start}
.foot-contact svg{width:15px;height:15px;color:var(--accent);margin-top:.35rem}
.footer-social{display:flex;gap:.55rem;margin-top:1rem}
.footer-social a{width:38px;height:38px;border-radius:0;display:grid;place-items:center;background:var(--surface);border:1px solid var(--border);color:var(--text-2)}
.footer-social a:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.footer-social svg{width:16px;height:16px}
.footer-bottom{border-top:1px solid var(--border);padding-block:1.2rem;font-size:.82rem;color:var(--muted);display:flex;gap:1rem;flex-wrap:wrap}
.footer-bottom.fb-sides{justify-content:space-between}
/* الحقوق والروابط في وسط الشريط السفلي */
.footer-bottom.fb-center{flex-direction:column;align-items:center;text-align:center;gap:.6rem}
.footer-bottom.fb-center .fb-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem}
/* سطر جهة التصميم والتطوير أسفل الحقوق */
.fb-credit{font-size:.8rem;color:var(--muted);width:100%}
.footer-bottom.fb-center .fb-credit{text-align:center}
.footer-bottom.fb-sides .fb-credit{flex-basis:100%;margin-top:.5rem}
.fb-credit a{color:var(--accent-2);font-weight:600}
.fb-credit a:hover{color:var(--hi);text-decoration:underline}
.footer-bottom a:hover{color:var(--accent-2)}

.to-top{position:fixed;inset-block-end:1.5rem;inset-inline-start:1.5rem;width:46px;height:46px;border-radius:0;background:var(--brand);color:var(--white);display:grid;place-items:center;box-shadow:var(--shadow);opacity:0;visibility:hidden;transition:.25s;z-index:50;border:0;cursor:pointer}
.to-top.show{opacity:1;visibility:visible}
.to-top svg{width:18px;height:18px}

/* ---------- منع الفيض الأفقي: عناصر الشبكة لا تنكمش افتراضياً ---------- */
/* بدون min-width:0 يفرض أي جدول عريض عرضه على العمود كله فتنزاح الصفحة أفقياً */
.cols-main > *, .grid > *, .hero-grid > *, .footer-top > *{min-width:0}
.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
.section, .container, main{max-width:100%}
html,body{overflow-x:clip}

/* ================= توسيط العناوين ================= */
/* الوضع الافتراضي: عناوين الأقسام والواجهات في المنتصف.
   يمكن إرجاعها للمحاذاة الجانبية من لوحة التحكم ← إعدادات الموقع ← «محاذاة العناوين». */
body.h-center .section-head{flex-direction:column;align-items:center;text-align:center;gap:.9rem}
body.h-center .section-head .sh-title{padding-inline:0;padding-top:14px}
body.h-center .section-head .sh-title::before{
  inset-inline-start:50%;top:0;bottom:auto;width:52px;height:5px;transform:translateX(-50%)
}
body.h-center .section-head p{margin-inline:auto;max-width:62ch}
body.h-center .section-head .link-more{margin-top:.2rem}

/* الواجهة العلوية لكل صفحة */
body.h-center .page-hero{align-items:center;text-align:center}
body.h-center .page-hero .breadcrumb{justify-content:center}
body.h-center .page-hero .ph-sub{margin-inline:auto}
body.h-center .page-hero .hero-meta{justify-content:center}
body.h-center .page-hero .ph-body{padding-block:3.2rem}

/* الواجهة الكبيرة في الرئيسية تبقى بتقسيمها، لكن نصّها يتوسّط عند غياب بطاقة العدّاد */
body.h-center .hero-grid.solo{justify-items:center;text-align:center}
body.h-center .hero-grid.solo .hero-meta,
body.h-center .hero-grid.solo .hero-cta{justify-content:center}
body.h-center .hero-grid.solo .lead{margin-inline:auto}

/* عناوين داخلية أخرى */
body.h-center .rk-scope{justify-content:center;text-align:center}
body.h-center .rk-scope-t{width:100%}
body.h-center .cat-head{justify-content:center}
body.h-center .empty{text-align:center}

/* ================= استجابة: من سطح المكتب إلى تطبيق الهاتف ================= */

/* لابتوب صغير: نضغط القائمة قليلاً */
@media(max-width:1180px){
  .hd-nav > ul > li > a{padding:.5rem .5rem;font-size:.86rem}
  .hd-logo{min-width:126px;padding-inline:1rem}
  .hd-logo img{height:40px}
}
@media(max-width:1080px){
  .grid-4{grid-template-columns:repeat(3,1fr)}
  .footer-top{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cols-main{grid-template-columns:1fr}
  .sidebar{position:static}
}

/* تابلت: نخفي بعض روابط القائمة بدل أن تتزاحم */
@media(max-width:1000px){
  .hd-nav > ul > li:nth-child(n+4){display:none}
  .tb-links a{display:none}
  .tb-links .tb-reg{display:inline-block}
}

/* ======== الهاتف: الموقع يتحول إلى واجهة تطبيق ======== */
@media(max-width:860px){
  .hd-in{grid-template-columns:auto 1fr auto;min-height:58px;gap:.4rem}
  .hd-nav{display:none}
  .only-mobile{display:grid}
  .only-desktop{display:none}
  .hd-logo{
    min-width:0;padding:.35rem .8rem 0;border-inline:0;justify-self:center;
  }
  .hd-logo img{height:36px;max-width:140px}
  .hd-logo-t b{font-size:1rem}
  .hd-badge{font-size:.62rem;padding:.2rem .35rem}
  .hd-icon{width:40px;height:40px;border-color:rgba(255,255,255,.32)}

  /* الشريط العلوي: أيقونات التواصل في المنتصف تماماً فوق الشعار، واللغة على الجانب */
  .tb-in{display:flex;position:relative;justify-content:center;align-items:center;min-height:40px;gap:0}
  /* على الهاتف: رابط التسجيل على أحد الطرفين واللغة على الطرف الآخر
     والأيقونات في المنتصف، حتى لا يتزاحم الثلاثة. */
  .tb-links{display:flex;position:absolute;inset-inline-end:0;top:50%;transform:translateY(-50%)}
  .tb-links > *:not(.tb-reg){display:none}
  .tb-links .tb-reg{font-size:.66rem;padding:.08rem .4rem;line-height:1.6}
  .tb-social{justify-content:center;gap:.1rem}
  .tb-social a{width:32px;height:32px}
  .tb-cta{display:none}
  .tb-right{position:absolute;inset-inline-start:0;top:50%;transform:translateY(-50%)}

  .hero-grid{grid-template-columns:1fr}
  .hero{min-height:480px}
  .grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}
  .grid-cols{--cols:2 !important}
  .stats-strip{grid-template-columns:repeat(2,1fr)}
  .event-row{grid-template-columns:70px 1fr;gap:1rem}
  .ev-side{grid-column:1/-1;text-align:start;display:flex;gap:.8rem;align-items:center}

  /* مساحة للقائمة السفلية الثابتة */
  body{padding-bottom:calc(62px + env(safe-area-inset-bottom))}
  .to-top{bottom:calc(74px + env(safe-area-inset-bottom))}
}

@media(max-width:600px){
  .grid-2,.grid-3,.grid-4{grid-template-columns:1fr}
  .grid-cols{--cols:1 !important}
  .section{padding:2.2rem 0}
  .container{padding-inline:var(--gutter-sm,20px)}
  .hero-inner{padding-block:2.6rem 1.8rem}
  .footer-top{grid-template-columns:1fr;gap:1.8rem;text-align:center}
  .footer-top .footer-social,
  .footer-top .foot-contact li{justify-content:center}
  .footer-links a{justify-content:center}
  .feature-card{min-height:300px}
  .gallery-grid{grid-template-columns:repeat(2,1fr)}
  .page-hero .ph-body{padding-block:2.4rem 1.6rem}
  .page-hero h1{font-size:clamp(1.35rem,6vw,1.9rem)}
  .section-head{flex-direction:column;align-items:flex-start;gap:.6rem}
  /* الجداول العريضة: تمرير أفقي داخل إطارها لا في الصفحة */
  .table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
  table.data{min-width:560px}
}

/* ---------- القائمة السفلية الثابتة (شكل التطبيق) ---------- */
.tabbar{display:none}
@media(max-width:860px){
  .tabbar{
    position:fixed;inset-inline:0;bottom:0;z-index:80;
    display:grid;grid-template-columns:repeat(5,1fr);
    background:var(--white);border-top:1px solid var(--border);
    box-shadow:0 -6px 20px rgba(0,0,0,.08);
    padding-bottom:env(safe-area-inset-bottom)
  }
  .tabbar a{
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.22rem;
    padding:.5rem .2rem;color:var(--muted);font-size:.66rem;font-weight:700;line-height:1.2;
    min-height:60px;text-align:center;position:relative
  }
  .tabbar svg{width:21px;height:21px}
  .tabbar a.on{color:var(--brand)}
  .tabbar a.on::before{content:"";position:absolute;top:0;inset-inline:22%;height:3px;background:var(--brand)}
  .tabbar a:active{background:var(--gray-soft)}
}

/* أهداف لمس مريحة على الشاشات اللمسية */
@media (hover:none){
  .filters a,.pagination a,.pagination span{min-height:42px;display:inline-flex;align-items:center}
  .btn{min-height:44px}
}

.page-body{max-width:100%}
.page-body.narrow{max-width:78ch;margin-inline:auto}
body.h-center .page-body.narrow > h2,
body.h-center .page-body.narrow > h3{text-align:center}

/* ===== خريطة ليبيا (تضاريس) ===== */
.ly-wrap{display:grid;grid-template-columns:1.6fr .9fr;gap:2rem;align-items:start}
.ly-wrap.solo{grid-template-columns:1fr}
.ly-map{background:#eef4f7;border:1px solid var(--border);padding:1rem;min-width:0;overflow:hidden}
.ly-map svg{width:100%;height:auto;display:block;max-width:100%}
.ly-rg{pointer-events:none}

/* العلامة — لونها من إعداداتها عبر --pc */
.ly-pt{cursor:pointer}
.ly-pt .ly-halo{transition:opacity .2s}
.ly-pt .ly-pin{transition:r .2s}
.ly-pt .ly-dot{transition:r .2s}
.ly-pt .ly-core{pointer-events:none}
.ly-pt .ly-label{
  font-family:var(--ff-d);font-weight:800;fill:#2c2418;
  paint-order:stroke;stroke:#f3ead6;stroke-width:5px;stroke-linejoin:round;pointer-events:none
}
.ly-pt:hover .ly-halo,.ly-pt:focus-visible .ly-halo{opacity:.28}
.ly-pt:hover .ly-pin, .ly-pt:focus-visible .ly-pin{r:15}
.ly-pt:hover .ly-label,.ly-pt:focus-visible .ly-label{fill:var(--pc,var(--brand))}
.ly-pt:focus-visible{outline:none}

/* المفتاح */
.ly-legend{display:flex;flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none}
.ly-lg{
  display:flex;align-items:center;gap:.8rem;padding:.8rem .9rem;
  background:var(--surface);border:1px solid var(--border);border-inline-start:5px solid var(--pc,var(--brand));
  transition:.16s;text-align:start
}
.ly-lg:hover{background:var(--gray-soft);transform:translateX(-3px)}
[dir=ltr] .ly-lg:hover{transform:translateX(3px)}
.ly-lg-ic{width:36px;height:36px;flex:0 0 auto;display:grid;place-items:center;background:var(--pc,var(--brand));color:#fff}
.ly-lg-ic svg{width:19px;height:19px}
.ly-lg-t{display:flex;flex-direction:column;gap:.15rem;min-width:0;flex:1}
.ly-lg-t b{font-family:var(--ff-d);font-size:.96rem;color:var(--text)}
.ly-lg-t small{font-size:.79rem;color:var(--muted)}
.ly-lg-go{color:var(--muted);flex:0 0 auto}
.ly-lg-go svg{width:16px;height:16px}
[dir=rtl] .ly-lg-go svg{transform:scaleX(-1)}

/* مفتاح ألوان التضاريس */
.ly-key{display:flex;flex-wrap:wrap;gap:.5rem .9rem;margin-top:.9rem;padding-top:.9rem;border-top:1px dashed var(--border)}
.ly-key span{display:flex;align-items:center;gap:.4rem;font-size:.76rem;color:var(--text-2)}
.ly-key i{width:14px;height:14px;flex:0 0 auto;border:1px solid rgba(0,0,0,.15)}

/* بطاقات المواقع */
.mp-card{display:flex;align-items:center;gap:.9rem;padding:1rem 1.1rem;background:var(--surface);
  border:1px solid var(--border);border-top:4px solid var(--pc,var(--brand));transition:.18s}
.mp-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-3px)}
.mp-ic{width:42px;height:42px;flex:0 0 auto;display:grid;place-items:center;background:var(--pc,var(--brand));color:#fff}
.mp-ic svg{width:21px;height:21px}
.mp-b{display:flex;flex-direction:column;gap:.2rem;min-width:0}
.mp-b b{font-family:var(--ff-d);font-size:1rem;color:var(--text)}
.mp-b small{font-size:.82rem;color:var(--muted)}
.mp-co{font-size:.74rem;color:var(--border-2);font-variant-numeric:tabular-nums}

/* ---- الخريطة على الشاشات الصغيرة ---- */
@media(max-width:900px){
  .ly-wrap{grid-template-columns:1fr;gap:1.1rem}
  .ly-pt .ly-label{font-size:26px!important;stroke-width:6px}
}
@media(max-width:600px){
  .ly-map{padding:.5rem}
  .ly-pt .ly-label{font-size:34px!important;stroke-width:8px}
  .ly-pt .ly-pin{r:17}
  .ly-pt .ly-dot{r:13}
  .ly-pt .ly-core{r:5}
  .ly-key span{font-size:.72rem}
  .ly-lg{padding:.7rem .75rem;gap:.6rem}
  .ly-lg-ic{width:32px;height:32px}
}

/* ===== فريق العمل ===== */
.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.4rem}
.tm{background:var(--surface);border:1px solid var(--border);transition:.2s;overflow:hidden}
.tm:hover{border-color:var(--brand);box-shadow:var(--shadow-sm);transform:translateY(-3px)}
.tm-photo{position:relative;aspect-ratio:1/1;background:var(--gray-soft);overflow:hidden}
.tm-photo img{width:100%;height:100%;object-fit:cover;display:block;
  filter:grayscale(1);transition:filter .3s, transform .4s}
.tm:hover .tm-photo img{filter:none;transform:scale(1.04)}
.tm-ph{width:100%;height:100%;display:grid;place-items:center;color:var(--border-2)}
.tm-ph svg{width:56px;height:56px}
.tm-body{padding:1rem 1.1rem 1.2rem;display:flex;flex-direction:column;gap:.3rem;
  border-top:3px solid var(--brand)}
.tm-name{font-family:var(--ff-d);font-size:1.04rem;font-weight:700;color:var(--text);line-height:1.35}
.tm-role{font-size:.85rem;color:var(--muted)}
.tm-mail{display:flex;align-items:center;gap:.45rem;margin-top:.5rem;font-size:.8rem;
  color:var(--accent-2);word-break:break-all}
.tm-mail svg{width:15px;height:15px;flex:0 0 auto}
.tm-mail:hover{color:var(--brand);text-decoration:underline}

.join-box{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;
  background:var(--surface);border:1px solid var(--border);border-inline-start:6px solid var(--brand);padding:1.6rem 1.8rem}
.join-box h3{margin:0 0 .4rem;font-size:1.15rem}
.join-box p{margin:0;color:var(--text-2);font-size:.92rem}

@media(max-width:600px){
  .team-grid{grid-template-columns:repeat(2,1fr);gap:.9rem}
  .tm-body{padding:.8rem .85rem 1rem}
  .tm-name{font-size:.92rem}
  .tm-role{font-size:.78rem}
  .tm-mail{font-size:.72rem}
  .join-box{padding:1.2rem}
}

/* ===== شريط الراليات: ترتيب مستقل لكل رالي ===== */
.scope-bar{background:var(--black);border-bottom:1px solid var(--dark-border)}
.scope-in{display:flex;gap:.4rem;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-block:.55rem}
.scope-in::-webkit-scrollbar{display:none}
.scope-in > a{
  display:flex;align-items:center;gap:.5rem;flex:0 0 auto;
  padding:.55rem .95rem;border:1px solid var(--dark-border);
  color:var(--dark-text-2);font-weight:700;font-size:.86rem;white-space:nowrap;transition:.16s
}
.scope-in > a img{width:22px;height:22px;object-fit:contain;flex:0 0 auto}
.scope-in > a svg{width:16px;height:16px;flex:0 0 auto}
.scope-in > a:hover{border-color:var(--white);color:var(--white)}
.scope-in > a.on{background:var(--rc,var(--brand));border-color:var(--rc,var(--brand));color:var(--white)}

/* ===== تبويبات الفئات: سيارات · شاحنات · دراجات · هواة · كواد ===== */
.cat-tabs{background:var(--gray-soft);border-bottom:2px solid var(--border)}
.ct-in{display:flex;gap:.35rem;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-block:.5rem}
.ct-in::-webkit-scrollbar{display:none}
.ct-in > a{
  display:flex;align-items:center;gap:.5rem;flex:0 0 auto;
  padding:.7rem 1.1rem;background:var(--surface);border:1px solid var(--border);
  color:var(--text-2);font-family:var(--ff-d);font-weight:700;font-size:.9rem;white-space:nowrap;
  transition:.16s;position:relative
}
.ct-in > a svg{width:20px;height:20px;color:var(--cc,var(--brand));flex:0 0 auto;transition:.16s}
.ct-in > a .ct-n{
  font-size:.7rem;font-weight:800;background:var(--gray-soft);color:var(--muted);
  padding:.1rem .42rem;min-width:20px;text-align:center
}
.ct-in > a:hover{border-color:var(--cc,var(--brand));color:var(--text)}
.ct-in > a.on{background:var(--cc,var(--brand));border-color:var(--cc,var(--brand));color:var(--white)}
.ct-in > a.on svg{color:var(--white)}
.ct-in > a.on .ct-n{background:rgba(255,255,255,.22);color:var(--white)}
/* الفئة المميزة بالأصفر تحتاج نصاً أسود */
.ct-in > a.on[style*="#ffda00"], .ct-in > a.on[style*="#FFDA00"]{color:var(--black)}
.ct-in > a.on[style*="#ffda00"] svg, .ct-in > a.on[style*="#FFDA00"] svg{color:var(--black)}

/* سطر النطاق فوق الجدول */
.rk-scope{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap;
  margin-bottom:1.6rem;padding-bottom:.9rem;border-bottom:2px solid var(--border)}
.rk-scope-t h2{font-size:1.5rem;margin:0 0 .25rem}
.rk-scope-t p{margin:0;color:var(--muted);font-size:.87rem}
.rk-season{display:flex;gap:.5rem;align-items:center}
.rk-season label{font-size:.85rem;color:var(--muted)}

@media(max-width:600px){
  .scope-in > a{padding:.5rem .75rem;font-size:.8rem}
  .ct-in > a{padding:.6rem .85rem;font-size:.83rem}
  .ct-in > a svg{width:18px;height:18px}
  .rk-scope{align-items:flex-start;flex-direction:column;gap:.7rem}
  .rk-scope-t h2{font-size:1.25rem}
}

/* ===== رأس فئة النتائج ===== */
.cat-head{display:flex;align-items:center;gap:.7rem;margin:1.6rem 0 .7rem;padding-bottom:.55rem;border-bottom:1px solid var(--border)}
.cat-chip{font-family:var(--ff-d);font-weight:800;font-size:.95rem;color:var(--hi-ink);background:var(--hi);border:0;padding:.3rem .9rem;border-radius:0}
.cat-count{font-size:.8rem;color:var(--muted)}
table.data td.total{font-weight:800;color:var(--brand)}
table.data td.pen{color:var(--brand-dark)}
tr.note-row td{font-size:.76rem;color:var(--muted);padding-top:0;border-top:0}

/* ===== ترتيب السائقين: شارات الحركة والمنصة ===== */
.mv{display:inline-block;font-size:.74rem;font-weight:800;font-variant-numeric:tabular-nums;
    padding:.16rem .5rem;border-radius:0;white-space:nowrap;line-height:1.5}
.mv.up{background:#e3f3e8;color:var(--ok)}
.mv.down{background:#fbe7e2;color:var(--brand)}
.mv.same{background:var(--gray-soft);color:var(--muted)}
.mv.new{background:var(--hi);color:var(--hi-ink)}

.rank-table td{vertical-align:middle}
.rank-pts{color:var(--brand);font-size:1.05rem;font-variant-numeric:tabular-nums}
.rank-table tr.r-up   td:first-child{box-shadow:inset 3px 0 0 var(--ok)}
.rank-table tr.r-down td:first-child{box-shadow:inset 3px 0 0 var(--danger)}
.cat-tag{display:inline-block;font-size:.72rem;font-weight:700;padding:.14rem .55rem;border-radius:0;
         background:var(--surface-3);color:var(--text-2);border:1px solid var(--border-2)}

/* منصة المتصدرين الثلاثة */
.podium{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem;align-items:end;margin:0 0 2rem}
.pod{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);
     padding:1.1rem 1rem;display:flex;flex-direction:column;gap:.3rem;align-items:center;text-align:center;position:relative}
.pod-rank{position:absolute;top:-14px;inset-inline-start:50%;transform:translateX(50%);
          width:30px;height:30px;border-radius:0;display:grid;place-items:center;
          font-weight:900;font-size:.9rem;background:var(--surface-3);color:var(--text-2);border:2px solid var(--bg-2)}
.pod-name{font-family:var(--ff-d);font-size:1rem;margin-top:.5rem}
.pod-team{font-size:.8rem;color:var(--muted)}
.pod-pts{font-weight:900;font-size:1.3rem;color:var(--brand);font-variant-numeric:tabular-nums}
.pod-pts small{font-size:.68rem;font-weight:500;color:var(--muted)}
.pod-1{border-color:var(--hi);border-width:2px;background:var(--gray-soft);padding-block:1.6rem}
.pod-1 .pod-rank{background:var(--hi);color:var(--hi-ink)}
.pod-2 .pod-rank{background:#d8d8d8;color:#000}
.pod-3 .pod-rank{background:var(--brand);color:var(--white)}

@media(max-width:600px){
  .podium{grid-template-columns:1fr;align-items:stretch}
  .pod-1{padding-block:1.2rem}
}

/* ===== نموذج التواصل / طلب التغطية ===== */
.req-switch{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem;margin-bottom:.4rem}
.req-opt{display:flex;gap:.8rem;align-items:center;padding:1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);cursor:pointer;transition:.2s}
.req-opt:hover{border-color:var(--border-2)}
.req-opt input{position:absolute;opacity:0;pointer-events:none}
.req-opt.on{border-color:var(--brand);background:var(--gray-soft);box-shadow:0 0 0 2px var(--brand) inset}
.req-opt .ro-ic{flex:0 0 40px;height:40px;display:grid;place-items:center;border-radius:0;background:var(--bg-2);border:1px solid var(--border);color:var(--accent-2)}
.req-opt .ro-ic .ic{width:1.25em;height:1.25em}
.req-opt.on .ro-ic{background:var(--brand);color:var(--white);border-color:var(--brand)}
.req-opt .ro-tx{display:flex;flex-direction:column;line-height:1.5}
.req-opt .ro-tx b{font-family:var(--ff-d);font-size:.95rem}
.req-opt .ro-tx small{color:var(--muted);font-size:.78rem}

.cov-box{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);padding:1.2rem;display:grid;gap:1.1rem}
.svc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem;margin-top:.4rem}
.svc{display:flex;gap:.55rem;align-items:center;padding:.6rem .75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-2);cursor:pointer;font-size:.87rem;transition:.18s}
.svc:hover{border-color:var(--border-2)}
.svc input{accent-color:var(--accent);width:16px;height:16px;flex:0 0 auto}
.svc:has(input:checked){border-color:var(--brand);background:var(--gray-soft)}

.check-list{list-style:none;padding:0;margin:0;display:grid;gap:.5rem}
.check-list li{display:flex;gap:.55rem;align-items:flex-start;font-size:.87rem;color:var(--text-2)}
.check-list li .ic{color:var(--brand);margin-top:.2rem;flex:0 0 auto}

@media (max-width:860px){
  .req-switch{grid-template-columns:1fr}
}

/* ===== شعارات الرعاة — شبكة بخمسة شعارات في الصف، وتلتف لصفوف إضافية ===== */
.sponsors{border-top:1px solid var(--border);background:var(--gray-soft);padding:2.2rem 0 2.6rem}
/* ثلاثة صفوف مستقلة: شركاء الموقع · رعاة الموقع · شركاء تقنيون */
.sp-block + .sp-block{margin-top:2rem;padding-top:1.8rem;border-top:1px dashed var(--border)}
/* العنوان في الوسط، ورابط «كن راعياً معنا» تحته لا بجانبه */
.sponsors .sp-head{display:flex;flex-direction:column;align-items:center;gap:.35rem;margin-bottom:1.25rem;text-align:center}
.sponsors .sp-head h4{margin:0;font-family:var(--ff-d);font-size:1rem;font-weight:800;letter-spacing:.02em;color:var(--text)}
.sponsors .sp-head h4::after{content:"";display:block;width:44px;height:3px;background:var(--accent);margin:.5rem auto 0}
.sponsors .sp-head .link-more{font-size:.82rem}

/* عدد الأعمدة يأتي من لوحة التحكم عبر --sp-cols (الافتراضي 5) */
/* flex لا grid: عندما تكون الشعارات أقل من عدد الأعمدة تبقى في وسط الصف
   بدل أن تنزاح إلى أحد الطرفين. */
.sp-grid{display:flex;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:1rem}
.sp-grid > *{flex:0 0 calc((100% - (var(--sp-cols,5) - 1) * 1rem) / var(--sp-cols,5))}
/* صف إضافي: الشعارات تلتف تلقائياً بنفس المقاس */
.sp-item{
  width:100%;height:110px;
  display:grid;place-items:center;padding:1rem 1.2rem;
  border:1px solid var(--border);border-radius:0;
  background:var(--surface);transition:border-color .25s, background .25s;
}
.sp-item img{
  max-width:100%;max-height:62px;width:auto;height:auto;object-fit:contain;
  filter:grayscale(1);opacity:.62;transition:filter .25s, opacity .25s;
}
.sp-item:hover{border-color:var(--brand);background:var(--white)}
.sp-item:hover img{filter:none;opacity:1}
.sp-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.sp-name{font-family:var(--ff-d);font-weight:700;color:var(--text-2);font-size:.9rem;text-align:center;line-height:1.4}
.sp-row-sep{grid-column:1/-1;height:0;border-top:1px dashed var(--border);margin:.2rem 0}

@media (max-width:1000px){ .sp-grid{--sp-cols:3 !important} }
@media (max-width:640px){
  .sp-grid{--sp-cols:2 !important;gap:.7rem}
  .sp-grid > *{flex-basis:calc((100% - .7rem) / 2)}
  .sp-item{height:88px;padding:.7rem}
  .sp-item img{max-height:48px}
  .sp-block + .sp-block{margin-top:1.5rem;padding-top:1.3rem}
}

/* ===== تقويم مستقل لكل رالي ===== */
.rally-cal{margin-bottom:2.6rem}
.rc-head{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;flex-wrap:wrap;
         border-inline-start:6px solid var(--brand);background:var(--gray-soft);
         padding:.9rem 1.1rem;margin-bottom:1rem}
.rc-head h2{font-size:1.28rem;margin:0}
.rc-head p{margin:.15rem 0 0;color:var(--muted);font-size:.87rem}
.rc-links{display:flex;gap:1.2rem;flex-wrap:wrap}

/* ===== قائمة الوثائق ===== */
.doc-list{display:grid;gap:.7rem}
.doc{display:flex;align-items:center;gap:1rem;padding:1rem 1.1rem;background:var(--surface);
     border:1px solid var(--border);transition:.18s}
.doc:hover{border-color:var(--brand);background:var(--gray-soft)}
.doc-ic{flex:0 0 44px;height:44px;display:grid;place-items:center;color:var(--white)}
.doc-ic .ic{width:1.1em;height:1.1em}
.doc-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}
.doc-body b{font-family:var(--ff-d);font-size:.98rem}
.doc-meta{display:flex;flex-wrap:wrap;gap:.5rem .9rem;font-size:.78rem;color:var(--muted);align-items:center}
.doc-desc{font-size:.85rem;color:var(--text-2)}
.doc-dl{flex:0 0 auto;font-weight:800;font-size:.85rem;color:var(--brand);display:inline-flex;align-items:center;gap:.3rem}
.doc-dl .ic{width:.8em;height:.8em;transform:scaleX(-1)}
@media(max-width:620px){
  .doc{flex-wrap:wrap}
  .doc-dl{width:100%;justify-content:flex-end}
}

/* ===== تحسين بلوكات الشريط الجانبي ===== */
.sidebar{align-self:start}
.widget-list{display:grid;gap:.55rem}
.widget .card-h{padding:.6rem;border:1px solid var(--border);background:var(--surface);transition:.16s;align-items:center}
.widget .card-h:hover{border-color:var(--brand);background:var(--gray-soft)}
.widget .card-h h4{font-size:.9rem;margin:0 0 .15rem;line-height:1.45}
.widget .card-h .ch-meta{font-size:.76rem;color:var(--muted)}
.widget .ch-media{flex:0 0 78px;height:56px;overflow:hidden;background:var(--gray-soft)}
.widget .ch-media img{width:100%;height:100%;object-fit:cover}

/* مربع الموسم داخل «نسخ الرالي» */
.season-chip{flex:0 0 52px;text-align:center;background:var(--brand);color:var(--white);padding:.45rem 0}
.season-chip b{display:block;font-size:.95rem;font-weight:800;line-height:1.2}

/* قائمة أرقام الرالي */
.fact-list{display:grid;gap:0;margin:0;padding:0;list-style:none}
.fact-list li{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;
              padding:.5rem 0;border-bottom:1px dashed var(--border);font-size:.88rem}
.fact-list li:last-child{border-bottom:0}
.fact-list span{color:var(--muted)}
.fact-list b{font-weight:700;text-align:end}

/* لا ينهار العمودان إلا عند ضيق حقيقي */
@media(max-width:1180px) and (min-width:1081px){
  .cols-main{grid-template-columns:1fr 300px;gap:1.8rem}
}


/* ===== صورة مصغّرة لاسم سائق أو ملاح داخل الجداول ===== */
.pth-w{display:inline-flex;align-items:center;gap:.5rem;min-width:0}
.pth-w:hover .pth-n{color:var(--accent-2)}
.pth{flex:0 0 30px;width:30px;height:30px;border-radius:50%;overflow:hidden;display:grid;place-items:center;
  background:var(--bg-2);border:1px solid var(--border)}
.pth img{width:100%;height:100%;object-fit:cover;display:block}
.pth-i{font-size:.78rem;font-weight:700;color:var(--muted)}
.pth-n{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pth-co{flex:0 0 24px;width:24px;height:24px}
.co-line{display:flex;align-items:center;gap:.4rem;font-size:.82rem;color:var(--muted);margin-top:.15rem}
.co-line .pth-n{font-weight:500}
.co-tag{font-size:.7rem;padding:0 .35rem;border:1px solid var(--border);border-radius:3px;color:var(--muted)}
@media (max-width:640px){ .pth{flex-basis:26px;width:26px;height:26px} }

/* ===== نموذج تسجيل متسابق جديد ===== */
.reg-intro{background:var(--gray-soft);border-inline-start:4px solid var(--accent);padding:1rem 1.2rem;
  font-size:.92rem;line-height:1.9;color:var(--text-2);margin-bottom:1.6rem}
.reg-form .reg-set{border:1px solid var(--border);background:var(--surface);padding:1.4rem 1.5rem;margin-bottom:1.4rem}
.reg-form .reg-set > legend{font-size:1rem;font-weight:800;color:var(--accent);padding:0 .6rem}
.reg-form .reg-set.needed{border-color:var(--accent);box-shadow:0 0 0 3px rgba(196,57,14,.08)}
.reg-form .fs-note{font-size:.82rem;color:var(--muted);line-height:1.8;margin:0 0 1rem}
.reg-form .grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.reg-form .field{display:grid;gap:.35rem}
.reg-form label{font-size:.85rem;font-weight:600;color:var(--text-2)}
.reg-form input,.reg-form select,.reg-form textarea{width:100%;padding:.65rem .8rem;border:1px solid var(--border);
  background:var(--surface);color:var(--text);font:inherit;font-size:.92rem;border-radius:0}
.reg-form input:focus,.reg-form select:focus,.reg-form textarea:focus{outline:2px solid var(--accent);outline-offset:-2px}
.reg-form input[type=file]{padding:.5rem;font-size:.85rem;background:var(--bg-2)}
.reg-agree{display:flex;gap:.7rem;align-items:flex-start;font-size:.88rem;color:var(--text-2);
  line-height:1.8;margin:.4rem 0 1.2rem}
/* مربع الاختيار يجب ألا يرث width:100% من حقول النموذج، وإلا التهم عرض السطر كله
   وانضغط النص إلى عمود من حرف واحد. */
.reg-form input[type=checkbox],.reg-form input[type=radio]{width:auto;flex:0 0 auto}
.reg-agree input{margin-top:.3rem;flex:0 0 auto;width:auto}
.reg-agree > span{flex:1 1 auto;min-width:0}
@media (max-width:720px){ .reg-form .grid-2{grid-template-columns:1fr} .reg-form .reg-set{padding:1.1rem} }

/* ===== بطاقة ملف المتسابق ===== */
.drv-card{display:grid;grid-template-columns:220px 1fr;gap:1.8rem;align-items:start;
  background:var(--surface);border:1px solid var(--border);padding:1.6rem}
.drv-photo{position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--bg-2);border:1px solid var(--border)}
.drv-photo img{width:100%;height:100%;object-fit:cover;display:block}
.drv-num{position:absolute;inset-block-end:0;inset-inline-start:0;background:var(--accent);color:var(--accent-ink);
  font-family:var(--ff-d);font-weight:900;font-size:1rem;padding:.25rem .7rem}
.drv-info h1{font-size:1.8rem;margin:0 0 .5rem;line-height:1.3}
.drv-facts{display:grid;grid-template-columns:auto 1fr;gap:.5rem 1.1rem;margin:1rem 0 0;font-size:.92rem}
/* على الشاشات العريضة نوزّع البيانات على عمودين حتى لا يبقى نصف البطاقة فارغاً */
@media (min-width:900px){ .drv-facts{grid-template-columns:auto minmax(0,1fr) auto minmax(0,1fr);column-gap:2rem} }
.drv-facts dt{color:var(--muted)}
.drv-facts dd{margin:0;font-weight:600}
.drv-social{display:flex;gap:.5rem;margin-top:1.1rem}
.drv-social a{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--border);color:var(--text-2)}
.drv-social a:hover{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}
.drv-social svg{width:16px;height:16px}
.drv-ach{margin:0;padding:0;list-style:none;display:grid;gap:.55rem}
.drv-ach li{position:relative;padding-inline-start:1.5rem;font-size:.94rem;line-height:1.8;color:var(--text-2)}
.drv-ach li::before{content:"";position:absolute;inset-inline-start:0;top:.62em;width:8px;height:8px;background:var(--accent)}

/* ألبوم صور المتسابق */
.drv-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}
.dg-item{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--bg-2);border:1px solid var(--border)}
.dg-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}
.dg-item:hover img{transform:scale(1.06)}

@media (max-width:880px){
  .drv-card{grid-template-columns:1fr;gap:1.2rem}
  .drv-photo{max-width:220px}
  .drv-gallery{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:560px){
  .drv-card{padding:1.1rem}
  .drv-photo{max-width:100%}
  .drv-info h1{font-size:1.45rem}
  .drv-gallery{grid-template-columns:repeat(2,1fr);gap:.6rem}
}

/* ===== ألبوم صور الخبر: ثلاث صور في كل صف ===== */
.art-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem;margin-top:.4rem}
.ag-item{margin:0;display:flex;flex-direction:column}
.ag-item > a{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--bg-2);border:1px solid var(--border)}
.ag-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}
.ag-item:hover img{transform:scale(1.05)}
.ag-item figcaption{font-size:.8rem;color:var(--muted);line-height:1.7;padding:.45rem .1rem 0}
@media (max-width:760px){ .art-gallery{grid-template-columns:repeat(2,1fr);gap:.6rem} }
@media (max-width:420px){ .art-gallery{grid-template-columns:1fr} }

/* ===== بطاقة «تم اعتماد هذه النتيجة من» ===== */
.approved-card{background:var(--surface);border:1px solid var(--border);
  border-top:3px solid var(--brand);padding:1.1rem 1.2rem;margin-bottom:1.2rem;text-align:center}
.ap-head{display:flex;align-items:center;justify-content:center;gap:.45rem;
  font-size:.82rem;font-weight:700;color:var(--muted);line-height:1.7;margin-bottom:.9rem}
.ap-head svg{width:16px;height:16px;color:var(--brand);flex:0 0 auto}
.ap-body{display:flex;flex-direction:column;align-items:center;gap:.6rem;color:inherit}
a.ap-body:hover .ap-name{color:var(--accent-2)}
.ap-logo{max-width:100%;max-height:88px;width:auto;height:auto;object-fit:contain;display:block}
.ap-name{font-family:var(--ff-d);font-weight:800;font-size:.95rem;line-height:1.6;color:var(--text)}
.ap-note{margin:.7rem 0 0;font-size:.8rem;color:var(--muted);line-height:1.8}
.ap-date{margin:.35rem 0 0;font-size:.78rem;color:var(--muted)}

/* ===== حماية الصور من النسخ والسحب =====
   إجراء ردع: يمنع السحب والزر الأيمن والضغط المطوّل والتحديد.
   لا يمنع لقطة الشاشة ولا أدوات المطوّر — لا توجد طريقة تمنعهما على الويب. */
body.noimgcopy img{
  -webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none;
  -webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;
  pointer-events:auto;
}
/* ملاحظة: لا تُدرج .ph-shade هنا — هي طبقة التعتيم فوق البانر وليست حاوية صورة،
   وإعطاؤها position:relative يُلغي inset:0 فينهار ارتفاعها إلى صفر ويختفي التعتيم
   فتصير كتابة البانر غير مقروءة فوق الصور الفاتحة. */
body.noimgcopy .card-media,body.noimgcopy .dg-item,
body.noimgcopy .ag-item > a,body.noimgcopy .drv-photo,body.noimgcopy .sp-item{position:relative}
/* طبقة شفافة فوق الصورة تلتقط الزر الأيمن والسحب بدل الصورة نفسها */
body.noimgcopy .card-media::after,body.noimgcopy .dg-item::after,
body.noimgcopy .ag-item > a::after,body.noimgcopy .drv-photo::after{
  content:"";position:absolute;inset:0;z-index:2;background:transparent
}

/* =====================================================================
   ترتيب السائقين: كتلة مستقلة لكل فئة
   ===================================================================== */
/* ---------- ألبوم المتسابق في العمود الجانبي ---------- */
/* عدد الأعمدة يأتي من الصفحة عبر خاصية مخصّصة، فتستطيع استعلامات
   الوسائط أدناه تجاوزها على الشاشات الصغيرة */
.drv-side-gal{display:grid;grid-template-columns:repeat(var(--dsg-cols,3),1fr);gap:.4rem}
.drv-side-gal .dg-item{aspect-ratio:1/1;position:relative}
/* آخر مربّع يحمل عدد الصور المتبقية ويقود إلى الألبوم الكامل.
   نستعمل ::before لا ::after لأن طبقة منع نسخ الصور تحجز ::after. */
.dsg-more::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.55);z-index:1}
.dsg-n{position:absolute;inset:0;z-index:3;display:grid;place-items:center;
  color:#fff;font-weight:900;font-size:1.05rem;font-family:var(--ff-d);letter-spacing:.5px}
.dsg-hint{margin:.8rem 0 0;font-size:.78rem;line-height:1.8;color:var(--muted)}
/* على الشاشات الصغيرة يصير العمود الجانبي بعرض الصفحة، فتتّسع الشبكة */
@media(max-width:1080px){ .drv-side-gal{--dsg-cols:4 !important} }
@media(max-width:520px){  .drv-side-gal{--dsg-cols:3 !important} }

/* ودجت العمود الجانبي: كتلة صغيرة لكل فئة */
.wrk-cat + .wrk-cat{margin-top:1.1rem;padding-top:.9rem;border-top:1px solid var(--border)}
.wrk-cat h4{display:flex;align-items:center;gap:.45rem;margin:0 0 .35rem;
  font-size:.82rem;font-weight:800;color:var(--text-2);text-transform:none}
.wrk-cat h4 .wrk-ic{width:15px;height:15px;color:var(--cc,var(--brand));flex:0 0 auto}
.wrk-cat h4 > span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wrk-cat h4 a{color:var(--muted);display:inline-flex}
.wrk-cat h4 a:hover{color:var(--accent)}
.wrk-cat .rank-list li{font-size:.85rem}
.wrk-cat .rank-list li::before{background:var(--cc,var(--surface-2));color:#fff;opacity:.92}
.wrk-cat .rank-list a{color:inherit}
.wrk-cat .rank-list a:hover{color:var(--accent)}

.rk-cat{margin-bottom:3.4rem}
.rk-cat:last-child{margin-bottom:0}
.rk-cat + .rk-cat{border-top:1px solid var(--border);padding-top:2.4rem}
.rk-cat-head{margin-bottom:1.2rem}
/* الشريط الجانبي لعنوان القسم يأخذ لون الفئة نفسه */
.rk-cat-head .sh-title::before{background:var(--cc,var(--brand))}
.rk-cat-head h2{display:flex;align-items:center;gap:.55rem;font-size:1.35rem}
.rk-cat-head .rkc-ic{width:22px;height:22px;color:var(--cc,var(--brand))}
.rkc-sub{margin:2rem 0 .9rem;font-size:1.02rem;display:flex;align-items:baseline;gap:.6rem;flex-wrap:wrap}
.rkc-sub small{font-size:.8rem;font-weight:400;color:var(--muted)}
/* العنوان في وضع توسيط العناوين يبقى متوسطاً كبقية الأقسام */
body.h-center .rk-cat-head h2{justify-content:center}

/* =====================================================================
   السجلّ السابق للمتسابق + صفحة تاريخ الراليات
   ===================================================================== */

/* بيان تحت شريط أرقام المتسابق يوضّح ما جاء من السجلّ اليدوي */
.stats-src{margin:.55rem 0 0;font-size:.82rem;line-height:1.9;color:var(--muted)}

/* سجل الانتصارات — تواريخ الموقع التلقائية مع ما أُدخل يدوياً */
.win-log{margin:0;padding:0;list-style:none;display:grid;gap:.5rem}
.win-log li{display:flex;align-items:baseline;gap:.8rem;flex-wrap:wrap;
  background:var(--surface-2);border:1px solid var(--border);
  border-inline-start:4px solid var(--hi);padding:.6rem .9rem}
.wl-date{font-size:.82rem;font-weight:800;color:var(--brand);
  font-variant-numeric:tabular-nums;min-width:8.5rem}
.wl-title{flex:1 1 14rem;font-size:.93rem;line-height:1.7;color:var(--text)}
.wl-title a{color:inherit}
.wl-title a:hover{color:var(--accent)}
.wl-src{font-size:.7rem;font-weight:700;padding:.1rem .5rem;
  background:var(--surface-3);color:var(--muted);border:1px solid var(--border-2)}

/* مقدّمة صفحة التاريخ */
.hist-intro{max-width:70ch}

/* بطاقات الراليات وسنة التأسيس */
.hist-rallies{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}
.hr-item{display:flex;gap:1rem;background:var(--surface);border:1px solid var(--border);
  border-top:3px solid var(--rc,var(--brand));padding:1.1rem}
.hr-logo{flex:0 0 76px;height:76px;display:grid;place-items:center;background:var(--surface-2);
  border:1px solid var(--border);overflow:hidden}
.hr-logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.hr-body{min-width:0}
.hr-body h3{margin:0 0 .35rem;font-size:1.05rem;line-height:1.5}
.hr-body h3 a{color:var(--text)}
.hr-body h3 a:hover{color:var(--accent)}
.hr-body p{margin:.5rem 0 .6rem;font-size:.86rem;line-height:1.8;color:var(--text-2)}
.hr-meta{display:flex;flex-wrap:wrap;gap:.4rem .9rem;font-size:.78rem;color:var(--muted)}
.hr-meta b{color:var(--brand);font-variant-numeric:tabular-nums}

/* الخط الزمني */
.timeline{display:grid;gap:2rem}
.tl-y{display:flex;align-items:center;gap:.8rem;margin:0 0 .9rem;
  font-family:var(--ff-d);font-size:1.5rem;font-weight:900;color:var(--text)}
.tl-y span{background:var(--black);color:var(--white);padding:.2rem .8rem;
  font-variant-numeric:tabular-nums;letter-spacing:.02em}
.tl-y small{font-size:.76rem;font-weight:700;color:var(--muted)}
.tl-y::after{content:"";flex:1;height:2px;background:var(--border)}
.tl-rows{display:grid;gap:.8rem;padding-inline-start:.4rem}
.tl-item{background:var(--surface);border:1px solid var(--border);
  border-inline-start:4px solid var(--rc,var(--brand));padding:1rem 1.1rem}
.tl-item.tl-arch{background:var(--surface-2);border-inline-start-style:dashed}
.tl-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.8rem;flex-wrap:wrap}
.tl-head h4{margin:0;font-size:1.02rem;line-height:1.6;color:var(--text)}
.tl-head h4 a{color:inherit}
.tl-head h4 a:hover{color:var(--accent)}
.tl-ed{font-size:.72rem;font-weight:700;color:var(--muted);margin-inline-start:.4rem}
.tl-tag{font-size:.7rem;font-weight:700;padding:.15rem .55rem;white-space:nowrap;
  background:var(--surface-3);color:var(--text-2);border:1px solid var(--border-2)}
.tl-meta{margin:.35rem 0 0;display:flex;flex-wrap:wrap;gap:.25rem .9rem;
  font-size:.78rem;color:var(--muted)}
.tl-wins{margin:.8rem 0 0;padding:.7rem 0 0;list-style:none;display:grid;gap:.45rem;
  border-top:1px dashed var(--border)}
.tl-wins li{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;font-size:.88rem}
.tl-wins .tw-ic{width:16px;height:16px;color:var(--hi);flex:0 0 auto}
.tw-name{font-weight:800;color:var(--text)}
.tw-name a{color:inherit}
.tw-name a:hover{color:var(--accent)}
.tw-co,.tw-car{font-size:.78rem;color:var(--muted)}
.tw-co a{color:var(--accent-2)}
.tl-note{margin:.7rem 0 0;font-size:.84rem;line-height:1.9;color:var(--text-2)}
.tl-soon{margin:.6rem 0 0;font-size:.8rem;color:var(--muted)}

/* الأرقام القياسية */
.hist-rec{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.hrec-card{background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--brand);padding:1.2rem}
.hrec-card h3{margin:0 0 .9rem;font-size:1.05rem}
.hrec-list{margin:0;padding:0;list-style:none;display:grid;gap:.45rem;counter-reset:hrec}
.hrec-list li{display:flex;justify-content:space-between;align-items:center;gap:.8rem;
  padding:.45rem .1rem;border-bottom:1px dashed var(--border);font-size:.92rem}
.hrec-list li:last-child{border-bottom:0}
.hrec-list li::before{counter-increment:hrec;content:counter(hrec);
  font-size:.72rem;font-weight:800;color:var(--muted);min-width:1.2rem}
.hrec-list li span{flex:1}
.hrec-list li b{font-variant-numeric:tabular-nums;color:var(--brand);font-size:1.05rem}
.hrec-facts{margin:0;display:grid;grid-template-columns:auto 1fr;gap:.5rem 1rem;font-size:.9rem}
.hrec-facts dt{color:var(--muted);font-size:.84rem}
.hrec-facts dd{margin:0;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums}
.hrec-hint{margin:.9rem 0 0;font-size:.78rem;line-height:1.8;color:var(--muted)}

@media(max-width:640px){
  .hr-item{flex-direction:column}
  .hr-logo{flex:0 0 auto;width:64px;height:64px}
  .wl-date{min-width:auto}
  .tl-y{font-size:1.25rem}
}
