:root{
  --auth-primary:#2563eb;--auth-primary-dark:#1d4ed8;--auth-navy:#0b2547;--auth-text:#10233f;--auth-muted:#75859c;
  --auth-border:#dfe7f1;--auth-bg:#f4f7fb;--auth-surface:#fff;--auth-soft:#f7f9fc;--auth-teal:#087f7d;
  --auth-shadow:0 24px 70px rgba(15,35,63,.12);
}
*{box-sizing:border-box}
html,body{width:100%;min-height:100%;margin:0}
html[lang="en"] body.login-page,html[lang="en"] body.login-page *{font-family:"Inter","Inter Fallback",sans-serif!important}
html[lang="ar"] body.login-page,html[lang="ar"] body.login-page *{font-family:"Cairo",sans-serif!important}
body.login-page{min-height:100vh!important;margin:0!important;padding:0!important;display:block!important;background:radial-gradient(circle at 12% 15%,rgba(37,99,235,.08),transparent 32%),radial-gradient(circle at 88% 85%,rgba(8,127,125,.08),transparent 30%),var(--auth-bg)!important;color:var(--auth-text);overflow-x:hidden}
.auth-topbar{position:fixed;z-index:20;top:18px;inset-inline-end:22px;display:flex;align-items:center;gap:8px}
.auth-icon-btn,.auth-language-btn{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(148,163,184,.28);border-radius:11px;background:rgba(255,255,255,.86);box-shadow:0 5px 18px rgba(15,35,63,.06);color:#52657d;text-decoration:none;backdrop-filter:blur(10px);transition:.18s ease}
.auth-icon-btn{padding:0;cursor:pointer}.auth-icon-btn:hover,.auth-language-btn:hover{border-color:#b9c9dd;color:var(--auth-primary);background:#fff;transform:translateY(-1px)}
.auth-icon-btn svg{width:17px;height:17px;fill:currentColor}.theme-sun{display:none}.auth-dark .theme-moon{display:none}.auth-dark .theme-sun{display:block}.auth-language-btn span{font-size:12px;font-weight:800}
.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:36px 28px}
.auth-layout{width:min(1050px,100%);min-height:600px;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);overflow:hidden;border:1px solid rgba(214,224,237,.9);border-radius:28px;background:var(--auth-surface);box-shadow:var(--auth-shadow)}
html[dir=rtl] .auth-layout{grid-template-columns:minmax(390px,.92fr) minmax(0,1.08fr)}
.auth-visual{position:relative;min-width:0;padding:42px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;background:linear-gradient(145deg,#f8fcfc 0%,#eef8f8 52%,#eef4ff 100%)}
html[dir=rtl] .auth-visual{grid-column:2}.auth-visual::after{content:"";position:absolute;width:360px;height:360px;border-radius:50%;inset-inline-end:-145px;bottom:-150px;background:rgba(8,127,125,.075)}
.auth-visual-logo{position:relative;z-index:1;height:300px;display:flex;align-items:center;justify-content:center;padding:22px}
.auth-visual-logo img{display:block!important;width:100%!important;height:100%!important;max-width:620px!important;max-height:300px!important;object-fit:contain!important;object-position:center!important;border-radius:0!important}
.auth-visual-copy{position:relative;z-index:1;max-width:510px}.auth-visual-kicker{display:inline-block;margin-bottom:10px;color:var(--auth-teal);font-size:12px;font-weight:800;letter-spacing:.12em}.auth-visual-copy h2{margin:0 0 10px;font-size:27px;line-height:1.38;font-weight:800;color:var(--auth-navy)}.auth-visual-copy p{margin:0;color:#688096;font-size:13px;line-height:1.8}
.auth-form-pane{min-width:0;display:flex;align-items:center;justify-content:center;padding:46px 52px;background:var(--auth-surface)}
html[dir=rtl] .auth-form-pane{grid-column:1;grid-row:1}.login-box{width:100%!important;max-width:420px!important;margin:0!important}.auth-card{width:100%}.auth-brand-mobile{display:none}
.auth-security-chip{display:inline-flex;align-items:center;gap:7px;margin-bottom:13px;padding:6px 9px;border:1px solid #d9e8e6;border-radius:999px;background:#f2fbf8;color:#28776f;font-size:11px;font-weight:700}.auth-security-chip svg{width:14px;height:14px;fill:currentColor}
.auth-heading{margin-bottom:25px}.auth-heading h1{margin:0 0 6px;color:var(--auth-navy);font-size:32px;line-height:1.25;font-weight:800;letter-spacing:-.02em}.auth-heading p{margin:0;color:var(--auth-muted);font-size:13px;line-height:1.65}
.auth-form{display:grid;gap:18px}.auth-field{min-width:0}.auth-field>label,.auth-label-row label{display:block;margin:0 0 7px;color:#273c56;font-size:12px;font-weight:750}.auth-label-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px}.auth-label-row label{margin:0}.auth-forgot-link{color:var(--auth-primary);font-size:11px;font-weight:700;text-decoration:none}.auth-forgot-link:hover{text-decoration:underline}
.auth-input-wrap{position:relative;display:flex;align-items:center}.auth-input-wrap .form-control{width:100%;height:48px!important;padding:0 44px!important;border:1px solid var(--auth-border)!important;border-radius:12px!important;background:#fff!important;color:var(--auth-text)!important;font-size:13px!important;box-shadow:none!important;outline:0!important;transition:border-color .18s,box-shadow .18s}.auth-input-wrap .form-control::placeholder{color:#a1afc1}.auth-input-wrap .form-control:focus{border-color:#8fb3ff!important;box-shadow:0 0 0 4px rgba(37,99,235,.08)!important}.auth-input-icon{position:absolute;z-index:2;inset-inline-start:14px;width:18px;height:18px;display:grid;place-items:center;color:#8192a8;pointer-events:none}.auth-input-icon svg{width:17px;height:17px;fill:currentColor}
.auth-password-toggle{position:absolute;z-index:3;inset-inline-end:7px;width:34px;height:34px;padding:0;display:grid;place-items:center;border:0;border-radius:9px;background:transparent;color:#7a8aa0;cursor:pointer}.auth-password-toggle:hover{background:#f0f5fb;color:var(--auth-primary)}.auth-password-toggle svg{width:18px;height:18px;fill:currentColor}.auth-password-toggle .eye-closed{display:none}.auth-password-toggle.is-visible .eye-open{display:none}.auth-password-toggle.is-visible .eye-closed{display:block}
.auth-options{display:flex;align-items:center;justify-content:space-between;min-height:22px}.auth-remember{display:inline-flex;align-items:center;gap:8px;margin:0;cursor:pointer;color:#5d6f85;font-size:11px;font-weight:650}.auth-remember input{position:absolute;opacity:0;pointer-events:none}.auth-checkbox-ui{width:17px;height:17px;display:grid;place-items:center;border:1px solid #ccd8e7;border-radius:5px;background:#fff;transition:.16s}.auth-checkbox-ui svg{width:12px;height:12px;fill:#fff;opacity:0}.auth-remember input:checked+.auth-checkbox-ui{border-color:var(--auth-primary);background:var(--auth-primary)}.auth-remember input:checked+.auth-checkbox-ui svg{opacity:1}
.auth-submit{height:48px;width:100%;display:flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:12px;background:linear-gradient(135deg,var(--auth-primary),#3578f6);color:#fff;font-size:13px;font-weight:800;box-shadow:0 10px 24px rgba(37,99,235,.2);cursor:pointer;transition:.18s}.auth-submit:hover{background:linear-gradient(135deg,var(--auth-primary-dark),var(--auth-primary));transform:translateY(-1px);box-shadow:0 13px 30px rgba(37,99,235,.24)}.auth-submit-arrow{font-size:17px;line-height:1}
.auth-card-footer{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:22px;padding-top:18px;border-top:1px solid #edf1f6;color:#8b99ab;font-size:10px;line-height:1.5;text-align:center}.auth-card-footer svg{width:13px;height:13px;fill:currentColor;flex:none}.auth-recaptcha{overflow:auto}.invalid-feedback,.error.invalid-feedback{font-size:10px!important;margin-top:5px!important}.notification,.alert{border-radius:11px!important;font-size:12px!important}
.auth-dark body.login-page{--auth-bg:#08111f;--auth-surface:#0f1d2e;--auth-text:#eaf1f9;--auth-muted:#91a2b6;--auth-navy:#edf5ff;--auth-border:#26384d;background:radial-gradient(circle at 10% 10%,rgba(37,99,235,.12),transparent 28%),#08111f!important}.auth-dark .auth-layout{border-color:#203247}.auth-dark .auth-visual{background:linear-gradient(145deg,#102839,#0d2330 55%,#12243a)}.auth-dark .auth-visual-copy p{color:#93a6ba}.auth-dark .auth-form-pane{background:#0f1d2e}.auth-dark .auth-input-wrap .form-control{background:#122338!important;color:#edf5ff!important;border-color:#2a3d53!important}.auth-dark .auth-input-wrap .form-control::placeholder{color:#667a91}.auth-dark .auth-field>label,.auth-dark .auth-label-row label{color:#cad7e5}.auth-dark .auth-password-toggle:hover{background:#182d45}.auth-dark .auth-checkbox-ui{background:#122338;border-color:#33475d}.auth-dark .auth-card-footer{border-color:#213247}.auth-dark .auth-icon-btn,.auth-dark .auth-language-btn{background:rgba(15,29,46,.9);border-color:#2a3b50;color:#aebed0}
@media (max-width:900px){.auth-shell{padding:26px 18px}.auth-layout{width:min(520px,100%);min-height:0;display:block;border-radius:22px}.auth-visual{display:none}.auth-form-pane{padding:38px 36px}.auth-brand-mobile{display:block;margin:0 0 18px}.auth-brand-mobile .auth-brand-logo{height:80px;display:flex;align-items:center;justify-content:flex-start}.auth-brand-mobile img{width:auto!important;height:100%!important;max-width:230px!important;object-fit:contain!important}}
@media (max-width:520px){.auth-topbar{top:12px;inset-inline-end:12px}.auth-icon-btn,.auth-language-btn{width:34px;height:34px;border-radius:10px}.auth-shell{align-items:flex-start;padding:62px 12px 18px}.auth-layout{border-radius:18px}.auth-form-pane{padding:28px 22px 24px}.auth-heading h1{font-size:27px}.auth-heading{margin-bottom:21px}.auth-form{gap:15px}.auth-input-wrap .form-control{height:46px!important}.auth-submit{height:46px}.auth-card-footer{margin-top:18px;padding-top:15px}.auth-brand-mobile .auth-brand-logo{height:68px}}
@media (max-height:720px) and (min-width:901px){.auth-shell{padding:18px 28px}.auth-layout{min-height:540px}.auth-visual{padding:32px 38px}.auth-visual-logo{height:245px}.auth-form-pane{padding:34px 46px}.auth-heading{margin-bottom:19px}.auth-heading h1{font-size:29px}.auth-form{gap:14px}.auth-input-wrap .form-control,.auth-submit{height:44px!important}.auth-card-footer{margin-top:16px;padding-top:13px}}

/* v9.1.1 - supplied Reqqah PNG branding */
.auth-visual-logo{height:245px;padding:12px 18px}
.auth-visual-logo img{max-width:446px!important;max-height:201px!important;object-fit:contain!important;object-position:center!important}
.auth-brand-mobile .auth-brand-logo{height:92px}
.auth-brand-mobile img{width:min(100%,260px)!important;height:auto!important;max-height:92px!important;object-fit:contain!important}
@media (max-height:720px) and (min-width:901px){.auth-visual-logo{height:210px}.auth-visual-logo img{max-height:180px!important}}
@media (max-width:520px){.auth-brand-mobile .auth-brand-logo{height:76px}.auth-brand-mobile img{max-height:76px!important;max-width:230px!important}}

/* v9.1.4 - definitive Arabic RTL alignment */
html[lang="ar"] .auth-card,
html[lang="ar"] .auth-heading,
html[lang="ar"] .auth-form,
html[lang="ar"] .auth-field,
html[lang="ar"] .auth-options,
html[lang="ar"] .auth-card-footer,
html[lang="ar"] .auth-visual-copy {
  direction: rtl !important;
  text-align: right !important;
}
html[lang="ar"] .auth-heading h1,
html[lang="ar"] .auth-heading p,
html[lang="ar"] .auth-field > label,
html[lang="ar"] .auth-label-row,
html[lang="ar"] .auth-visual-copy h2,
html[lang="ar"] .auth-visual-copy p {
  direction: rtl !important;
  text-align: right !important;
}
html[lang="ar"] .auth-input-wrap .form-control {
  direction: rtl !important;
  text-align: right !important;
}
html[lang="ar"] .auth-input-wrap .form-control::placeholder {
  direction: rtl !important;
  text-align: right !important;
}
html[lang="ar"] .auth-options {
  justify-content: flex-start !important;
}
html[lang="ar"] .auth-remember {
  direction: rtl !important;
  flex-direction: row !important;
  text-align: right !important;
}
html[lang="ar"] .auth-card-footer {
  flex-direction: row !important;
}
html[lang="ar"] .auth-visual-copy {
  margin-inline-start: auto;
  margin-inline-end: 0;
}
html[lang="ar"] .auth-visual-kicker {
  display: block;
  direction: ltr;
  text-align: right;
}
