/* 冠成登录页品牌样式（仅登录页 / web 页加载，独立于 desk 的 theme.css，避免相互污染） */

/* 页面整体：纵向 flex 居中（Logo 独立块在卡片上方） */
body { font-size: 16px; }
main.container {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  min-height: 100vh !important;
  padding-top: 6vh !important;
  box-sizing: border-box !important;
}

/* 登录卡片：显式居中卡片（核心 CSS 未提供 .page-card 样式，这里兜底 + 品牌化） */
.login-content.page-card,
.page-card {
  max-width: 380px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 30px 34px !important;
  background: #ffffff !important;
  border: 1px solid #e6e8eb !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 28px rgba(17, 24, 39, .10) !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

/* Logo：卡片外、卡片上方独立居中，等比放大（46→69px，约 +50%） */
.gc-logo-wrap {
  width: 100%;
  text-align: center;
  margin-bottom: 20px;
}
.app-logo {
  max-height: 69px !important;
  max-width: 390px !important;
  width: auto !important;
  height: auto !important;
  display: block !important;
  margin: 0 auto !important;
  object-fit: contain !important;
}

/* 标题与说明文字 */
.page-card-head-text {
  font-size: 20px !important;
  font-weight: 600 !important;
  color: #111827 !important;
}
.page-card-subtitle {
  font-size: 15px !important;
  color: #6b7280 !important;
  margin-top: 4px !important;
}

/* 表单元素：字号加大一档、标签左对齐 */
.form-signin .form-control,
.form-login input {
  font-size: 16px !important;
  padding: 10px 12px !important;
  height: auto !important;
  border-radius: 8px !important;
}
.form-signin label,
.form-login label {
  font-size: 16px !important;
  text-align: left !important;
  display: block !important;
  margin-bottom: 4px !important;
  color: #374151 !important;
}

/* 主按钮品牌蓝 */
.btn-primary,
.btn.btn-primary {
  background-color: #007AFF !important;
  border-color: #007AFF !important;
  color: #fff !important;
  font-size: 16px !important;
  border-radius: 8px !important;
}
.btn-primary:hover {
  background-color: #0069d9 !important;
  border-color: #0069d9 !important;
}

a { color: #007AFF; font-size: 15px; }

/* ★ 企业微信扫码登录入口 */
.gc-divider {
  display: flex;
  align-items: center;
  margin: 18px 0 14px;
  color: #9aa0a6;
  font-size: 13px;
}
.gc-divider::before,
.gc-divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: #e6e8eb;
}
.gc-divider span {
  padding: 0 12px;
}
.gc-btn-wecom {
  display: block !important;
  width: 100% !important;
  background: #07c160 !important;
  color: #fff !important;
  text-decoration: none !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 11px 0 !important;
  font-size: 16px !important;
  box-sizing: border-box !important;
  cursor: pointer;
}
.gc-btn-wecom:hover {
  background: #06ad56 !important;
}
.gc-wecom-tip {
  margin-top: 10px;
  font-size: 12px;
  color: #8a8f99;
}

/* ★ 内嵌二维码弹层（扫码登录） */
.gc-modal-mask {
  position: fixed;
  left: 0; top: 0; right: 0; bottom: 0;
  background: rgba(0, 0, 0, .45);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}
.gc-modal {
  background: #fff;
  border-radius: 12px;
  width: 360px;
  max-width: 92vw;
  box-shadow: 0 8px 30px rgba(0, 0, 0, .18);
  overflow: hidden;
}
.gc-modal-head {
  padding: 14px 18px;
  font-size: 15px;
  font-weight: 600;
  color: #1f2329;
  border-bottom: 1px solid #f0f0f0;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.gc-modal-close {
  color: #999;
  text-decoration: none;
  font-size: 22px;
  line-height: 1;
}
.gc-modal-close:hover { color: #333; }
.gc-modal-body {
  padding: 20px 18px 22px;
  text-align: center;
}
.gc-qr-frame {
  width: 300px;
  height: 340px;
  max-width: 100%;
  border: 0;
  background: #fafafa;
  border-radius: 8px;
}
.gc-modal-tip {
  margin-top: 12px;
  font-size: 13px;
  color: #646a73;
}
.gc-modal-fallback {
  margin-top: 10px;
  font-size: 12px;
  color: #b0b4bc;
}
.gc-modal-fallback a { color: #2f7dcd; }
