:root{
  --bg:#071011;--surface:#0d1b1d;--surface2:#112629;--text:#eefafa;--muted:#9fc4c7;
  --primary:#55aeb5;--primaryDark:#0d5f5a;--gold:#d9aa3d;--danger:#ff5a68;--border:rgba(93,174,181,.2);
  --shadow:0 28px 80px rgba(0,0,0,.35);--input:rgba(255,255,255,.055)
}
html[data-theme="light"]{--bg:#f5f8fb;--surface:#fff;--surface2:#eef6f7;--text:#102427;--muted:#63777a;--border:rgba(13,95,90,.16);--input:#f7fbfc;--shadow:0 28px 80px rgba(18,63,122,.12)}
*{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:'IBM Plex Sans Arabic',sans-serif;background:radial-gradient(circle at 12% 12%,rgba(85,174,181,.22),transparent 34%),radial-gradient(circle at 84% 80%,rgba(217,170,61,.14),transparent 30%),var(--bg);color:var(--text);overflow-x:hidden}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.login-brand-panel{position:relative;display:flex;align-items:center;justify-content:center;padding:50px;overflow:hidden}.brand-glow{position:absolute;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(85,174,181,.22),transparent 64%);filter:blur(10px);animation:floatGlow 6s ease-in-out infinite}.brand-card{position:relative;width:min(720px,100%);border:1px solid var(--border);border-radius:38px;padding:42px;background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.025));box-shadow:var(--shadow);backdrop-filter:blur(18px)}.brand-word{width:230px;max-width:70%;display:block;margin-bottom:28px}.gold-pill{display:inline-flex;border:1px solid rgba(217,170,61,.4);background:rgba(217,170,61,.13);color:var(--gold);border-radius:999px;padding:8px 16px;font-weight:900;letter-spacing:.04em}.brand-card h1{font-size:clamp(2rem,4vw,4.1rem);line-height:1.25;margin:22px 0 18px;font-weight:900}.brand-card p{font-size:1.08rem;line-height:1.9;color:var(--muted);max-width:620px}.login-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:34px}.login-highlights div{border:1px solid var(--border);border-radius:24px;padding:18px;background:rgba(255,255,255,.035)}.login-highlights i{font-size:1.45rem;color:var(--gold)}.login-highlights strong{display:block;margin:10px 0 4px;font-size:1.08rem}.login-highlights span{color:var(--muted);font-size:.88rem}.login-form-panel{position:relative;display:flex;align-items:center;justify-content:center;padding:42px}.theme-toggle{position:absolute;top:28px;left:28px;width:48px;height:48px;border-radius:16px;border:1px solid var(--border);background:var(--surface);color:var(--text);display:grid;place-items:center;cursor:pointer;box-shadow:0 12px 34px rgba(0,0,0,.12)}.login-card{width:min(480px,100%);border:1px solid var(--border);border-radius:34px;padding:34px;background:linear-gradient(180deg,var(--surface),rgba(255,255,255,.025));box-shadow:var(--shadow)}.mobile-logo{text-align:center;display:none}.mobile-logo img{width:96px;height:96px;object-fit:contain}.login-title span{color:var(--gold);font-weight:900}.login-title h2{font-size:2.1rem;margin:8px 0 6px;font-weight:900}.login-title p{margin:0 0 28px;color:var(--muted)}.login-form{display:grid;gap:18px}.form-field>span{display:block;margin-bottom:8px;font-weight:800}.input-shell{height:58px;border:1px solid var(--border);background:var(--input);border-radius:20px;display:flex;align-items:center;gap:12px;padding:0 16px;transition:.2s}.input-shell:focus-within{border-color:var(--primary);box-shadow:0 0 0 4px rgba(85,174,181,.13)}.input-shell i{color:var(--primary);font-size:1.18rem}.input-shell input{border:0;outline:0;background:transparent;color:var(--text);width:100%;height:100%;font:inherit}.input-shell input::placeholder{color:color-mix(in srgb,var(--muted) 70%,transparent)}.password-toggle{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:1.1rem}.form-field small,.field-validation-error{display:block;color:var(--danger);font-size:.86rem;margin-top:6px}.login-alert{border-radius:18px;background:rgba(255,90,104,.12);color:var(--danger);padding:10px 14px;font-weight:800}.login-alert:empty{display:none}.form-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.remember-check{display:flex;align-items:center;gap:10px;color:var(--muted);cursor:pointer}.remember-check input{display:none}.remember-check span{width:22px;height:22px;border:1px solid var(--border);border-radius:8px;background:var(--input);position:relative}.remember-check input:checked+span{background:linear-gradient(135deg,var(--primary),var(--primaryDark));border-color:transparent}.remember-check input:checked+span:after{content:'✓';position:absolute;inset:0;display:grid;place-items:center;color:white;font-weight:900}.muted-link{color:var(--gold);text-decoration:none;font-weight:800}.login-btn{height:60px;border:0;border-radius:22px;background:linear-gradient(135deg,var(--primary),var(--primaryDark));color:#fff;font:inherit;font-weight:900;display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;box-shadow:0 18px 36px rgba(85,174,181,.22);transition:.22s}.login-btn:hover{transform:translateY(-2px);filter:brightness(1.08)}.login-footer-note{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--muted);margin-top:22px;font-size:.92rem}.login-footer-note i{color:var(--gold)}.login-loader{position:fixed;inset:0;background:var(--bg);z-index:9999;display:grid;place-items:center;transition:.45s}.login-loader.hide{opacity:0;visibility:hidden}.loader-orbit{width:180px;height:180px;border-radius:50%;border:2px solid var(--border);border-top-color:var(--primary);display:grid;place-items:center;animation:spin 1s linear infinite}.loader-orbit img{width:92px;height:92px;object-fit:contain;animation:reverseSpin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes reverseSpin{to{transform:rotate(-360deg)}}@keyframes floatGlow{50%{transform:translateY(-18px) scale(1.04)}}@media(max-width:1050px){.login-shell{grid-template-columns:1fr}.login-brand-panel{display:none}.login-form-panel{min-height:100vh}.mobile-logo{display:block}.theme-toggle{top:18px;left:18px}}@media(max-width:520px){.login-form-panel{padding:18px}.login-card{padding:24px;border-radius:28px}.form-row{align-items:flex-start;flex-direction:column}.login-title h2{font-size:1.8rem}}
