:root{--navy:#14284b;--navy2:#0d1b35;--gold:#c9a46a;--bg:#f4f1ea;--card:#fff;--text:#1d2433;--muted:#6b7280;--line:#e6e0d4;--ok:#1f7a4d;--err:#b42318}
@media (prefers-color-scheme:dark){:root{--bg:#0b1324;--card:#121c31;--text:#e9edf5;--muted:#9aa4b8;--line:#22304d}}
*{box-sizing:border-box}
body.auth{margin:0;min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:16px;
  font-family:Alexandria,"Segoe UI",Tahoma,"Noto Sans Arabic",sans-serif;background:radial-gradient(circle at 50% 0,#1d3866 0,var(--navy2) 55%);color:var(--text)}
.auth-card{width:100%;max-width:420px;background:var(--card);border-radius:22px;padding:28px 22px;box-shadow:0 20px 60px rgba(0,0,0,.35);text-align:center}
.auth-card.wide{max-width:720px;text-align:right}
.auth-logo{width:110px;height:110px;object-fit:contain;display:block;margin:0 auto 6px}
h1{font-size:1.25rem;margin:.2rem 0;color:var(--gold)}
h2{font-size:1rem;margin:0 0 1rem;color:var(--muted);font-weight:500}
form{display:flex;flex-direction:column;gap:14px;text-align:right}
label{display:flex;flex-direction:column;gap:6px;font-size:.9rem;font-weight:500}
label.chk{flex-direction:row;align-items:center;gap:8px;font-weight:400}
input{width:100%;min-height:48px;border:1.5px solid var(--line);border-radius:12px;padding:0 14px;font:inherit;font-size:16px;background:transparent;color:var(--text)}
input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,164,106,.25)}
input[type=checkbox]{width:22px;min-height:22px;accent-color:var(--navy)}
.pw{position:relative;display:block}.pw input{padding-left:48px}
.eye{position:absolute;left:6px;top:6px;width:36px;height:36px;border:0;background:none;font-size:18px;cursor:pointer;opacity:.6}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;border:0;border-radius:12px;background:var(--navy);color:#fff;font:inherit;font-weight:600;font-size:1rem;cursor:pointer;text-decoration:none;padding:0 20px;width:100%}
.btn:disabled{opacity:.6}.btn.loading{opacity:.7;pointer-events:none}
.btn.ghost{background:transparent;color:var(--navy);border:1.5px solid var(--navy)}
@media (prefers-color-scheme:dark){.btn{background:var(--gold);color:#14284b}.btn.ghost{color:var(--gold);border-color:var(--gold)}}
.links{margin:14px 0 0}.links a{color:var(--gold);font-weight:500}
.hint{color:var(--muted);font-size:.85rem;line-height:1.7}
.alert{padding:12px 14px;border-radius:12px;margin-bottom:12px;font-size:.9rem;line-height:1.7;text-align:right}
.alert:empty{display:none}
.alert.ok{background:#e7f6ee;color:var(--ok)}.alert.err{background:#fdecea;color:var(--err)}
.meter{height:6px;border-radius:4px;background:var(--line);overflow:hidden}
.meter i{display:block;height:100%;width:0;background:#d92d20;transition:.3s}
.meter i[data-s="2"]{background:#f79009}.meter i[data-s="3"],.meter i[data-s="4"]{background:#12b76a}
fieldset{border:1px solid var(--line);border-radius:14px;padding:14px;display:grid;gap:12px}
legend{padding:0 6px;font-weight:600;color:var(--gold)}
.req{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:6px;font-size:.85rem}
.req .ok{color:var(--ok)}.req .bad{color:var(--err)}
pre{background:#0d1b35;color:#e8c98f;padding:12px;border-radius:10px;overflow-x:auto;font-size:.8rem}
