/* ============================================================
   DevX الفرّا — الواجهة العامة (Light / Corporate)
   مطابق للهوية: أبيض · كحلي #0E1D33 · أزرق #1E56C8 · برونزي #C5893F
   الخط: IBM Plex Sans Arabic + IBM Plex Mono
   ============================================================ */
:root{
  --navy:#0E1D33; --navy2:#1B335C; --footer:#0A1524;
  --blue:#1E56C8; --blue-soft:#EAF0FB; --blue-line:#D6E0F4;
  --bronze:#C5893F; --bronze-lit:#DAA45C;
  --slate:#5A6982; --ink3:#3D4A63; --muted:#94A1B8;
  --bg:#FFFFFF; --bg-soft:#F5F7FB; --bg-soft2:#FAFBFC;
  --line:#EDF0F5; --line2:#E1E6EE; --line3:#CBD3DF;
  --green:#1C8A5A;
  --r:14px; --shadow:0 18px 44px rgba(14,29,51,.08); --shadow-sm:0 2px 10px rgba(14,29,51,.05);
  --font:'IBM Plex Sans Arabic',system-ui,sans-serif; --mono:'IBM Plex Mono',monospace;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
::selection{background:var(--blue);color:#fff}
body.lx{font-family:var(--font);background:var(--bg);color:var(--slate);line-height:1.75;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%}
h1,h2,h3,h4{color:var(--navy);font-weight:700;letter-spacing:-.01em}
.wrap{max-width:1200px;margin:0 auto;padding:0 28px}
.scroll-prog{position:fixed;top:0;right:0;height:3px;width:0;z-index:9000;background:linear-gradient(90deg,var(--navy),var(--blue),var(--bronze))}

/* ---------------- الشعار ---------------- */
.logo{display:inline-flex;align-items:center;gap:12px;line-height:1}
.devx-mark{display:block;flex-shrink:0}
.wordmark{display:flex;flex-direction:column;line-height:1.05}
.wm-text{font-weight:700;font-size:1.2rem;color:var(--navy);direction:ltr}
.wm-text i{color:var(--bronze);font-style:normal}
.wordmark small{font-size:.52rem;font-weight:500;letter-spacing:.2em;color:var(--muted);direction:ltr;margin-top:3px}

/* ---------------- التنقّل ---------------- */
.nav{position:sticky;top:0;z-index:900;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);transition:.3s}
.nav.scrolled{box-shadow:0 4px 20px rgba(14,29,51,.06)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:74px}
.nav-links{display:flex;align-items:center;gap:28px}
.nav-links a:not(.cta){font-size:.95rem;color:var(--ink3);font-weight:500;position:relative;padding:4px 0}
.nav-links a:not(.cta)::after{content:"";position:absolute;inset-inline:0;bottom:-2px;height:2px;background:var(--bronze);transform:scaleX(0);transform-origin:right;transition:.25s}
.nav-links a:not(.cta):hover{color:var(--navy)}
.nav-links a:not(.cta):hover::after{transform:scaleX(1)}
.cta{background:var(--blue);color:#fff;font-size:.9rem;font-weight:600;padding:10px 20px;border-radius:10px;transition:.2s}
.cta:hover{background:#164299;transform:translateY(-1px)}

/* ---------------- أزرار ---------------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1.5px solid transparent;border-radius:10px;
  padding:14px 28px;font-family:var(--font);font-weight:600;font-size:1rem;cursor:pointer;transition:.22s;will-change:transform}
.btn-pri{background:var(--navy);color:#fff}
.btn-pri:hover{background:#16294a;transform:translateY(-2px);box-shadow:0 12px 28px rgba(14,29,51,.22)}
.btn-ghost{background:#fff;color:var(--navy);border-color:var(--line3)}
.btn-ghost:hover{border-color:var(--navy);background:var(--bg-soft)}
.btn-gold{background:var(--bronze-lit);color:var(--navy)}
.btn-gold:hover{background:var(--bronze);color:#fff}
.btn-line{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.btn-line:hover{background:rgba(255,255,255,.1);border-color:#fff}
.btn .ar{transition:transform .2s}.btn:hover .ar{transform:translateX(-5px)}

/* ---------------- Hero ---------------- */
.hero{padding:70px 0 90px;position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(50% 45% at 88% 6%,rgba(30,86,200,.06),transparent 60%),radial-gradient(40% 40% at 6% 30%,rgba(197,137,63,.05),transparent 60%)}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center;position:relative;z-index:1}
.eyebrow{display:inline-flex;align-items:center;gap:8px;background:var(--blue-soft);color:var(--blue);font-size:.8rem;font-weight:600;padding:7px 16px;border-radius:20px;margin-bottom:24px}
.eyebrow .pulse{width:7px;height:7px;border-radius:50%;background:var(--bronze);box-shadow:0 0 0 0 rgba(197,137,63,.5);animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(197,137,63,.5)}70%{box-shadow:0 0 0 10px rgba(197,137,63,0)}100%{box-shadow:0 0 0 0 rgba(197,137,63,0)}}
.h1{font-size:clamp(2.3rem,4.4vw,3.4rem);font-weight:700;color:var(--navy);line-height:1.22;letter-spacing:-.02em;margin-bottom:20px}
.h1 .rot{color:var(--blue);display:inline-block}
.lead{font-size:1.12rem;color:var(--slate);max-width:460px;margin-bottom:34px}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.hero-mini{display:flex;gap:44px;margin-top:46px;flex-wrap:wrap}
.hmi b{display:block;font-family:var(--mono);font-size:1.9rem;font-weight:700;color:var(--navy)}
.hmi b .suf{color:var(--bronze)}
.hmi span{font-size:.82rem;color:var(--muted);margin-top:2px;display:block}

/* بطاقة الكود (يمين الهيرو) */
.code-card{background:#fff;border:1px solid var(--line2);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}
.cc-bar{display:flex;align-items:center;gap:8px;padding:14px 16px;background:var(--bg-soft);border-bottom:1px solid var(--line)}
.cc-dot{width:11px;height:11px;border-radius:50%}.cc-dot.r{background:#ef6a5e}.cc-dot.y{background:#f4bf50}.cc-dot.g{background:#43c463}
.cc-file{margin-inline-start:10px;font-family:var(--mono);font-size:.76rem;color:var(--muted);direction:ltr}
.cc-body{padding:22px 20px;font-family:var(--mono);font-size:.86rem;line-height:1.95;direction:ltr;min-height:260px}
.cc-line{display:flex;gap:16px;white-space:pre}
.cc-ln{color:#c3ccd9;width:16px;text-align:left;flex-shrink:0;user-select:none}
.tk-key{color:#c0392b}.tk-fn{color:var(--blue)}.tk-str{color:#1c8a5a}.tk-var{color:#0E1D33}.tk-com{color:#94A1B8}.tk-pun{color:#5A6982}
.caret{display:inline-block;width:8px;height:1em;background:var(--blue);vertical-align:-2px;animation:blink 1s steps(2) infinite}
@keyframes blink{50%{opacity:0}}
.cc-foot{display:flex;align-items:center;justify-content:space-between;padding:11px 16px;background:var(--bg-soft);border-top:1px solid var(--line);font-family:var(--mono);font-size:.72rem;color:var(--muted);direction:ltr}
.cc-foot .ok{color:var(--green)}

/* ---------------- شريط التقنيات ---------------- */
.marquee{border-block:1px solid var(--line);padding:22px 0;overflow:hidden;background:var(--bg-soft2);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.mq-track{display:flex;gap:56px;width:max-content;animation:mq 34s linear infinite}
.marquee:hover .mq-track{animation-play-state:paused}
@keyframes mq{to{transform:translateX(50%)}}
.mq-item{font-family:var(--mono);font-size:1.05rem;font-weight:500;color:var(--muted);white-space:nowrap;display:flex;align-items:center;gap:12px}
.mq-item::before{content:"‹›";color:var(--blue);font-weight:700}

/* ---------------- أقسام ---------------- */
.sec{padding:88px 0}
.section-alt{background:var(--bg-soft)}
.sec-head{margin-bottom:48px;max-width:640px}
.sec-head.ctr{margin-inline:auto;text-align:center}
.kicker{display:block;font-family:var(--mono);font-size:.78rem;font-weight:600;letter-spacing:2px;color:var(--bronze);text-transform:uppercase;margin-bottom:12px}
.sec-title{font-size:clamp(1.7rem,3vw,2.2rem);font-weight:700;color:var(--navy);line-height:1.25}
.sec-sub{color:var(--slate);font-size:1.05rem;margin-top:14px}

/* الخدمات */
.svc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
.svc{background:#fff;border:1px solid var(--line2);border-radius:var(--r);padding:28px;transition:.25s}
.svc:hover{border-color:var(--blue-line);box-shadow:var(--shadow);transform:translateY(-4px)}
.svc-ic{width:48px;height:48px;display:grid;place-items:center;border-radius:12px;background:var(--blue-soft);color:var(--blue);margin-bottom:18px}
.svc h3{font-size:1.15rem;color:var(--navy);margin-bottom:9px}
.svc p{color:var(--slate);font-size:.95rem}
.svc .idx{display:none}

/* حلول حسب القطاع */
.sec-filters{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:40px}
.sfilter{display:inline-flex;align-items:center;gap:8px;font-family:var(--font);font-weight:600;font-size:.9rem;color:var(--ink3);background:#fff;border:1px solid var(--line2);padding:9px 18px;border-radius:24px;cursor:pointer;transition:.2s}
.sfilter:hover{border-color:var(--blue-line);color:var(--navy)}
.sfilter.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.sectors{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:20px}
.sector{background:#fff;border:1px solid var(--line2);border-radius:var(--r);padding:28px;transition:.25s}
.sector.hide{display:none}
.sector:hover{border-color:var(--blue-line);box-shadow:var(--shadow)}
.sector-head{display:flex;align-items:center;gap:14px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.sector-ic{width:50px;height:50px;display:grid;place-items:center;border-radius:12px;background:var(--blue-soft);color:var(--blue);flex-shrink:0}
.sector-name{font-size:1.2rem;font-weight:700;color:var(--navy)}
.sector-tag{font-family:var(--mono);font-size:.78rem;color:var(--bronze)}
.prod{padding:14px 0;border-top:1px solid var(--line)}
.prod:first-of-type{border-top:none;padding-top:0}
.prod-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}
.prod-name{display:flex;align-items:center;gap:8px;font-weight:700;color:var(--navy);font-size:1.02rem}
.prod-name .ic{color:var(--blue)}
.prod-logo{width:24px;height:24px;border-radius:6px;object-fit:contain;background:var(--bg-soft);padding:2px}
.prod-desc{color:var(--slate);font-size:.9rem;margin-bottom:10px}
.prod-feats{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.prod-feat{display:inline-flex;align-items:center;gap:5px;font-size:.76rem;color:var(--ink3);background:var(--bg-soft);border:1px solid var(--line2);padding:3px 9px;border-radius:7px}
.prod-feat .ic{color:var(--green)}
.prod-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}
.prod-price{font-family:var(--mono);font-size:.82rem;color:var(--muted)}
.prod-visit{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:.82rem;font-weight:600;color:var(--blue);background:var(--blue-soft);border:1px solid var(--blue-line);padding:6px 14px;border-radius:9px;transition:.2s}
.prod-visit:hover{background:var(--blue);color:#fff}
.st-pill{font-family:var(--mono);font-size:.72rem;font-weight:700;padding:3px 11px;border-radius:20px;border:1px solid transparent}
.st-green{background:#e6f5ec;color:var(--green);border-color:#bfe3cd}
.st-amber{background:#fbf1e5;color:var(--bronze);border-color:#ecd9c0}
.st-blue{background:var(--blue-soft);color:var(--blue);border-color:var(--blue-line)}
.soon{opacity:.72}

/* آلية العمل */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;position:relative}
.steps-line{position:absolute;top:48px;inset-inline:10%;height:2px;background:linear-gradient(90deg,transparent,var(--line3),var(--line3),transparent);z-index:0}
.step-card{position:relative;z-index:1;background:#fff;border:1px solid var(--line2);border-radius:var(--r);padding:28px 24px;transition:.25s}
.step-card:hover{border-color:var(--blue-line);box-shadow:var(--shadow);transform:translateY(-6px)}
.step-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.step-no{font-family:var(--mono);font-weight:700;font-size:1.9rem;color:var(--line2)}
.step-card:hover .step-no{color:var(--blue-line)}
.step-ic{width:50px;height:50px;display:grid;place-items:center;border-radius:12px;background:var(--blue-soft);color:var(--blue)}
.step-card:nth-child(3) .step-ic{background:#fbf1e5;color:var(--bronze)}
.step-card h3{color:var(--navy);font-size:1.12rem;margin-bottom:9px}
.step-card p{color:var(--slate);font-size:.93rem}

/* معرض الأعمال */
.pf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:22px}
.pf{background:#fff;border:1px solid var(--line2);border-radius:var(--r);overflow:hidden;transition:.25s}
.pf:hover{border-color:var(--blue-line);box-shadow:var(--shadow);transform:translateY(-5px)}
.pf-thumb{aspect-ratio:16/10;background:var(--bg-soft);display:grid;place-items:center;overflow:hidden;border-bottom:1px solid var(--line)}
.pf-thumb img{width:100%;height:100%;object-fit:cover}
.pf-ph{font-family:var(--mono);font-size:3.4rem;font-weight:700;color:var(--blue);opacity:.18;direction:ltr}
.pf-b{padding:24px}
.pf-cat{font-family:var(--mono);font-size:.72rem;color:var(--bronze);letter-spacing:1px}
.pf-b h3{color:var(--navy);font-size:1.2rem;margin:8px 0 10px}
.pf-b p{color:var(--slate);font-size:.94rem;margin-bottom:14px}
.pf-tags{display:flex;flex-wrap:wrap;gap:7px}
.pf-tags span{font-family:var(--mono);font-size:.72rem;color:var(--ink3);background:var(--bg-soft);border:1px solid var(--line2);padding:3px 10px;border-radius:7px}

/* إحصائيات */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;background:linear-gradient(150deg,var(--navy),var(--navy2));border-radius:18px;padding:44px 32px;position:relative;overflow:hidden}
.stats::after{content:"‹›";position:absolute;font-family:var(--mono);font-weight:700;font-size:220px;color:#fff;opacity:.04;bottom:-70px;inset-inline-start:-10px}
.stats .st{text-align:center;position:relative}
.stats .st b{display:block;font-family:var(--mono);font-size:clamp(2rem,4vw,2.9rem);font-weight:700;color:#fff;line-height:1}
.stats .st b .suf{color:var(--bronze-lit)}
.stats .st span{color:var(--blue-line);font-size:.9rem;margin-top:8px;display:block}

/* لماذا نحن */
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.why{background:#fff;border:1px solid var(--line2);border-radius:var(--r);padding:30px;transition:.25s}
.why:hover{border-color:var(--blue-line);box-shadow:var(--shadow);transform:translateY(-5px)}
.why-ic{width:52px;height:52px;display:grid;place-items:center;border-radius:13px;background:var(--blue-soft);color:var(--blue);margin-bottom:18px}
.why h3{color:var(--navy);font-size:1.15rem;margin-bottom:10px}
.why p{color:var(--slate)}

/* CTA */
.cta-band{background:linear-gradient(150deg,var(--navy),var(--navy2));border-radius:18px;padding:52px;display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap;position:relative;overflow:hidden}
.cta-band::after{content:"‹›";position:absolute;font-family:var(--mono);font-weight:700;font-size:260px;color:#fff;opacity:.04;bottom:-90px;inset-inline-start:-10px}
.cta-band h2{color:#fff;font-size:clamp(1.6rem,3vw,2.1rem);margin-bottom:10px;position:relative}
.cta-band p{color:var(--blue-line);font-size:1.05rem;max-width:440px;position:relative}
.cta-row{display:flex;gap:14px;flex-shrink:0;position:relative;flex-wrap:wrap}

/* نموذج التواصل */
.form-card{max-width:720px;margin:0 auto;background:#fff;border:1px solid var(--line2);border-radius:18px;padding:38px;box-shadow:var(--shadow)}
.fr{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fld{margin-bottom:16px;display:flex;flex-direction:column;gap:7px}
.fld label{font-size:.9rem;color:var(--navy);font-weight:500}
.fld input,.fld select,.fld textarea{font:inherit;font-family:var(--font);padding:12px 15px;border-radius:10px;background:#fff;border:1px solid var(--line3);color:var(--navy);width:100%}
.fld input::placeholder,.fld textarea::placeholder{color:var(--muted)}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}

/* تنبيهات */
.alert{padding:14px 18px;border-radius:11px;margin-bottom:22px;font-weight:500;border:1px solid}
.alert-success{background:#e6f5ec;color:#146c43;border-color:#bfe3cd}
.alert-error{background:#fdecea;color:#b23b32;border-color:#f5c9c4}

/* التذييل */
.foot{background:var(--footer);color:#fff;padding:54px 0 34px;text-align:center}
.foot .logo{display:inline-flex;justify-content:center;margin-bottom:16px}
.foot .wm-text{color:#fff}.foot .wordmark small{color:#8FA0BE}
.foot-links{display:flex;gap:24px;justify-content:center;flex-wrap:wrap;margin:20px 0;color:#8FA0BE;font-size:.92rem}
.foot-links a:hover{color:var(--bronze-lit)}
.foot .cp{color:#5A6982;font-size:.85rem}

/* ---------------- رأس صفحة داخلية (وظائف) ---------------- */
.page-hero{background:linear-gradient(150deg,var(--navy),var(--navy2));color:#fff;padding:120px 0 64px;text-align:center;position:relative;overflow:hidden}
.page-hero::after{content:"‹›";position:absolute;font-family:var(--mono);font-weight:700;font-size:220px;color:#fff;opacity:.04;bottom:-70px;inset-inline-start:-10px}
.page-hero .crumb{font-family:var(--mono);font-size:.82rem;color:var(--blue-line);margin-bottom:16px;position:relative}
.page-hero .crumb a:hover{color:#fff}
.page-hero h1{color:#fff;font-size:clamp(2rem,4vw,2.9rem);margin-bottom:12px;position:relative}
.page-hero p,.page-hero .meta{color:var(--blue-line);font-size:1.05rem;max-width:600px;margin:0 auto;position:relative}
.page-hero .meta{font-family:var(--mono)}

.jobs-list{display:grid;gap:16px;max-width:900px;margin:0 auto}
.job-card{background:#fff;border:1px solid var(--line2);border-radius:var(--r);padding:26px 28px;display:flex;justify-content:space-between;align-items:center;gap:20px;transition:.25s}
.job-card:hover{border-color:var(--blue-line);box-shadow:var(--shadow);transform:translateY(-3px)}
.job-card h3{color:var(--navy);font-size:1.2rem;margin-bottom:10px}
.job-tags{display:flex;flex-wrap:wrap;gap:8px}
.job-tag{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:.78rem;color:var(--ink3);background:var(--bg-soft);border:1px solid var(--line2);padding:5px 12px;border-radius:20px}
.job-tag.t-type{color:var(--blue);background:var(--blue-soft);border-color:var(--blue-line)}
.job-detail{max-width:820px;margin:0 auto}
.jd-head{background:#fff;border:1px solid var(--line2);border-radius:var(--r);padding:32px;margin-bottom:24px}
.job-detail h2{color:var(--navy);font-size:1.3rem;margin:24px 0 14px}
.job-detail .jd-body{color:var(--slate);line-height:2;font-size:1.02rem}
.job-detail ul{list-style:none;padding:0}
.job-detail ul li{position:relative;padding-inline-start:26px;margin-bottom:10px;color:var(--slate)}
.job-detail ul li .ic{position:absolute;inset-inline-start:0;top:3px;color:var(--blue)}

/* ---------------- بوابة الزبائن ---------------- */
.portal-top{position:sticky;top:0;z-index:900;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.portal-top-row{display:flex;align-items:center;justify-content:space-between;height:74px}
.portal-user{display:flex;align-items:center;gap:16px}
.pu-hello{color:var(--slate);font-size:.95rem}
.portal-main{padding:38px 0;min-height:70vh;background:var(--bg-soft)}
.p-hero{background:linear-gradient(150deg,var(--navy),var(--navy2));border-radius:18px;padding:34px 36px;margin-bottom:28px;position:relative;overflow:hidden}
.p-hero::after{content:"‹›";position:absolute;font-family:var(--mono);font-weight:700;font-size:180px;color:#fff;opacity:.04;bottom:-60px;inset-inline-start:-10px}
.p-hero h1{color:#fff;font-size:1.7rem;margin-bottom:6px;position:relative}
.p-hero p{color:var(--blue-line);position:relative}
.p-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin-bottom:28px}
.p-stat{background:#fff;border:1px solid var(--line2);border-radius:14px;padding:22px;border-top:3px solid var(--blue)}
.p-stat.gold{border-top-color:var(--bronze)}.p-stat.red{border-top-color:#e0443c}
.p-stat .k{color:var(--slate);font-size:.9rem;margin-bottom:6px}
.p-stat .v{font-size:1.8rem;font-weight:700;color:var(--navy)}
.p-section{background:#fff;border:1px solid var(--line2);border-radius:16px;padding:26px;margin-bottom:24px}
.p-section h2{color:var(--navy);font-size:1.2rem;margin-bottom:18px;display:flex;align-items:center;gap:10px}
.p-section h2::before{content:"";width:4px;height:20px;background:var(--blue);border-radius:3px}
.proj-card{display:block;border:1px solid var(--line2);border-radius:14px;padding:20px;margin-bottom:14px;transition:.2s}
.proj-card:hover{border-color:var(--blue-line);box-shadow:var(--shadow-sm);transform:translateY(-3px)}
.proj-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
.proj-title{color:var(--navy);font-weight:700;font-size:1.08rem}
.proj-sub{color:var(--slate);font-size:.88rem;margin-top:2px}
.progress{height:8px;background:var(--bg-soft);border-radius:6px;overflow:hidden;margin-top:12px}
.progress-bar{height:100%;background:linear-gradient(90deg,var(--blue),#3b6fd6);border-radius:6px}
.progress-txt{font-size:.84rem;color:var(--slate);margin-top:8px;display:flex;justify-content:space-between}
.p-table{width:100%;border-collapse:collapse}
.p-table th,.p-table td{padding:12px 14px;text-align:right;border-bottom:1px solid var(--line)}
.p-table th{font-size:.82rem;color:var(--slate);background:var(--bg-soft)}.p-table td{color:var(--navy)}
.p-badge{display:inline-block;padding:3px 12px;border-radius:20px;font-size:.78rem;font-weight:700;border:1px solid transparent}
.p-green{background:#e6f5ec;color:var(--green);border-color:#bfe3cd}
.p-amber{background:#fbf1e5;color:var(--bronze);border-color:#ecd9c0}
.p-blue{background:var(--blue-soft);color:var(--blue);border-color:var(--blue-line)}
.p-red{background:#fdecea;color:#e0443c;border-color:#f5c9c4}
.p-gray{background:var(--bg-soft);color:var(--slate);border-color:var(--line2)}
.timeline{position:relative;padding-inline-start:26px}
.timeline::before{content:"";position:absolute;inset-inline-start:7px;top:6px;bottom:6px;width:2px;background:var(--line2)}
.tl-i{position:relative;padding-bottom:22px}
.tl-i::before{content:"";position:absolute;inset-inline-start:-23px;top:3px;width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid var(--blue)}
.tl-i.done::before{background:var(--blue)}.tl-i.review::before{border-color:var(--bronze);background:var(--bronze)}
.tl-t{color:var(--navy);font-weight:700}.tl-m{font-size:.86rem;color:var(--slate);margin-top:3px}
.empty{text-align:center;padding:30px;color:var(--muted)}
.num{direction:ltr;text-align:left;font-variant-numeric:tabular-nums}
.muted{color:var(--slate)}.small{font-size:.85rem}.text-danger{color:#e0443c}.text-green{color:var(--green)}
.link-arrow{color:var(--blue);font-weight:700}.link-arrow:hover{color:var(--bronze)}

/* دخول (بوابة) */
.auth-wrap{min-height:100vh;display:grid;place-items:center;padding:30px 20px;background:var(--bg-soft)}
.auth-card{background:#fff;border:1px solid var(--line2);border-radius:18px;padding:42px;width:100%;max-width:430px;box-shadow:var(--shadow)}
.auth-card .logo{display:flex;justify-content:center;margin-bottom:16px}
.auth-card h1{color:var(--navy);text-align:center;font-size:1.5rem;margin-bottom:6px}
.auth-card .sub{text-align:center;color:var(--slate);margin-bottom:26px}
.auth-card .back{display:block;text-align:center;margin-top:18px;color:var(--slate)}.auth-card .back:hover{color:var(--blue)}
.switch-row{display:flex;align-items:center;gap:13px;padding:14px 16px;border:1px solid var(--line2);border-radius:12px;background:var(--bg-soft);cursor:pointer;transition:.2s;margin-bottom:18px}
.switch-row:hover{border-color:var(--blue-line)}
.switch-row:has(input:checked){border-color:var(--blue);background:var(--blue-soft)}
.switch{position:relative;width:46px;height:26px;flex-shrink:0}
.switch input{opacity:0;width:0;height:0;position:absolute}
.slider{position:absolute;inset:0;background:#cdd5e0;border-radius:20px;transition:.25s}
.slider::before{content:"";position:absolute;width:20px;height:20px;border-radius:50%;background:#fff;top:3px;inset-inline-start:3px;transition:.25s;box-shadow:0 2px 5px rgba(0,0,0,.2)}
.switch input:checked + .slider{background:var(--blue)}
.switch input:checked + .slider::before{transform:translateX(-20px)}
.switch-text strong{display:block;color:var(--navy);font-size:.92rem}
.switch-text small{font-size:.8rem;color:var(--slate)}
.switch-text .badge-30{display:inline-block;background:var(--bronze-lit);color:var(--navy);font-size:.65rem;font-weight:700;padding:1px 7px;border-radius:10px;margin-inline-start:6px}

/* زر للأعلى */
.totop{position:fixed;inset-block-end:26px;inset-inline-start:26px;width:48px;height:48px;border-radius:13px;border:1px solid var(--line2);
  background:#fff;color:var(--navy);display:grid;place-items:center;cursor:pointer;opacity:0;transform:translateY(16px);transition:.3s;z-index:800;box-shadow:var(--shadow-sm)}
.totop.show{opacity:1;transform:none}.totop:hover{border-color:var(--navy);background:var(--navy);color:#fff}

/* كشف عند التمرير */
.js .rv{opacity:0;transform:translateY(30px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}
.js .rv.in{opacity:1;transform:none}
.rv.d1{transition-delay:.08s}.rv.d2{transition-delay:.16s}.rv.d3{transition-delay:.24s}
@media(prefers-reduced-motion:reduce){.js .rv{opacity:1;transform:none}.mq-track{animation:none}}

/* استجابة */
@media(max-width:920px){
  .hero-grid{grid-template-columns:1fr;gap:40px}
  .steps{grid-template-columns:1fr 1fr}.steps-line{display:none}
  .why-grid{grid-template-columns:1fr}
  .nav-links a:not(.cta){display:none}
  .cta-band{flex-direction:column;align-items:flex-start}
  .fr{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr 1fr;gap:28px 20px}
}
@media(max-width:560px){.sec{padding:60px 0}.steps{grid-template-columns:1fr}.job-card{flex-direction:column;align-items:flex-start}.hero-mini{gap:28px}}
