@font-face{font-family:Vazirmatn;src:url('/static/fonts/Vazirmatn-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Vazirmatn;src:url('/static/fonts/Vazirmatn-SemiBold.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:Vazirmatn;src:url('/static/fonts/Vazirmatn-Bold.woff2') format('woff2');font-weight:800;font-style:normal;font-display:swap}
:root{color-scheme:dark;font-family:Vazirmatn,Tahoma,sans-serif;background:#080c14;color:#f8fbff}
*{box-sizing:border-box}
body{min-height:100dvh;margin:0;background:#080c14;color:#f8fbff}
.auth-shell{min-height:100dvh;max-width:560px;margin:auto;padding:calc(22px + env(safe-area-inset-top)) 24px calc(22px + env(safe-area-inset-bottom));display:flex;flex-direction:column}
.brand{color:#f8fbff;text-decoration:none;font-size:20px;font-weight:800;display:flex;align-items:center;gap:10px}
.brand-mark{width:38px;height:38px;border-radius:11px;display:block;background:#142037}
.auth-card{position:relative;overflow:hidden;margin:auto 0;padding:34px 26px;border:1px solid #273148;border-radius:24px;background:#101725;box-shadow:0 22px 56px rgba(0,0,0,.24)}
.orb{display:none}
.auth-card>*:not(.orb){position:relative}
.eyebrow{margin:0 0 10px;color:#7da7ff;font-size:13px;font-weight:600}
.auth-card h1{margin:0;font-size:31px;line-height:1.34;letter-spacing:-.8px}
.intro{margin:14px 0 26px;color:#b9c7d9;line-height:1.85;font-size:15px}
.auth-card label:not(.terms){display:block;margin-bottom:9px;color:#d8e3f2;font-size:14px}
.phone-field{direction:ltr;display:flex;align-items:center;gap:9px;border:1px solid #34415a;border-radius:14px;background:#080c14;padding:0 14px}
.phone-field:focus-within,.code-field:focus{border-color:#4d7cfe;box-shadow:0 0 0 3px rgba(77,124,254,.16)}
.phone-field span{color:#7da7ff;font-weight:700}
.phone-field input,.code-field{width:100%;border:0;outline:0;background:transparent;color:#fff;font:inherit;font-size:18px;padding:17px 0}
.phone-field input::placeholder,.code-field::placeholder{color:#77869b}
.hint{margin:10px 0 22px;color:#8494aa;font-size:12px}
.primary{width:100%;border:0;border-radius:12px;padding:16px;background:#4d7cfe;color:#fff;font:600 16px inherit;cursor:pointer;transition:background-color .18s ease,transform .18s ease}
.primary:hover{background:#3a68f0;transform:translateY(-1px)}
.primary:focus-visible,.back:focus-visible,.resend:focus-visible{outline:3px solid rgba(125,167,255,.5);outline-offset:3px}
.primary:disabled{opacity:.55;cursor:not-allowed;transform:none}
.message{min-height:20px;margin:16px 0 0;text-align:center;color:#9acbe1;font-size:13px}
.message.error{color:#ffadb3}
.back,.resend{border:0;background:transparent;color:#8aaeff;font:inherit;cursor:pointer;padding:0}
.back{margin-bottom:22px}
.code-field{border:1px solid #34415a;border-radius:14px;background:#080c14;text-align:center;letter-spacing:9px;padding:17px 12px}
.terms{display:block;margin:17px 0;color:#aebed0;font-size:13px;line-height:1.8}
.terms input{accent-color:#4d7cfe;margin-left:8px}
.terms a{color:#8aaeff}
.resend{display:block;margin:16px auto 0;color:#a9b9ce;font-size:13px}
.resend:disabled{opacity:.58;cursor:default}
.footnote{text-align:center;color:#8091a8;font-size:12px;margin:0}
@media(max-width:380px){.auth-card{padding:28px 20px;border-radius:20px}.auth-card h1{font-size:28px}}
@media(prefers-reduced-motion:reduce){.primary{transition:none}}
