.terms-consent {
  display: flex !important;
  align-items: flex-start;
  gap: 8px;
  margin: 2px 0 4px;
  color: #536b62 !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 1.6;
}

.terms-consent input {
  width: 15px !important;
  min-height: 15px !important;
  height: 15px;
  margin: 2px 0 0 !important;
  padding: 0 !important;
  accent-color: #557d45;
}

.terms-consent a {
  color: #315f9f;
  font-weight: 800;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.oauth-divider {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 23px 0 14px;
  color: #81918a;
  font-size: 10px;
  text-align: center;
}

.oauth-divider::before,
.oauth-divider::after {
  height: 1px;
  flex: 1;
  background: #dce4de;
  content: "";
}

.oauth-options {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
}

.oauth-options button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  border: 1px solid #d2ddd5;
  border-radius: 6px;
  background: #f6f8f6;
  color: #274c3a;
  font: inherit;
  font-size: 11px;
  cursor: pointer;
}

.oauth-options b { font-size: 16px; }
.oauth-hint { margin: 10px 0 0 !important; color: #829188 !important; font-size: 13px !important; text-align: center; }

.register-page .auth-card { padding-top: 30px; padding-bottom: 30px; }
.register-page .auth-card h2 { margin-bottom: 19px; }
.register-page .auth-form { gap: 11px; }
.register-page .auth-form input { min-height: 42px; }
.register-page .auth-switch { margin-top: 16px !important; }
.register-page .auth-back { margin-top: 15px; }

/* Match availability to the actual provider configuration. */
.oauth-options button[data-oauth-provider="wechat"]:not(:disabled) {
  background: #16783d;
  border-color: #16783d;
  color: #fff;
  font-weight: 700;
}
.oauth-options button[data-oauth-provider="qq"]:not(:disabled) {
  background: #1766ac;
  border-color: #1766ac;
  color: #fff;
  font-weight: 700;
}
.oauth-options button[data-oauth-provider="wechat"]:not(:disabled):hover { filter: brightness(.93); }
.oauth-options button[data-oauth-provider="qq"]:hover { box-shadow: 0 0 0 2px #1766ac33; }
.oauth-options button:focus-visible { outline: 3px solid #315f9f; outline-offset: 3px; }
.oauth-options button:disabled {
  background: #f0f3f1;
  border-color: #d2ddd5;
  color: #65766d;
  cursor: not-allowed;
}
.oauth-scan-guide { margin: 10px 0 0 !important; color: #536b62 !important; font-size: 13px !important; line-height: 1.65; }

.oauth-options button[data-oauth-provider="qq"] img { width: 16px; height: 16px; flex: 0 0 16px; object-fit: contain; }
