/* ICFA Academy — مكافحة العدوى للجميع */
:root{
  --blue:#1B4FD8; --blue-d:#1640B0; --blue-l:#DDE5F9; --blue-xl:#EEF2FD;
  --teal:#00C2A8; --teal-d:#00A08B; --teal-dd:#007A6A; --teal-l:#E0F7F3;
  --ink:#0B1020; --ink-2:#2B3245; --muted:#626B7E; --muted-2:#98A0AE; --muted-3:#9AA3B8;
  --line:#EAECF1; --line-2:#D9DDE5; --line-3:#E1E4EB; --bg:#F7F8FA; --bg-2:#F4F6F9;
  --red:#C2314B; --red-2:#E5486A; --red-l:#FFF1F3;
  --font:'Thmanyah Sans',Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);font-family:var(--font);-webkit-font-smoothing:antialiased;color:var(--ink);overflow-x:hidden}
a{color:var(--blue);text-decoration:none}
a:hover{color:var(--ink)}
input,textarea,select,button{font-family:inherit;font-size:inherit;color:inherit}
button{cursor:pointer;border:0;background:none;padding:0}
h1,h2,h3,p{margin:0}
.wrap{max-width:1240px;margin:0 auto;padding-inline:24px}
.ltr{direction:ltr}
.muted{color:var(--muted)}
.hide{display:none!important}
[hidden]{display:none!important}

/* ── أزرار ── */
.btn{height:48px;padding:0 22px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font:700 15px/1 var(--font);cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s;text-align:center}
.btn-primary{background:var(--blue);color:#fff}
.btn-primary:hover{background:var(--blue-d);color:#fff}
.btn-teal{background:var(--teal);color:var(--ink)}
.btn-teal:hover{background:#00d6b9;color:var(--ink)}
.btn-white{background:#fff;color:var(--blue)}
.btn-white:hover{background:var(--blue-l);color:var(--blue)}
.btn-ghost{border:1.5px solid var(--line-2);color:var(--ink);background:#fff;font-weight:500}
.btn-ghost:hover{border-color:var(--blue);color:var(--blue)}
.btn-outline{border:1.5px solid var(--blue);color:var(--blue);background:#fff}
.btn-outline:hover{background:var(--blue-xl)}
.btn-lg{height:54px;padding:0 28px;font-size:16px}
.btn-sm{height:38px;padding:0 14px;font-size:14px;border-radius:10px}
.btn-block{width:100%}
.btn[disabled],.btn.busy{opacity:.6;pointer-events:none}

/* ── حقول ── */
.field{display:flex;flex-direction:column;gap:8px;font:500 14px/1.3 var(--font);color:var(--ink-2)}
.input{height:52px;border-radius:12px;border:1.5px solid var(--line-2);padding:0 16px;font:400 16px/1 var(--font);outline:none;background:#fff;width:100%;color:var(--ink)}
textarea.input{height:auto;padding:14px 16px;line-height:1.6;resize:vertical}
select.input{padding:0 14px}
.input:focus{border-color:var(--blue)}
.input.ok{border-color:var(--teal)}
.input.bad{border-color:var(--red-2)}
.input-code{height:56px;font:700 20px/1 var(--font);letter-spacing:.14em;text-align:center;text-transform:uppercase;direction:ltr}
.msg-ok{font:500 13px/1.5 var(--font);color:var(--teal-dd)}
.msg-err{font:500 13px/1.5 var(--font);color:var(--red)}
.alert-err{background:var(--red-l);border:1.5px solid #F2B8C2;border-radius:14px;padding:14px 16px;font:500 14px/1.6 var(--font);color:#A1263C}

/* ── بطاقات وشارات ── */
.card{background:#fff;border:1px solid var(--line);border-radius:20px}
.pill{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;font:700 12px/1 var(--font)}
.chip{height:38px;padding:0 16px;border-radius:999px;display:inline-flex;align-items:center;font:500 14px/1 var(--font);cursor:pointer;border:1.5px solid var(--line-3);background:#fff;color:var(--ink-2);white-space:nowrap}
.chip.on{border-color:var(--blue);background:var(--blue);color:#fff}
.bar{height:8px;border-radius:99px;background:var(--line);overflow:hidden;flex:1}
.bar>i{display:block;height:100%;background:var(--teal);border-radius:99px}
.check{width:22px;height:22px;border-radius:50%;background:var(--teal-l);display:flex;align-items:center;justify-content:center;flex:none;margin-top:2px}

/* ── الشعار ── */
.mark{position:relative;flex:none;direction:ltr}
.mark svg{display:block;width:100%;height:100%}
.mark b{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-weight:900;letter-spacing:-.05em}

/* ── الترويسة ── */
.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.site-header .wrap{padding-block:14px;display:flex;align-items:center;gap:28px}
.brand{display:flex;align-items:center;gap:12px;flex:none;color:var(--ink)}
.brand:hover{color:var(--ink)}
.brand-t{display:flex;flex-direction:column;gap:3px}
.brand-t strong{font:700 17px/1.1 var(--font)}
.brand-t small{font:500 9px/1 var(--font);letter-spacing:.18em;color:var(--muted);direction:ltr;text-align:right}
.nav{display:flex;gap:2px;flex:1;min-width:0}
.nav a{padding:10px 12px;white-space:nowrap;flex:none;border-radius:10px;font:500 15px/1 var(--font);color:var(--ink-2)}
.nav a.on{font-weight:700;color:var(--blue);background:var(--blue-xl)}
.head-actions{display:flex;align-items:center;gap:10px;flex:none}
.lang{height:38px;padding:0 12px;border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;font:500 13px/1 var(--font);color:var(--muted)}
.lang:hover{border-color:var(--blue);color:var(--blue)}
.me-link{display:flex;align-items:center;gap:10px;color:var(--ink);font:500 14px/1 var(--font)}
.avatar{width:38px;height:38px;border-radius:50%;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;font:700 15px/1 var(--font);flex:none}
@media (max-width:860px){
  .site-header .wrap{flex-wrap:wrap;gap:12px 16px;padding-block:12px}
  .nav{order:3;flex-basis:100%;overflow-x:auto;scrollbar-width:none;margin-inline:-6px}
  .nav::-webkit-scrollbar{display:none}
  .head-actions{margin-inline-start:auto}
  .brand-t small{display:none}
}
@media (max-width:420px){
  .brand-t strong{font-size:15px}
  .head-actions .btn{padding:0 12px}
  .me-link span:not(.avatar){display:none}
}

/* ── الصفحة الرئيسية ── */
.hero{background:var(--blue);position:relative;overflow:hidden}
.hero-deco{position:absolute;left:-180px;top:-120px;width:620px;height:620px;opacity:.14;pointer-events:none}
.hero .wrap{padding-top:88px;padding-bottom:96px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:56px;align-items:center;position:relative}
.hero h1{font:900 clamp(38px,5.4vw,68px)/1.2 var(--font);color:#fff;text-wrap:balance}
.hero p{font:400 19px/1.8 var(--font);color:var(--blue-l);max-width:48ch;text-wrap:pretty}
.kicker{display:flex;align-items:center;gap:10px;font:500 15px/1 var(--font);color:var(--blue-l)}
.kicker i{width:10px;height:10px;border-radius:50%;background:var(--teal)}
.hero-card{background:#fff;border-radius:24px;padding:28px;display:flex;flex-direction:column;gap:18px;box-shadow:0 30px 60px -30px rgba(11,16,32,.5);color:var(--ink)}
.hero-card:hover{color:var(--ink)}
.play{border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;flex:none}
.video-ph{border-radius:16px;background:var(--ink);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.section{padding-block:56px}
.section-h{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:28px}
.section-h h2{font:900 34px/1.3 var(--font)}
.section-h p{font:400 17px/1.7 var(--font);color:var(--muted);margin-top:8px}
.grid-aud{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:14px}
.aud-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:14px;color:var(--ink);transition:border-color .15s}
.aud-card:hover{border-color:var(--blue);color:var(--ink)}
.aud-num{width:44px;height:44px;border-radius:12px;background:var(--blue-l);display:flex;align-items:center;justify-content:center;font:900 18px/1 var(--font);color:var(--blue)}
.grid-courses{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,275px),1fr));gap:18px}
.c-card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;display:flex;flex-direction:column;color:var(--ink);transition:box-shadow .2s,border-color .2s}
.c-card:hover{box-shadow:0 20px 40px -24px rgba(27,79,216,.45);border-color:#C9D6F7;color:var(--ink)}
.c-cover{height:130px;position:relative;overflow:hidden}
.c-cover .deco{position:absolute;left:-30px;bottom:-50px;width:170px;height:170px;opacity:.28}
.c-cover .pill{position:absolute;top:14px;right:14px;background:#fff;color:var(--ink)}
.c-body{padding:20px;display:flex;flex-direction:column;gap:10px;flex:1}
.c-level{font:500 12px/1.3 var(--font);color:var(--blue)}
.c-title{font:700 18px/1.45 var(--font);text-wrap:pretty}
.c-short{font:400 14px/1.7 var(--font);color:var(--muted)}
.c-meta{margin-top:auto;display:flex;gap:10px;font:400 13px/1 var(--font);color:var(--muted);padding-top:8px}
.how{padding:44px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:36px;border-radius:24px}
.how .n{font:900 44px/1 var(--font);color:var(--teal)}
.how h3{font:700 19px/1.4 var(--font)}
.how p{font:400 15px/1.7 var(--font);color:var(--muted)}
.duo{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:18px}
.promo{border-radius:24px;padding:40px;display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.promo h3{font:900 28px/1.35 var(--font)}
.promo p{font:400 16px/1.8 var(--font);max-width:44ch}

/* ── صفحة الدورات ── */
.page-h{display:flex;flex-direction:column;gap:8px}
.page-h h1{font:900 42px/1.3 var(--font)}
.filters{display:flex;flex-direction:column;gap:12px;margin-block:28px}
.filter-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.filter-row>span{font:500 13px/1 var(--font);color:var(--muted-2);width:56px}
.empty{background:#fff;border:1px dashed #C9CFDB;border-radius:20px;padding:40px;text-align:center;font:400 16px/1.7 var(--font);color:var(--muted)}

/* ── تفاصيل الدورة ── */
.c-hero{background:var(--ink)}
.c-hero .wrap{padding-block:56px;display:flex;flex-direction:column;gap:18px}
.crumbs{display:flex;gap:8px;font:400 14px/1.4 var(--font);color:var(--muted-3);flex-wrap:wrap}
.crumbs a{color:var(--muted-3)}
.crumbs a:hover{color:#fff}
.c-hero h1{font:900 clamp(30px,4vw,48px)/1.3 var(--font);color:#fff;max-width:22ch;text-wrap:balance}
.c-hero p{font:400 18px/1.8 var(--font);color:var(--muted-3);max-width:60ch;text-wrap:pretty}
.tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.tag{padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.08);color:#fff;font:500 13px/1 var(--font)}
.tag.teal{background:rgba(0,194,168,.16);color:var(--teal)}
.two-col{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:28px;align-items:start;padding-block:40px 88px}
@media (max-width:900px){.two-col{grid-template-columns:minmax(0,1fr)}}
.stack{display:flex;flex-direction:column;gap:22px;min-width:0}
.box{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px}
.box h2{font:700 22px/1.4 var(--font);margin-bottom:16px}
.outcomes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px}
.outcomes>div{display:flex;gap:10px;align-items:flex-start;font:400 15px/1.7 var(--font);color:var(--ink-2)}
.l-row{display:flex;align-items:center;gap:14px;padding:14px 0;border-top:1px solid #F0F2F6}
.l-num{width:34px;height:34px;border-radius:10px;background:var(--bg);display:flex;align-items:center;justify-content:center;font:700 14px/1 var(--font);color:var(--blue);flex:none}
.l-title{flex:1;font:500 16px/1.5 var(--font)}
.l-dur{font:400 13px/1 var(--font);color:var(--muted-2);white-space:nowrap}
.side{position:sticky;top:96px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;display:flex;flex-direction:column;gap:18px;box-shadow:0 24px 50px -30px rgba(11,16,32,.3)}
@media (max-width:900px){.side{position:static}}
.side-cover{height:160px;border-radius:14px;display:flex;align-items:center;justify-content:center}
.price{display:flex;align-items:baseline;gap:8px}
.price b{font:900 34px/1 var(--font)}
.price span{font:400 14px/1 var(--font);color:var(--muted)}
.perks{display:flex;flex-direction:column;gap:10px;font:400 14px/1.6 var(--font);color:var(--muted)}
.redeem{background:var(--blue-xl);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:12px}

/* ── الدرس ── */
.lesson-grid{max-width:1320px;margin:0 auto;padding:28px 24px 72px;display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:24px;align-items:start}
@media (max-width:900px){.lesson-grid{grid-template-columns:minmax(0,1fr)}}
.player{aspect-ratio:16/9;border-radius:20px;background:var(--ink);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}
.player iframe,.player video{position:absolute;inset:0;width:100%;height:100%;border:0;background:#000}
.player .none{color:var(--muted-3);font:500 15px/1.6 var(--font);text-align:center;padding:24px;position:relative}
.lesson-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap}
.lesson-head h1{font:900 30px/1.35 var(--font)}
.summary{font:400 16px/1.9 var(--font);color:var(--ink-2);max-width:72ch;white-space:pre-line}
.res{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.res a{padding:10px 14px;border-radius:10px;background:var(--bg);border:1px solid var(--line);font:500 14px/1 var(--font);color:var(--ink)}
.res a:hover{border-color:var(--blue);color:var(--blue)}
.toc{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;display:flex;flex-direction:column;gap:14px;position:sticky;top:96px}
@media (max-width:900px){.toc{position:static}}
.toc-row{display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;color:var(--ink)}
.toc-row:hover{background:var(--bg);color:var(--ink)}
.toc-row.on{background:var(--blue-xl)}
.dot{width:28px;height:28px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font:700 12px/1 var(--font);background:#F0F2F6;color:var(--muted)}
.dot.done{background:var(--teal);color:#fff}
.dot.on{background:var(--blue);color:#fff}
.toc-quiz{display:flex;align-items:center;gap:12px;padding:12px;border-radius:12px;border:1px dashed var(--teal);margin-top:6px;color:var(--ink)}
.toc-quiz.locked{opacity:.55}

/* ── الاختبار ── */
.narrow{max-width:820px;margin:0 auto;padding:48px 24px 88px;display:flex;flex-direction:column;gap:22px}
.q-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:26px;display:flex;flex-direction:column;gap:14px}
.q-num{width:30px;height:30px;border-radius:9px;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;font:700 14px/1 var(--font);flex:none}
.opt{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:12px;cursor:pointer;font:500 16px/1.5 var(--font);border:1.5px solid var(--line-3);background:#fff;text-align:start;width:100%}
.opt .radio{width:18px;height:18px;border-radius:50%;flex:none;border:2px solid #C9CFDB;background:#fff}
.opt.sel{border-color:var(--blue);background:var(--blue-xl)}
.opt.sel .radio{border:6px solid var(--blue)}
.opt.good{border-color:var(--teal);background:var(--teal-l)}
.opt.wrong{border-color:var(--red-2);background:var(--red-l)}
.opt[disabled]{cursor:default}
.result{display:flex;align-items:center;gap:24px;flex-wrap:wrap;padding:28px;border-radius:20px;color:#fff}

/* ── لوحة المتدرّب ── */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:14px}
.stat{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:8px}
.stat span{font:400 14px/1 var(--font);color:var(--muted)}
.stat b{font:900 34px/1 var(--font)}
.row-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.cert-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;display:flex;gap:16px;align-items:center}
.seal{border-radius:50%;border:2px solid var(--teal);display:flex;align-items:center;justify-content:center;flex:none;background:#fff}

/* ── الدخول ── */
.auth{max-width:1100px;margin:0 auto;padding:56px 24px 88px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:24px;align-items:stretch}
.auth-side{background:var(--blue);border-radius:24px;padding:44px;display:flex;flex-direction:column;justify-content:space-between;gap:40px;position:relative;overflow:hidden;min-height:460px}
@media (max-width:820px){.auth-side{min-height:0;padding:32px}}
.auth-form{background:#fff;border:1px solid var(--line);border-radius:24px;padding:40px;display:flex;flex-direction:column;gap:20px}
@media (max-width:520px){.auth-form{padding:24px}}
.tabs{display:flex;background:var(--bg);border-radius:12px;padding:4px}
.tabs a{flex:1;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;font:500 15px/1 var(--font);color:var(--muted)}
.tabs a.on{background:#fff;color:var(--ink);font-weight:700;box-shadow:0 1px 3px rgba(11,16,32,.12)}

/* ── التحقق ── */
.verify{max-width:720px;margin:0 auto;padding:72px 24px 100px;display:flex;flex-direction:column;gap:26px;align-items:center;text-align:center}
.v-ok{width:100%;background:#fff;border:1.5px solid var(--teal);border-radius:20px;padding:26px;display:flex;flex-direction:column;gap:14px;text-align:right}
.v-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:14px;font:400 15px/1.6 var(--font)}
.v-grid small{display:block;color:var(--muted-2);font-size:13px}
.v-grid b{font-weight:700}

/* ── من نحن ── */
.contact{padding:40px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:40px;border-radius:24px}
@media (max-width:520px){.contact,.how,.promo{padding:26px}}

/* ── التذييل ── */
.site-footer{background:var(--ink);color:var(--muted-3)}
.site-footer .wrap{padding-block:48px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:32px}
.site-footer a{color:var(--muted-3);font:400 14px/1.4 var(--font)}
.site-footer a:hover{color:#fff}
.f-col{display:flex;flex-direction:column;gap:10px}
.f-col strong{color:#fff;font:700 14px/1.4 var(--font)}

/* ── نافذة الشهادة والتنبيه ── */
.overlay{position:fixed;inset:0;z-index:60;background:rgba(11,16,32,.72);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:24px}
.overlay-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:center}
.overlay-bar .t{font:700 16px/1.4 var(--font);color:#fff}
.btn-glass{height:42px;padding:0 16px;border-radius:10px;border:1.5px solid rgba(255,255,255,.35);color:#fff;display:inline-flex;align-items:center;font:500 14px/1 var(--font)}
.btn-glass:hover{border-color:#fff}
.cert-frame{border-radius:8px;overflow:hidden;position:relative;direction:ltr;box-shadow:0 40px 80px -20px rgba(0,0,0,.6);flex:none;background:#fff}
.cert-scale{position:absolute;top:0;left:0;width:2000px;height:1414px;transform-origin:top left}
.toast{position:fixed;bottom:28px;left:50%;transform:translateX(-50%);z-index:80;background:var(--ink);color:#fff;padding:14px 22px;border-radius:12px;font:500 14px/1.4 var(--font);box-shadow:0 16px 40px -12px rgba(11,16,32,.5);max-width:calc(100vw - 32px);text-align:center}
.loading{padding:120px 24px;text-align:center;color:var(--muted);font:500 15px/1.6 var(--font)}
.spinner{width:34px;height:34px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--blue);margin:0 auto 14px;animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
