/* ===================== LOGIN ===================== */
#login-screen{
  position:fixed;inset:0;z-index:9999;
  background:var(--bg);
  display:flex;align-items:center;justify-content:center;
  animation:fadeIn .4s ease;
}

.login-container{
  width:400px;
  animation:slideUp .4s ease;
}

.login-brand{
  text-align:center;
  margin-bottom:32px;
}
.login-brand img{height:60px;width:auto;margin-bottom:20px;}

.login-orbit{
  font-size:42px;
  font-weight:700;
  letter-spacing:-2px;
  color:var(--tx);
  line-height:1;
}

.login-orbit span{color:var(--cyan);}


.login-card{
  background:var(--sur);
  border:1px solid var(--bd);
  border-radius:10px;
  padding:32px;
  box-shadow:var(--shadow-lg);
}

.login-title{font-size:18px;font-weight:600;margin-bottom:6px;}
.login-sub{font-size:13px;color:var(--tx2);margin-bottom:24px;}

.login-field{margin-bottom:16px;}
.login-field label{display:block;font-size:11px;font-weight:600;color:var(--tx2);text-transform:uppercase;letter-spacing:.8px;margin-bottom:6px;}
.login-field input{
  width:100%;background:var(--bg2);border:1px solid var(--bd);
  border-radius:6px;padding:11px 14px;color:var(--tx);
  font-family:'Inter',sans-serif;font-size:14px;outline:none;
  transition:border-color .2s,box-shadow .2s;
}
.login-field input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim);}

.login-btn{
  width:100%;padding:12px;border-radius:6px;border:none;
  background:var(--cyan);color:#fff;font-family:'Inter',sans-serif;
  font-size:14px;font-weight:600;cursor:pointer;
  transition:all .2s;margin-top:8px;
  position:relative;overflow:hidden;
}
.login-btn:hover{background:var(--cyan-hover);}

/* Reset password screen */
#reset-pw-screen{display:none;position:fixed;inset:0;background:var(--bg);z-index:10000;align-items:center;justify-content:center;}
.rp-card{background:var(--sur);border:1px solid var(--bd);border-radius:12px;padding:36px;width:100%;max-width:400px;box-shadow:var(--shadow-lg);}

/* ===================== SETUP WIZARD ===================== */
#setup-wizard{
  position:fixed;inset:0;z-index:10000;
  background:var(--bg);
  display:none;align-items:center;justify-content:center;
  animation:fadeIn .4s ease;
}
.wz-container{width:440px;animation:slideUp .4s ease;}
.wz-brand{text-align:center;margin-bottom:28px;}
.wz-brand img{height:52px;width:auto;}
.wz-card{background:var(--sur);border:1px solid var(--bd);border-radius:10px;padding:32px;box-shadow:var(--shadow-lg);}
.wz-steps{display:flex;gap:6px;margin-bottom:24px;}
.wz-dot{flex:1;height:3px;border-radius:2px;background:var(--bd);transition:background .3s;}
.wz-dot.active{background:var(--cyan);}
.wz-title{font-size:17px;font-weight:600;margin-bottom:4px;}
.wz-sub{font-size:13px;color:var(--tx2);margin-bottom:22px;}
.wz-field{margin-bottom:14px;}
.wz-field label{display:block;font-size:11px;font-weight:600;color:var(--tx2);text-transform:uppercase;letter-spacing:.8px;margin-bottom:6px;}
.wz-field input{
  width:100%;background:var(--bg2);border:1px solid var(--bd);
  border-radius:6px;padding:11px 14px;color:var(--tx);
  font-family:'Inter',sans-serif;font-size:14px;outline:none;
  transition:border-color .2s,box-shadow .2s;
}
.wz-field input:focus{border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-dim);}
.wz-err{font-size:12px;color:#ef4444;margin-bottom:12px;display:none;}
.wz-err.show{display:block;}
.wz-foot{display:flex;gap:8px;margin-top:20px;}
