@charset "UTF-8";
/* ============================================================
   ELECT LB — أنماط الكُتل (Block Builder) + قيم احتياطية للمتغيرات
   ملاحظة: قواعد تلوين الموقع تُولَّد inline من core.theming
   (وسم <style id="site-theme">) وتُحقن بعد هذا الملف لتضمن الأولوية.
   ============================================================ */

:root{
  --tb-1:#150a28; --tb-2:#0b1f3a; --tb-angle:135deg;
  --brand:#7c3aed; --primary:#1d4ed8; --primary-2:#6082f0; --primary-ink:#eaf0ff;
  --clr-bg:#eceff5; --clr-surface:#ffffff; --clr-surface2:#f7f9fc;
  --clr-ink:#0f172a; --clr-muted:#64748b; --clr-line:#e3e8f0;
  --ok:#059669; --ok-ink:#e4f6ee; --bad:#dc2626; --bad-ink:#fdeaea; --warn:#d97706; --warn-ink:#fdf1e0;
  --grad-prim:linear-gradient(135deg,var(--brand),var(--primary));
  --grad-prim2:linear-gradient(90deg,var(--brand),var(--primary));
  --grad-tb:linear-gradient(var(--tb-angle),var(--tb-1),var(--tb-2));
}

/* انتقال سلس عند تبديل التدرج */
@media (prefers-reduced-motion: no-preference){
  html, body, .topnav, .ld-nav, .anon-nav, .ld-hero, .ld-cta-band,
  body.app .sidebar, .btn.primary, .bar-fill{ transition: background .4s ease, color .4s ease; }
}

/* ============================================================
   مكوّنات منظّم الصفحات (Block Builder) — أبعاد موحّدة
   ============================================================ */
.lb-area{ max-width:1160px; margin:0 auto; padding:1.4rem 1.2rem 2.5rem; }
.lb-area .lb-head{ display:flex; align-items:center; gap:.6rem; margin-bottom:1rem; }
.lb-area .lb-head::before{ content:""; width:5px; height:22px; border-radius:4px; background:var(--grad-prim); }

.lb-cols{ display:flex; gap:16px; align-items:flex-start; flex-wrap:wrap; }
.lb-col{ flex:1 1 0; min-width:260px; display:flex; flex-direction:column; gap:16px; }

.lb-block{ background:var(--clr-surface); border:1px solid var(--clr-line); border-radius:14px;
  box-shadow:0 1px 2px rgba(15,23,42,.05), 0 8px 24px -12px rgba(15,23,42,.14); padding:1.1rem 1.2rem; }
.lb-block .lb-card-t{ margin:0 0 .6rem; font-size:.92rem; display:flex; align-items:center; gap:.5rem; }
.lb-block .lb-card-t::before{ content:""; width:9px; height:9px; border-radius:3px; background:var(--grad-prim); }
.lb-h2{ margin:0; font-size:1.6rem; line-height:1.4; background:var(--grad-prim2);
  -webkit-background-clip:text; background-clip:text; color:transparent; }
.lb-p{ margin:0; color:var(--clr-muted); line-height:1.9; }
.lb-muted{ color:var(--clr-muted); font-size:.9rem; }

.lb-stats{ display:grid; grid-template-columns:repeat(auto-fit,minmax(120px,1fr)); gap:12px; }
.lb-stat{ background:var(--clr-surface2); border:1px solid var(--clr-line); border-radius:11px; padding:.8rem; text-align:center; }
.lb-stat b{ display:block; font-size:1.5rem; background:var(--grad-prim2); -webkit-background-clip:text;
  background-clip:text; color:transparent; line-height:1.3; }
.lb-stat span{ font-size:.78rem; color:var(--clr-muted); }

.lb-tblwrap{ overflow-x:auto; }
.lb-table{ width:100%; border-collapse:collapse; font-size:.85rem; }
.lb-table th{ background:var(--clr-surface2); color:var(--clr-muted); text-align:right;
  padding:.5rem .7rem; border-bottom:1px solid var(--clr-line); font-size:.75rem; }
.lb-table td{ padding:.5rem .7rem; border-bottom:1px solid var(--clr-line); }

.lb-form{ display:grid; gap:10px; }
.lb-form input{ border:1px solid var(--clr-line); border-radius:10px; padding:.55rem .7rem; font:inherit; }
.lb-form button{ border:0; border-radius:10px; background:var(--grad-prim); color:#fff;
  padding:.6rem 1rem; font:inherit; font-weight:700; cursor:pointer; }

.lb-proposal{ display:flex; align-items:center; gap:.8rem; }
.lb-proposal b{ font-size:1.6rem; background:var(--grad-prim2); -webkit-background-clip:text;
  background-clip:text; color:transparent; }
.lb-proposal span{ color:var(--clr-muted); font-size:.86rem; flex:1; }

@media(max-width:760px){ .lb-cols{ flex-direction:column; } .lb-col{ min-width:0; } }
