:root{
  --primary:#475569; --secondary:#64748b; --accent:#2563eb; --accent-soft:#eff6ff;
  --bg:#f8fafc; --fg:#1e293b; --muted:#eaeff3; --border:#e2e8f0; --ink:#0b1f3a;
  --warn:#b45309; --warn-soft:#fffbeb; --warn-line:#f59e0b;
  --tip:#15803d; --tip-soft:#f0fdf4; --tip-line:#22c55e;
  --note:#475569; --note-soft:#f1f5f9; --note-line:#94a3b8;
  --info-line:#2563eb;
  --shadow:0 1px 2px rgba(15,23,42,.06),0 8px 24px -12px rgba(15,23,42,.18);
  --radius:14px;
  --font-ar:'IBM Plex Sans Arabic','Noto Kufi Arabic','Segoe UI',sans-serif;
  --font-en:'Inter',system-ui,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--bg);color:var(--fg);
  font-family:var(--font-ar);font-size:17px;line-height:1.95;
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:1180px;margin:0 auto;padding:0 22px}
header.top{position:sticky;top:0;z-index:50;background:rgba(11,31,58,.94);
  backdrop-filter:blur(12px);border-bottom:3px solid var(--accent);color:#fff}
header.top .in{max-width:1180px;margin:0 auto;padding:12px 22px;display:flex;
  align-items:center;gap:14px;justify-content:space-between}
header.top .brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:17px}
header.top .brand svg{width:22px;height:22px;stroke:#7dd3fc}
header.top nav{display:flex;gap:6px;flex-wrap:wrap;font-size:14px}
header.top nav a{color:#cfe3f5;text-decoration:none;padding:5px 10px;border-radius:8px;
  transition:background .2s ease,color .2s ease}
header.top nav a:hover{background:rgba(255,255,255,.12);color:#fff}
.hero{background:linear-gradient(140deg,#0b1f3a 0%,#123162 55%,#0b1f3a 100%);
  color:#fff;padding:54px 0 46px;position:relative;overflow:hidden}
.hero:after{content:"";position:absolute;inset:auto -10% -60% 40%;height:320px;
  background:radial-gradient(circle at 30% 30%,rgba(37,99,235,.35),transparent 60%)}
.hero .kicker{display:inline-block;font-family:var(--font-en);font-size:12px;
  letter-spacing:.18em;text-transform:uppercase;color:#7dd3fc;border:1px solid rgba(125,211,252,.4);
  padding:5px 12px;border-radius:99px;margin-bottom:18px}
.hero h1{margin:0 0 14px;font-size:clamp(26px,3.6vw,44px);line-height:1.4;font-weight:700}
.hero p{margin:0;max-width:760px;color:#dbeafe;font-size:16.5px;line-height:1.9}
.hero .meta{margin-top:22px;display:flex;gap:10px;flex-wrap:wrap;font-size:13.5px}
.hero .meta span{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);
  padding:6px 12px;border-radius:99px;color:#e0f2fe}
main{padding:40px 0 70px}
section.block{background:#fff;border:1px solid var(--border);border-radius:var(--radius);
  padding:30px 32px;margin:0 0 22px;box-shadow:var(--shadow)}
h1.sec{display:flex;align-items:center;gap:14px;font-size:clamp(21px,2.4vw,28px);
  margin:0 0 18px;padding-bottom:16px;border-bottom:2px solid var(--border);line-height:1.5}
h1.sec .num{font-family:var(--font-en);font-size:14px;font-weight:700;color:#fff;
  background:var(--ink);border-radius:9px;padding:5px 10px;letter-spacing:.04em}
h2.sub{font-size:20px;margin:30px 0 12px;color:var(--ink);line-height:1.6;
  display:flex;align-items:center;gap:10px}
h2.sub:before{content:"";width:5px;height:20px;background:var(--accent);border-radius:3px;display:inline-block}
h3{font-size:17.5px;margin:22px 0 10px;color:var(--primary)}
p.b{margin:0 0 14px;color:#334155}
ul.b,ol.b{margin:0 0 14px;padding-inline-start:22px}
ul.b li,ol.b li{margin-bottom:9px;color:#334155}
ul.b li::marker{color:var(--accent)}
ol.b li::marker{color:var(--accent);font-weight:700}
strong{color:#0f172a}
em{color:var(--secondary)}
table{width:100%;border-collapse:collapse;margin:6px 0 18px;font-size:15.5px;
  border:1px solid var(--border);border-radius:10px;overflow:hidden}
thead th{background:var(--ink);color:#fff;text-align:right;padding:12px 14px;
  font-weight:600;font-size:15px;white-space:nowrap}
tbody td{padding:11px 14px;border-top:1px solid var(--border);color:#334155;vertical-align:top}
tbody tr:nth-child(even){background:#fbfdff}
tbody tr:hover{background:var(--accent-soft)}
.callout{display:flex;gap:14px;padding:16px 18px;border-radius:12px;margin:16px 0;
  border:1px solid var(--border);border-inline-start:5px solid var(--note-line);
  background:var(--note-soft)}
.callout .ico{flex:0 0 auto;width:22px;height:22px;margin-top:5px}
.callout .ico svg{width:22px;height:22px;stroke-width:2}
.callout p{margin:0;font-size:16.5px;color:#334155}
.callout.info{border-inline-start-color:var(--info-line);background:var(--accent-soft)}
.callout.info .ico svg{stroke:var(--info-line)}
.callout.warning{border-inline-start-color:var(--warn-line);background:var(--warn-soft)}
.callout.warning .ico svg{stroke:var(--warn)}
.callout.tip{border-inline-start-color:var(--tip-line);background:var(--tip-soft)}
.callout.tip .ico svg{stroke:var(--tip)}
.callout.note .ico svg{stroke:var(--note)}
figure{margin:20px 0;background:#fff;border:1px solid var(--border);border-radius:12px;
  overflow:hidden;box-shadow:var(--shadow)}
figure img{display:block;width:100%;height:auto;background:#fff}
figure figcaption{font-size:14.5px;color:var(--secondary);padding:12px 16px;
  border-top:1px solid var(--border);background:#fbfdff;display:flex;
  justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}
figure figcaption a{color:var(--accent);text-decoration:none;font-family:var(--font-en);
  font-size:13px;border:1px solid var(--border);padding:3px 9px;border-radius:99px;
  transition:background .2s ease}
figure figcaption a:hover{background:var(--accent-soft)}
hr{border:none;border-top:1px dashed var(--border);margin:22px 0}
footer{background:var(--ink);color:#cfe3f5;padding:34px 0 40px;font-size:15px}
footer .wrap{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}
footer a{color:#7dd3fc;text-decoration:none}
.toc{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}
.toc a{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--fg);
  border:1px solid var(--border);border-radius:11px;padding:11px 14px;font-size:15.5px;
  background:#fff;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.toc a:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#cbd5e1}
.toc a b{font-family:var(--font-en);font-size:12.5px;color:var(--accent)}
@media(max-width:640px){
  section.block{padding:22px 18px}
  body{font-size:16px;line-height:1.9}
  header.top nav{display:none}
  table{font-size:14.5px;display:block;overflow-x:auto}
}
@media print{
  header.top,footer,.hero .meta{display:none}
  body{background:#fff;font-size:11.5pt}
  section.block{box-shadow:none;border:none;padding:0;margin:0 0 14px;break-inside:avoid}
  figure{break-inside:avoid;page-break-inside:avoid}
  h1.sec{break-after:avoid}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
