.authentication-wrapper {
  display: flex;
  flex-basis: 100%;
  min-height: 100vh;
  width: 100%;
}

.authentication-wrapper .authentication-inner {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}

.authentication-wrapper.authentication-cover {
  align-items: stretch;
}

.authentication-wrapper.authentication-cover .authentication-inner {
  height: 100vh;
  margin: 0;
}

.authentication-wrapper.authentication-cover .authentication-inner .auth-cover-bg {
  width: 100%;
  height: 100%;
  border-radius: 0;
  margin: 0;
  position: relative;
  background-image: url("https://oss.starxw.com/Nexts/assets/img/login-bg/2.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.light-style .authentication-wrapper.authentication-bg { background-color: #fff; }
.light-style .auth-cover-bg-color { background-color: #f8f7fa; padding: 0; }

.dark-style .authentication-wrapper.authentication-bg { background-color: #2f3349; }
.dark-style .auth-cover-bg-color { background-color: #25293c; padding: 0; }

.col-lg-8, .col-lg-4 { padding: 0; }
.auth-cover-bg-color { padding: 0; }

@media (max-width: 991.98px) {
  .d-none.d-lg-flex { display: none !important; }
}

.w-px-400 {
  max-width: 400px;
  width: 100%;
}

.app-brand-logo.demo svg { width: 100%; height: auto; }

/* CAPTCHA：默认在登录页隐藏，由 JS 控制显示。
   注册 / 重置页可用内联 style 或额外类覆盖显示。*/
#captcha-container { display: none; }

/* 登录按钮加载效果 */
.btn-loading { position: relative; pointer-events: none; }
.btn-loading::after {
  content: "";
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  border: 2px solid #fff;
  border-left-color: transparent;
  border-radius: 50%;
  width: 1rem;
  height: 1rem;
  animation: spin 0.6s linear infinite;
}
@keyframes spin { 100% { transform: translateY(-50%) rotate(360deg); } }

/* 骨架屏 */
.skeleton {
  background: linear-gradient(90deg, rgba(0,0,0,.06) 25%, rgba(0,0,0,.12) 37%, rgba(0,0,0,.06) 63%);
  background-size: 400% 100%;
  animation: skeleton-loading 1.4s ease infinite;
}
@keyframes skeleton-loading {
  0% { background-position: 100% 50% }
  100% { background-position: 0 50% }
}

.oauth-card .brand {
  width: 56px;
  height: 56px;
  border-radius: 14px;
  overflow: hidden;
  background: #f5f6f8;
}
