/* ===================== بانر الصفحة الرئيسية: نتائج الحزب بدائرة القنيطرة ===================== */
.hero-resultats{padding:60px 0 70px}
.res-panneau{
  position:relative;text-align:right;
  background:linear-gradient(160deg,rgba(255,255,255,.13),rgba(255,255,255,.04));
  border:1px solid rgba(255,255,255,.2);border-radius:calc(var(--rayon) + 8px);
  padding:36px 40px 30px;backdrop-filter:blur(6px);box-shadow:0 30px 60px rgba(0,0,0,.2);
}

/* الرأس */
.res-entete{display:flex;align-items:center;justify-content:space-between;gap:32px}
.res-titres{flex:1;min-width:0}
.res-marque{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.res-logo{
  width:44px;height:44px;border-radius:50%;background:#fff;flex-shrink:0;display:flex;align-items:center;justify-content:center;
  padding:6px;box-shadow:0 8px 18px rgba(0,0,0,.22);
}
.res-logo img{width:100%;height:100%;object-fit:contain}
.res-tag{
  display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);
  padding:6px 14px;border-radius:99px;font-size:.78rem;font-weight:700;
}
.res-tag i{width:7px;height:7px;border-radius:50%;background:var(--orange);display:block;animation:nabd-mubashir 1.8s infinite}
.res-panneau h1{font-size:2.3rem;margin-bottom:10px;line-height:1.35}
.res-sous{font-size:1.06rem;opacity:.95;max-width:560px;margin:0}
.res-sous b{color:var(--or-doux)}

.res-donut{position:relative;width:180px;height:180px;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.res-donut svg{position:absolute;inset:0;filter:drop-shadow(0 10px 22px rgba(232,121,26,.35))}
.res-donut-arc{transition:stroke-dasharray 1.2s cubic-bezier(.22,.8,.3,1)}
.res-donut-texte{position:relative;text-align:center}
.res-donut-texte strong{display:block;font-size:2.1rem;font-weight:800;line-height:1}
.res-donut-texte span{display:block;font-size:.74rem;opacity:.88;margin-top:6px;line-height:1.45}

/* الأرقام الثلاثة */
.res-chiffres{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.14);
  border-radius:var(--rayon-sm);overflow:hidden;margin:28px 0 22px;
}
.res-chiffre{background:rgba(255,255,255,.06);padding:18px 14px;text-align:center}
.res-chiffre strong{display:block;font-size:1.9rem;font-weight:800;color:var(--orange);line-height:1.15;font-variant-numeric:tabular-nums}
.res-chiffre span{display:block;font-size:.8rem;opacity:.88;margin-top:6px}

/* الترتيب + التفاصيل */
.res-corps{display:grid;grid-template-columns:1.65fr 1fr;gap:22px;align-items:start}
.res-classement{
  background:rgba(0,0,0,.16);border:1px solid rgba(255,255,255,.13);border-radius:18px;padding:18px 16px 12px;
}
.res-outils{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:0 4px 12px}
.res-outils h2{font-size:1.05rem;font-weight:800;color:#fff}
.res-filtres{display:inline-flex;background:rgba(255,255,255,.1);border-radius:999px;padding:3px}
.res-filtres button{
  border:0;background:transparent;color:#fff;font-family:inherit;font-weight:700;font-size:.8rem;
  padding:7px 16px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s;
}
.res-filtres button:hover{background:rgba(255,255,255,.12)}
.res-filtres button[aria-pressed="true"]{background:#fff;color:var(--bleu-fonce)}

.res-liste{list-style:none;display:flex;flex-direction:column;gap:2px}
.res-btn{
  width:100%;display:grid;grid-template-columns:26px minmax(120px,200px) 1fr auto;align-items:center;gap:12px;
  background:transparent;border:1px solid transparent;border-radius:12px;padding:7px 10px;color:#fff;
  font-family:inherit;text-align:right;cursor:pointer;transition:background .2s,border-color .2s;
}
.res-btn:hover,.res-ligne.sel .res-btn{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.22)}
.res-rang{
  width:24px;height:24px;border-radius:8px;background:rgba(255,255,255,.14);display:grid;place-items:center;
  font-size:.72rem;font-weight:800;
}
.res-nom{font-weight:700;font-size:.9rem;display:flex;align-items:center;gap:8px;flex-wrap:wrap;line-height:1.5}
.res-siege{
  font-style:normal;font-size:.64rem;font-weight:800;padding:1px 8px;border-radius:99px;
  border:1px solid rgba(255,255,255,.55);color:#fff;
}
.res-barre{height:10px;border-radius:99px;background:rgba(255,255,255,.12);overflow:hidden}
.res-barre i{
  display:block;height:100%;border-radius:99px;
  background:linear-gradient(90deg,rgba(168,204,244,.95),rgba(168,204,244,.5));
  transition:width .9s cubic-bezier(.22,.8,.3,1);
}
.res-val{font-size:.84rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.res-val b{font-weight:800}

/* لائحة الحزب */
.res-pjd .res-btn{background:rgba(232,121,26,.14);border-color:rgba(232,121,26,.4)}
.res-pjd .res-nom,.res-pjd .res-val b{color:var(--or-doux);font-weight:800}
.res-pjd .res-rang{background:var(--orange)}
.res-pjd .res-barre i{background:linear-gradient(90deg,var(--or-doux),var(--orange));box-shadow:0 0 14px rgba(232,121,26,.55)}
.res-pjd .res-siege{border-color:var(--or-doux);color:var(--or-doux)}

/* حدّ المقاعد */
.res-seuil{display:flex;align-items:center;gap:10px;margin:6px 0;color:var(--or-doux);font-size:.72rem;font-weight:700}
.res-seuil::before,.res-seuil::after{content:"";flex:1;border-top:1.5px dashed rgba(247,173,107,.5)}

/* إخفاء اللوائح بعد العاشرة افتراضيا */
.res-extra{display:none}
.res-liste.tout .res-extra{display:block;animation:res-apparait .4s ease both}
@keyframes res-apparait{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}

/* لوحة التفاصيل والمقارنة */
.res-detail{
  background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.2);border-radius:18px;padding:20px;
  position:sticky;top:96px;
}
.res-detail h3{font-size:1.05rem;font-weight:800;margin-bottom:12px;color:#fff}
.res-detail h3 span{opacity:.75;font-weight:700}
.res-sieges{list-style:none;display:flex;flex-direction:column;gap:8px}
.res-sieges li{
  display:grid;grid-template-columns:12px 1fr;column-gap:10px;align-items:center;
  padding:9px 12px;border-radius:12px;background:rgba(255,255,255,.08);
}
.res-sieges li.res-pjd{background:rgba(232,121,26,.2)}
.res-pastille{width:10px;height:10px;border-radius:50%;background:#a8ccf4;grid-row:span 2}
.res-sieges li.res-pjd .res-pastille{background:var(--orange);box-shadow:0 0 0 3px rgba(232,121,26,.3)}
.res-sieges strong{font-size:.92rem;font-weight:800}
.res-sieges small{grid-column:2;opacity:.82;font-size:.76rem}
.res-participation{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.res-participation div{background:rgba(0,0,0,.16);border-radius:12px;padding:9px 12px}
.res-participation span{display:block;font-size:.72rem;opacity:.82}
.res-participation strong{font-size:1.05rem;font-weight:800;font-variant-numeric:tabular-nums}
.res-invite{margin:12px 0 0;font-size:.78rem;opacity:.82}

.res-retour{
  border:0;background:transparent;color:var(--or-doux);font-family:inherit;font-weight:800;font-size:.82rem;
  cursor:pointer;padding:0;margin-bottom:10px;
}
.res-retour:hover{color:#fff}
.res-cmp-grille{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
.res-cmp-grille div{background:rgba(0,0,0,.16);border-radius:12px;padding:9px 8px;text-align:center}
.res-cmp-grille span{display:block;font-size:.7rem;opacity:.82}
.res-cmp-grille strong{font-size:1.05rem;font-weight:800;font-variant-numeric:tabular-nums}
.res-cmp-diff{
  font-size:.85rem;line-height:1.85;background:rgba(255,255,255,.08);border-radius:12px;padding:10px 12px;margin-bottom:10px;
}
.res-cmp-diff b{color:var(--or-doux);font-variant-numeric:tabular-nums}
.res-cmp-etat{font-size:.83rem;line-height:1.85;border-radius:12px;padding:10px 12px;margin-bottom:12px;font-weight:700}
.res-cmp-etat.oui{background:rgba(61,220,132,.16);border:1px solid rgba(61,220,132,.4)}
.res-cmp-etat.non{background:rgba(255,255,255,.07);border:1px dashed rgba(255,255,255,.3)}
.res-cmp-barres{display:flex;flex-direction:column;gap:8px}
.res-cmp-barres div{display:grid;grid-template-columns:96px 1fr;gap:10px;align-items:center;font-size:.74rem}
.res-cmp-barres span{opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.res-cmp-barres em{display:block;height:9px;border-radius:99px;background:rgba(168,204,244,.9);transition:width .5s ease}
.res-cmp-barres em.pjd{background:linear-gradient(90deg,var(--or-doux),var(--orange))}

/* بطاقة المقارنة المنفتحة تحت الصف (الشاشات الضيقة) */
.res-inline{
  margin:2px 4px 12px;padding:14px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.2);border-radius:14px;
  animation:res-apparait .3s ease both;
}

/* السياق + المصادر */
.res-panneau .hero-boutons{margin-top:22px}

@media (max-width:980px){
  .res-corps{grid-template-columns:1fr}
  .res-detail{position:static}
}
@media (max-width:760px){
  .hero-resultats{padding:40px 0 50px}
  .res-panneau{padding:24px 16px 22px}
  .res-entete{flex-direction:column-reverse;text-align:center;gap:18px}
  .res-marque{justify-content:center}
  .res-panneau h1{font-size:1.75rem}
  .res-sous{margin-inline:auto}
  .res-chiffres{grid-template-columns:1fr}
  .res-btn{grid-template-columns:24px 1fr auto;grid-template-areas:"rang nom val" ". barre barre";row-gap:6px;padding:9px 8px}
  .res-rang{grid-area:rang}.res-nom{grid-area:nom}.res-val{grid-area:val}.res-barre{grid-area:barre}
  .res-cmp-barres div{grid-template-columns:76px 1fr}
}
@media (prefers-reduced-motion:reduce){
  .res-barre i,.res-donut-arc,.res-cmp-barres em{transition:none}
  .res-liste.tout .res-extra,.res-inline{animation:none}
}
