:root { --p:#1A5FA8;--pd:#0E3F75;--pp:#EBF3FB;--s:#1E7A5C;--sp:#E7F5F0;--a:#E86920;--ap:#FEF0E7;--w:#D4920A;--wp:#FEF7E7;--con:#0F4C81;--conp:#E8F4FD;--n50:#F7F8FA;--n100:#EFF1F5;--n200:#DDE1EA;--n400:#9BA3B2;--n600:#5B6478;--n800:#2C3345;--n900:#151C2C;--white:#fff;--r-md:10px;--r-lg:16px;--r-xl:24px;--sh-sm:0 1px 3px rgba(0,0,0,.06);--sh-md:0 4px 14px rgba(0,0,0,.08);--fh:'Cairo',sans-serif;--fb:'IBM Plex Sans Arabic','Cairo',sans-serif;--pad:clamp(20px,6vw,80px) }
body { font-family:var(--fb);background:var(--white);color:var(--n800);font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased }
.btn-wh:hover { background:#1da856;transform:translateY(-1px) }
.nav-logo-icon { width:38px;height:38px;background:var(--p);border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;flex-shrink:0 }
.bc-inner span { color:var(--con);font-weight:600 }
.prose h2 { font-family:var(--fh);font-size:26px;font-weight:800;color:var(--n900);margin:44px 0 16px;line-height:1.35;border-right:4px solid var(--con);padding-right:14px }
.prose ul,.prose ol { margin-bottom:20px;padding-right:20px }
.prose ol li { list-style:decimal }
.prose table { width:100%;border-collapse:collapse;margin:28px 0;font-size:14px;overflow:hidden;border-radius:var(--r-lg);box-shadow:var(--sh-sm) }
.prose table th { background:var(--con);color:#fff;padding:13px 16px;text-align:right;font-family:var(--fh);font-size:13px;font-weight:700 }
.prose table td { padding:12px 16px;border-bottom:1px solid var(--n100);vertical-align:top;font-size:14px }
.prose table tr:nth-child(even) td { background:var(--n50) }
.prose table tr:hover td { background:var(--conp) }
.prose table tr:last-child td { border-bottom:none }
.ib-con { background:var(--conp);border:1px solid rgba(15,76,129,.15) }
.ib-con i,.ib-con .info-box-title { color:var(--con) }
.ib-green { background:var(--sp);border:1px solid rgba(30,122,92,.15) }
.ib-green i,.ib-green .info-box-title { color:var(--s) }
.ib-red { background:#FEE7E7;border:1px solid rgba(192,57,43,.15) }
.ib-red i,.ib-red .info-box-title { color:#C0392B }
.ib-yellow { background:var(--wp);border:1px solid rgba(212,146,10,.15) }
.ib-yellow i,.ib-yellow .info-box-title { color:var(--w) }
.contract-types { display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:24px 0 }
.ct { border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--sh-sm) }
.ct-head { padding:14px 18px;font-family:var(--fh);font-size:14px;font-weight:800;color:#fff;display:flex;align-items:center;gap:8px }
.ct-body { padding:14px 18px;display:flex;flex-direction:column;gap:6px }
.ct-pro { display:flex;gap:8px;font-size:13px;align-items:flex-start;line-height:1.6 }
.ct-pro i { font-size:12px;flex-shrink:0;margin-top:2px }
.sla-matrix { display:flex;flex-direction:column;gap:8px;margin:24px 0 }
.sm-row { display:grid;grid-template-columns:140px 1fr 100px 100px;gap:12px;align-items:center;padding:10px 16px;border-radius:var(--r-md);border:1px solid var(--n200);font-size:13px }
.sm-row.header { background:var(--con);border-color:var(--con);font-family:var(--fh);font-size:12px;font-weight:700;color:#fff }
.sm-type { font-family:var(--fh);font-weight:700;color:var(--n900) }
.sm-example { color:var(--n600) }
.sm-response { font-family:var(--fh);font-weight:700;text-align:center }
.sm-penalty { font-family:var(--fh);font-weight:700;color:#C0392B;text-align:center }
.scorecard { background:var(--n900);border-radius:var(--r-xl);overflow:hidden;margin:28px 0;box-shadow:var(--sh-md) }
.sc-bar { background:#071b2c;padding:12px 18px;display:flex;align-items:center;gap:10px }
.sc-title { font-family:var(--fh);font-size:11px;font-weight:700;color:rgba(255,255,255,.7) }
.sc-body { padding:16px;display:flex;flex-direction:column;gap:8px }
.sc-kpi { display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.06);border-radius:var(--r-md);padding:10px 14px }
.sc-kpi-name { font-family:var(--fh);font-size:12px;font-weight:700;color:#fff;flex:1 }
.sc-kpi-target { font-size:11px;color:rgba(255,255,255,.5);flex:0 0 80px;text-align:center }
.sc-kpi-actual { font-family:var(--fh);font-size:14px;font-weight:900;flex:0 0 60px;text-align:center }
.sc-kpi-bar { flex:0 0 80px;height:8px;background:rgba(255,255,255,.1);border-radius:4px;overflow:hidden }
.sc-kpi-fill { height:100%;border-radius:4px }
.red-flags { display:flex;flex-direction:column;gap:10px;margin:24px 0 }
.rf { display:flex;gap:12px;padding:14px 18px;background:#FEE7E7;border:1px solid rgba(192,57,43,.15);border-radius:var(--r-lg);align-items:flex-start }
.rf-ico { width:34px;height:34px;border-radius:50%;background:#FECECE;color:#C0392B;display:flex;align-items:center;justify-content:center;font-size:15px;flex-shrink:0 }
.rf-title { font-family:var(--fh);font-size:13px;font-weight:700;color:#C0392B;margin-bottom:3px }
.rf-action { font-size:12px;color:var(--n600);line-height:1.65 }
.stat-item { background:var(--conp);border:1px solid rgba(15,76,129,.1);border-radius:var(--r-lg);padding:16px;text-align:center }
.stat-val { font-family:var(--fh);font-size:28px;font-weight:900;color:var(--con);line-height:1;margin-bottom:6px }
.art-cta { background:linear-gradient(135deg,#072a4d,var(--con));border-radius:var(--r-xl);padding:28px;color:#fff;margin:40px 0;text-align:center }
.faq-q:hover,.faq-item.open .faq-q { background:var(--conp);color:var(--con) }
.faq-item.open .faq-q-ico { background:var(--con);transform:rotate(180deg) }
.faq-a { display:none;padding:0 20px 18px;font-size:14px;color:var(--n600);line-height:1.8;background:var(--conp) }
.toc-item:hover,.toc-item.active { background:var(--conp);color:var(--con) }
.sb-stat-row { display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--n100);font-size:13px }
.sb-stat-row:last-child { border-bottom:none }
.sb-stat-val { font-family:var(--fh);font-weight:700;color:var(--con) }
.footer { background:var(--n900);padding:36px var(--pad) 24px;margin-top:60px }
.ft-inner { max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px }

@media(max-width:768px) {
  .stat-strip,.contract-types { grid-template-columns:1fr 1fr }
  .sm-row { grid-template-columns:1fr 1fr }
}
