:root{color-scheme:dark;font-family:Inter,Manrope,"Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;color:#f2f7ff;background:#000}
.mobile-auth{width:min(100%,480px);min-height:100dvh;margin:auto;padding:22px;background:radial-gradient(circle at 50% 8%,#102447 0,#040914 42%,#000 78%)}
.auth-back{color:#aec0d9;font-size:1rem;font-weight:850;text-decoration:none}
.auth-brand{text-align:center}
.auth-brand img{width:180px;margin:-8px auto -15px;filter:drop-shadow(0 0 18px #00ddff82) drop-shadow(0 0 30px #ae32ff70);animation:authPulse 1.8s ease-in-out infinite alternate}
.auth-brand p{margin:0;color:#55e3ff;font-size:.76rem;font-weight:950;letter-spacing:.18em}
.auth-brand h1{margin:9px 0 6px;font-size:2.5rem;letter-spacing:-.055em}
.auth-brand span{color:#9fb0c7;font-size:1rem;line-height:1.5}
.auth-card{margin-top:26px;padding:20px;border:1px solid #254f80;border-radius:25px;background:#050d19e8;box-shadow:0 0 38px #027aff22}
.auth-modes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px}
.auth-modes button{padding:13px;color:#b8c8dd;border:1px solid #244a74;border-radius:13px;background:#071221;font-size:1rem;font-weight:900}
.auth-modes button.active{color:#fff;border-color:#8847b6;background:linear-gradient(135deg,#09264b,#40145f)}
form{display:grid;gap:15px}
label{display:grid;gap:7px;color:#dbe8f8;font-size:1rem;font-weight:850}
input{width:100%;padding:14px;color:#fff;border:1px solid #2a5b91;border-radius:13px;outline:0;background:#010711;font-size:1rem}
input:focus{border-color:#46dfff;box-shadow:0 0 0 3px #16cfff22}
.auth-primary,.provider-button{width:100%;padding:15px;color:#fff;border:1px solid #3976ae;border-radius:14px;background:linear-gradient(135deg,#0a315b,#531873);font-size:1rem;font-weight:950}
.auth-primary:disabled{opacity:.55}
.auth-status{min-height:42px;margin:13px 0;color:#91a6c1;font-size:.9rem;line-height:1.45}
.auth-status.error{color:#ff9aa7}
.auth-divider{display:flex;align-items:center;gap:10px;margin:13px 0;color:#72859f}
.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:#203a5b}
.provider-button{margin-top:8px;background:#071527}
.pair-instead{display:block;margin-top:18px;color:#60e4ff;font-size:1rem;font-weight:900;text-align:center;text-decoration:none}
.auth-foot{color:#788ba5;font-size:.84rem;line-height:1.5;text-align:center}
@keyframes authPulse{from{transform:scale(.98);opacity:.86}to{transform:scale(1.03);opacity:1}}
@media (max-height:850px){
  .mobile-auth{padding:10px 18px 12px}
  .auth-back{display:inline-block;margin-bottom:-4px}
  .auth-brand img{width:112px;margin:-12px auto -18px}
  .auth-brand p{font-size:.68rem}
  .auth-brand h1{margin:4px 0 2px;font-size:1.85rem}
  .auth-brand span{font-size:.9rem;line-height:1.25}
  .auth-card{margin-top:10px;padding:13px 16px;border-radius:20px}
  .auth-modes{margin-bottom:10px}
  .auth-modes button{padding:9px}
  form{gap:9px}
  label{gap:4px;font-size:.92rem}
  input{padding:10px 12px}
  .auth-primary,.provider-button{padding:11px}
  .auth-status{min-height:24px;margin:7px 0;font-size:.8rem}
  .auth-divider{margin:5px 0}
  .provider-button{margin-top:4px}
  .pair-instead{margin-top:10px}
  .auth-foot{margin:8px 0 0;font-size:.76rem}
}
