@font-face{font-family:Inter;font-style:normal;font-weight:300 800;font-display:swap;src:url("../fonts/googlefonts/inter.260c81a4759b.woff2") format("woff2")}
:root{
  --navy:#1e3a8a;--red:#dc2626;--orange:#f97316;
  --bg:#f3f5fa;--card:#fff;--text:#0f172a;--muted:#475569;--line:#cbd5e1;--field:#f8fafc;--field-focus:#fff;
  --ring:#1d4ed8;--primary:#1e3a8a;--primary-hover:#172e6e;--on-primary:#fff;
  --err-bg:#fef2f2;--err-line:#fca5a5;--err-text:#991b1b;--ok-bg:#f0fdf4;--ok-line:#86efac;--ok-text:#166534;
  --warn-bg:#fffbeb;--warn-line:#fcd34d;--warn-text:#92400e;--shadow:0 24px 60px -24px rgba(15,23,42,.35),0 2px 6px rgba(15,23,42,.06);
  color-scheme:light;
}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0a0f1c;--card:#111a2f;--text:#f1f5f9;--muted:#a3b1c6;--line:#2c3a56;--field:#0b1324;--field-focus:#0e182d;--ring:#93b4ff;--primary:#2f5fe3;--primary-hover:#2549b8;--err-bg:#2a1215;--err-line:#7f1d1d;--err-text:#fecaca;--ok-bg:#0f2619;--ok-line:#166534;--ok-text:#bbf7d0;--warn-bg:#2a2010;--warn-line:#92400e;--warn-text:#fde68a;--shadow:0 24px 60px -24px rgba(0,0,0,.7);color-scheme:dark}}
:root[data-theme=dark]{--bg:#0a0f1c;--card:#111a2f;--text:#f1f5f9;--muted:#a3b1c6;--line:#2c3a56;--field:#0b1324;--field-focus:#0e182d;--ring:#93b4ff;--primary:#2f5fe3;--primary-hover:#2549b8;--err-bg:#2a1215;--err-line:#7f1d1d;--err-text:#fecaca;--ok-bg:#0f2619;--ok-line:#166534;--ok-text:#bbf7d0;--warn-bg:#2a2010;--warn-line:#92400e;--warn-text:#fde68a;--shadow:0 24px 60px -24px rgba(0,0,0,.7);color-scheme:dark}
*{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%}
body{min-height:100vh;min-height:100dvh;font:15px/1.5 Inter,system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans Arabic","Noto Naskh Arabic",sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}
.split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:100vh;min-height:100dvh}

/* brand panel */
.brand{position:relative;overflow:hidden;isolation:isolate;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:34px;text-align:center;padding:48px clamp(32px,5vw,72px);background:linear-gradient(155deg,#1e3a8a 0,#0f1f4d 55%,#0a1638 100%)}
.brand:before,.brand:after{content:"";position:absolute;z-index:-1;border-radius:50%;filter:blur(70px);opacity:.55;will-change:transform}
.brand:before{width:460px;height:460px;left:-120px;top:-100px;background:radial-gradient(circle,#f97316 0,rgba(249,115,22,0) 70%);animation:drift1 22s ease-in-out infinite alternate}
.brand:after{width:520px;height:520px;right:-160px;bottom:-140px;background:radial-gradient(circle,#2563eb 0,rgba(37,99,235,0) 70%);animation:drift2 26s ease-in-out infinite alternate}
.mesh{position:absolute;inset:0;z-index:-1;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.7) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.7) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(ellipse at 30% 40%,#000 0,transparent 75%);mask-image:radial-gradient(ellipse at 30% 40%,#000 0,transparent 75%)}
@keyframes drift1{to{transform:translate3d(120px,90px,0) scale(1.15)}}
@keyframes drift2{to{transform:translate3d(-110px,-80px,0) scale(1.1)}}
.logo{display:inline-flex;background:#fff;border-radius:20px;padding:18px 26px;box-shadow:0 18px 44px rgba(0,0,0,.32)}
.logo img{display:block;width:230px;max-width:60vw;height:auto}
.hero{max-width:520px}
.legal:before{content:"";display:block;width:56px;height:3px;border-radius:3px;background:linear-gradient(90deg,#f97316,#dc2626);margin:0 auto 18px}
.hero .app{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#fdba74;margin-bottom:14px}
.hero h1{font-size:clamp(28px,3.2vw,40px);line-height:1.15;font-weight:750;letter-spacing:-.02em}
.hero .tag{margin-top:14px;font-size:16px;color:#dbe4f7;max-width:44ch}
.legal{padding-top:0}
.legal .en{font-weight:650;font-size:17px;letter-spacing:.01em}
.legal .ar{margin-top:8px;font-size:18px;color:#dbe4f7;direction:rtl;text-align:center;unicode-bidi:plaintext}
.trust{display:flex;flex-wrap:wrap;gap:10px 18px;list-style:none;font-size:13px;color:#e2e8f7}
.trust li{display:flex;align-items:center;gap:8px}
.trust svg{width:16px;height:16px;flex:none;color:#86efac}

/* form side */
.side{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 20px;gap:22px}
.card{width:100%;max-width:400px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:36px 34px 32px;box-shadow:var(--shadow)}
.card h2{font-size:26px;letter-spacing:-.02em;font-weight:750;margin-bottom:22px}
.sub{color:var(--muted);margin:4px 0 22px;font-size:14px}
.note{display:flex;gap:10px;align-items:flex-start;border:1px solid;border-radius:10px;padding:10px 13px;font-size:13.5px;line-height:1.45;margin-bottom:16px}
.note svg{width:18px;height:18px;flex:none;margin-top:1px}
.note.err{background:var(--err-bg);border-color:var(--err-line);color:var(--err-text)}
.note.ok{background:var(--ok-bg);border-color:var(--ok-line);color:var(--ok-text)}
.note.warn{background:var(--warn-bg);border-color:var(--warn-line);color:var(--warn-text)}
.field{margin-bottom:16px}
label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}
input[type=text],input[type=password]{width:100%;height:46px;padding:0 14px;font:inherit;font-size:15px;color:var(--text);background:var(--field);border:1.5px solid var(--line);border-radius:10px;transition:border-color .15s,box-shadow .15s,background-color .15s}
input::placeholder{color:var(--muted);opacity:.8}
input:hover{border-color:var(--muted)}
input:focus{outline:none;background:var(--field-focus);border-color:var(--ring);box-shadow:0 0 0 3px color-mix(in srgb,var(--ring) 28%,transparent)}
:focus-visible{outline:3px solid var(--ring);outline-offset:2px}
input:focus-visible{outline:none}
.pw{position:relative}
.pw input{padding-right:48px}
.eye{position:absolute;right:4px;top:4px;width:38px;height:38px;border:0;background:none;color:var(--muted);border-radius:8px;cursor:pointer;display:grid;place-items:center}
.eye:hover{color:var(--text);background:color-mix(in srgb,var(--line) 45%,transparent)}
.eye svg{width:19px;height:19px}
.caps{display:flex;align-items:center;gap:6px;margin-top:7px;font-size:12.5px;color:var(--warn-text);font-weight:600}
.caps svg{width:14px;height:14px}
.cap{margin-bottom:16px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--field)}
.cap-row{display:flex;gap:8px;align-items:center;margin-bottom:10px}
.cap-img{display:block;width:150px;height:52px;border-radius:8px;background:#fff;border:1px solid var(--line)}
.cap-btn{height:40px;min-width:40px;padding:0 10px;border:1.5px solid var(--line);background:var(--card);color:var(--text);border-radius:10px;cursor:pointer;display:inline-flex;gap:6px;align-items:center;justify-content:center;font:inherit;font-size:13px;font-weight:600;text-decoration:none}
.cap-btn:hover{border-color:var(--muted)}
.cap-btn svg{width:17px;height:17px}
.cap-btn.spin svg{animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.btn{position:relative;width:100%;height:48px;margin-top:6px;border:0;border-radius:10px;background:var(--primary);color:var(--on-primary);font:inherit;font-size:15px;font-weight:700;letter-spacing:.01em;cursor:pointer;transition:background-color .15s,transform .15s,box-shadow .15s}
.btn:hover{background:var(--primary-hover);box-shadow:0 10px 22px -10px var(--primary)}
.btn:active{transform:translateY(1px)}
.btn[aria-busy=true]{cursor:progress;opacity:.85;pointer-events:none}
.btn .sp{display:none;width:17px;height:17px;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;margin-right:9px;vertical-align:-3px;animation:spin .7s linear infinite}
.btn[aria-busy=true] .sp{display:inline-block}
.help{margin-top:18px;font-size:13px;color:var(--muted);text-align:center}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.foot{text-align:center;color:var(--muted);font-size:12px;opacity:.8}
.foot a{color:inherit;text-underline-offset:2px}
.foot a:hover{color:var(--text)}
.ver{display:inline-block;margin-left:6px;padding:1px 8px;border:1px solid var(--line);border-radius:999px;font-size:11.5px;font-variant-numeric:tabular-nums}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

@media (max-width:900px){
  .split{grid-template-columns:1fr}
  .brand{padding:22px 20px 26px;gap:18px}
  .brand .hero .tag,.brand .trust,.legal .ar{display:none}
  .hero h1{font-size:22px}.hero .app{margin-bottom:6px}
  .legal{margin-top:12px;padding-top:12px}
  .logo img{width:128px}.logo{padding:7px 12px}
  .side{padding:22px 16px 28px;justify-content:flex-start}
  .card{padding:26px 22px}
}
@media (max-width:900px) and (min-width:520px){.brand .legal .ar{display:block}}
@media (prefers-reduced-motion:reduce){.brand:before,.brand:after{animation:none}*,*:before,*:after{transition:none!important}.cap-btn.spin svg,.btn .sp{animation-duration:1.6s}}
@media (forced-colors:active){.btn{border:2px solid ButtonText}}
