

    :root{--auth-brand:#10192f;
--auth-brand-2:#1f325e;
--auth-warm:#c95984;
--auth-bg:#f5eff1;
--auth-text:#171a21;
--auth-muted:#696673;
--auth-border:#dedde4}

    *{box-sizing:border-box}
body{margin:0;
min-height:100vh;
background:radial-gradient(circle at 80% 10%,rgba(183,75,116,.12),transparent 28%),linear-gradient(145deg,#efeef3 0%,var(--auth-bg) 52%,#eeedf3 100%);
color:var(--auth-text);
font-family:"Cairo",Tahoma,Arial,sans-serif}
.auth-page{min-height:100vh;
display:grid;
place-items:center;
padding:32px 18px}
.auth-shell{width:min(980px,100%);
display:grid;
grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);
background:rgba(255,255,255,.92);
border:1px solid rgba(23,34,61,.12);
border-radius:28px;
overflow:hidden;
box-shadow:0 30px 80px rgba(21,31,54,.16);
backdrop-filter:blur(16px)}
.auth-brand{padding:42px 34px;
background:linear-gradient(155deg,#0b1221,#172545 55%,#1f325e);
color:#fff;
display:flex;
flex-direction:column;
justify-content:center;
position:relative;
overflow:hidden}
.auth-brand:after{content:"";
position:absolute;
width:260px;
height:260px;
border-radius:50%;
background:rgba(183,75,116,.12);
inset:auto -90px -100px auto}
.auth-logo{width:180px;
height:84px;
object-fit:contain;
filter:drop-shadow(0 16px 24px rgba(0,0,0,.22));
margin-bottom:22px}
.auth-brand h1{font-size:34px;
margin:0 0 8px}
.auth-brand p{margin:0;
color:#e7e5ed;
line-height:1.9}
.auth-panel{padding:38px 42px}
.auth-panel h2{margin:0;
font-size:30px}
.intro{margin:6px 0 22px;
color:var(--auth-muted);
line-height:1.9}
.notice{padding:14px 16px;
margin-bottom:22px;
border:1px solid rgba(183,75,116,.35);
border-radius:14px;
background:#fbecf2;
color:#722e48;
line-height:1.8}
.grid{display:grid;
grid-template-columns:1fr 1fr;
gap:16px}
.field.full{grid-column:1/-1}
.field label{display:block;
margin-bottom:7px;
font-weight:800;
font-size:13px}
.field input,.field select{width:100%;
min-height:50px;
padding:0 14px;
border:1px solid var(--auth-border);
border-radius:13px;
background:#fafafc;
color:var(--auth-text);
font:inherit;
outline:none;
transition:.18s}
.field input:focus,.field select:focus{border-color:#5b4f8d;
box-shadow:0 0 0 4px rgba(91,79,141,.13);
background:#fff}
.hint{display:block;
margin-top:7px;
color:var(--auth-muted);
font-size:11px;
line-height:1.7}
.submit{width:100%;
min-height:54px;
margin-top:22px;
border:0;
border-radius:14px;
background:linear-gradient(135deg,var(--auth-brand-2),var(--auth-brand));
color:#fff;
font:inherit;
font-weight:900;
font-size:16px;
cursor:pointer;
box-shadow:0 12px 24px rgba(42,32,83,.18)}
.submit:disabled{opacity:.65;
cursor:wait}
#message{display:none;
margin:18px 0 0;
padding:13px 14px;
border-radius:12px;
line-height:1.8}
#message.show{display:block}
#message.error{background:#fff0f0;
color:#a92f3c;
border:1px solid #f3c7cb}
#message.success{background:#efedf8;
color:#172e63;
border:1px solid #cdc7e5}
.dev-link{display:inline-flex;
margin-top:8px;
color:#172e63;
font-weight:800}
.login{text-align:center;
margin:22px 0 0;
color:var(--auth-muted)}
.login a{color:var(--auth-brand-2);
font-weight:800;
text-decoration:none}
@media(max-width:800px){.auth-shell{grid-template-columns:1fr}
.auth-brand{padding:28px;
align-items:center;
text-align:center}
.auth-logo{width:148px;
height:68px;
margin-bottom:12px}
.auth-brand h1{font-size:28px}
.auth-panel{padding:30px 24px}
}
@media(max-width:620px){.auth-page{padding:14px}
.auth-shell{border-radius:20px}
.grid{grid-template-columns:1fr}
.field.full{grid-column:auto}
.auth-panel{padding:26px 18px}
}

    [data-theme="dark"] body{background:#0d1016;
color:#efeef4}
[data-theme="dark"] .auth-shell{background:#121620;
border-color:#2d3341}
[data-theme="dark"] .auth-panel{background:#121620}
[data-theme="dark"] .intro,[data-theme="dark"] .hint,[data-theme="dark"] .login{color:#adaab8}
[data-theme="dark"] .field input,[data-theme="dark"] .field select{background:#171c28;
color:#f2f1f6;
border-color:#333948}
[data-theme="dark"] .notice{background:#2b181f;
color:#e498b5;
border-color:#5b283c}
.phone-control{display:grid;grid-template-columns:118px minmax(0,1fr);width:100%;min-width:0;direction:ltr;border:1px solid var(--auth-border);border-radius:13px;background:#fafafc;transition:.18s;position:relative}
.phone-control:focus-within{border-color:#5b4f8d;box-shadow:0 0 0 4px rgba(91,79,141,.13);background:#fff}
.phone-control input{box-sizing:border-box;width:100%;max-width:none;min-width:0;height:50px;border:0;border-radius:12px 0 0 12px;box-shadow:none;background:transparent;padding:0 14px;direction:ltr;text-align:left}.country-picker{box-sizing:border-box;width:118px;min-width:118px;max-width:118px;height:50px;border:0;border-right:1px solid var(--auth-border);border-radius:0 12px 12px 0;background:transparent;color:inherit;display:flex;align-items:center;justify-content:center;gap:6px;padding:0 8px;font:800 13px inherit;cursor:pointer;white-space:nowrap;overflow:hidden}.country-picker .flag{font-size:19px;flex:0 0 auto}.country-picker .chevron{margin-left:2px;color:var(--auth-muted);flex:0 0 auto}
.country-menu{position:absolute;z-index:var(--z-dropdown);top:calc(100% + 8px);left:0;width:min(360px,calc(100vw - 48px));padding:10px;background:#fff;border:1px solid var(--auth-border);border-radius:16px;box-shadow:0 22px 60px rgba(3,10,25,.22);direction:rtl}.country-menu[hidden]{display:none}.country-search{width:100%;height:42px;margin-bottom:8px;padding:0 12px;border:1px solid var(--auth-border);border-radius:11px;background:#f8f8fa;direction:rtl;text-align:right}.country-options{max-height:245px;overflow:auto;display:grid;gap:3px}.country-option{width:100%;min-height:42px;border:0;border-radius:10px;background:transparent;color:var(--auth-text);display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:8px;padding:7px 9px;text-align:right;font:700 13px inherit;cursor:pointer}.country-option:hover,.country-option.active{background:#efedf5;color:#172545}.country-option .flag{font-size:20px}.country-option .dial{direction:ltr;color:var(--auth-muted);font-family:Inter,Arial,sans-serif}
.phone-verified-badge{display:inline-flex;align-items:center;gap:6px;margin-top:8px;color:#172e63;font-size:12px;font-weight:900}.phone-verified-badge[hidden]{display:none}
.otp-dialog{width:min(460px,calc(100vw - 28px));max-width:calc(100vw - 28px);padding:0;border:0;border-radius:24px;background:transparent;color:var(--auth-text);overflow:visible}.otp-dialog::backdrop{background:rgba(3,7,18,.72);backdrop-filter:blur(6px)}
.otp-card{position:relative;padding:30px;background:#fff;border:1px solid rgba(23,34,61,.14);border-radius:24px;box-shadow:0 30px 90px rgba(3,10,25,.3);text-align:center}.otp-close{position:absolute;inset-block-start:14px;inset-inline-end:14px;width:36px;height:36px;border:0;border-radius:11px;background:#efeef3;color:#313847;font-size:22px;cursor:pointer}
.otp-icon{width:60px;height:60px;margin:0 auto 14px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(145deg,#eae8f3,#f5d2df);color:#1f325e;font-size:25px}.otp-card h3{margin:0 0 7px;font-size:23px}.otp-card>p{margin:0;color:var(--auth-muted);line-height:1.8}.otp-number{display:block;margin-top:5px;color:#172545;font-weight:900;direction:ltr}
.verification-choices{display:grid;gap:10px;margin-top:22px}.verification-choice{width:100%;display:grid;grid-template-columns:46px 1fr auto;align-items:center;gap:12px;padding:13px;border:1px solid var(--auth-border);border-radius:15px;background:#fafafc;color:var(--auth-text);text-align:right;cursor:pointer}.verification-choice:hover{border-color:#5b4f8d;background:#f1f0f7}.verification-choice .choice-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;background:#eae8f3;color:#1f325e;font-size:20px}.verification-choice b,.verification-choice small{display:block}.verification-choice small{margin-top:3px;color:var(--auth-muted)}.verification-choice i{font-style:normal;color:#1f325e;font-weight:900}
.otp-code{width:100%;height:62px;margin:22px 0 8px;text-align:center;direction:ltr;letter-spacing:12px;font-size:25px;font-weight:900;font-family:Inter,Arial,sans-serif;border:1px solid var(--auth-border);border-radius:14px;background:#f8f8fa}.otp-code:focus{border-color:#5b4f8d;box-shadow:0 0 0 4px rgba(91,79,141,.13);outline:0}
.otp-status{min-height:24px;margin:4px 0 12px;font-size:12px;line-height:1.7}.otp-status.error{color:#a92f3c}.otp-status.success{color:#172e63;font-weight:900}.otp-confirm{width:100%;height:50px;border:0;border-radius:13px;background:linear-gradient(135deg,#1f325e,#10192f);color:#fff;font:900 15px inherit;cursor:pointer}.otp-confirm:disabled{opacity:.6}.otp-footer{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:14px}.otp-link{border:0;background:none;color:#1f325e;font:800 12px inherit;cursor:pointer}.otp-link:disabled{color:#8f8c99;cursor:wait}
[data-theme="dark"] .phone-control,[data-theme="dark"] .otp-code{background:#171c28;border-color:#333948;color:#f2f1f6}[data-theme="dark"] .country-picker{border-color:#333948;color:#f2f1f6}[data-theme="dark"] .country-menu{background:#121620;border-color:#333948}[data-theme="dark"] .country-option,[data-theme="dark"] .verification-choice{color:#efeef4;background:#171c28;border-color:#333948}[data-theme="dark"] .country-option:hover{background:#202738}[data-theme="dark"] .otp-card{background:#121620;color:#efeef4;border-color:#333948}[data-theme="dark"] .otp-close{background:#1d2330;color:#efeef4}[data-theme="dark"] .otp-card>p{color:#adaab8}[data-theme="dark"] .otp-number{color:#e37da4}
@media(max-width:480px){.phone-control{grid-template-columns:108px minmax(0,1fr)}.country-picker{width:108px;min-width:108px;max-width:108px;padding-inline:6px}.otp-card{padding:27px 20px}.otp-code{letter-spacing:9px}}
