/* 门户登录页专属样式(叠加在 hrm-base.css 之上,57/43 分栏复用其 body[data-module="auth"] 规则) */

/* 企微登录主按钮:品牌海青底,与左侧朦胧海色场呼应 */
.btn-wecom{background:#08A8B5;border-color:#08A8B5;color:#fff}
.btn-wecom:hover,.btn-wecom:focus{background:#078a95;border-color:#078a95;color:#fff}

/* 密码区切换 */
.portal-divider{display:flex;align-items:center;gap:16px;margin:24px 0 28px;color:var(--muted);font-size:13px}
.portal-divider:before,.portal-divider:after{content:'';flex:1;height:1px;background:var(--line)}
.portal-divider a{color:var(--muted);text-decoration:none}
.portal-divider a:hover{color:var(--ink)}

/* 系统下拉:企微按钮之上,与表单控件同宽 */
#system{width:100%}

/* 未开通页按钮去箭头(登录按钮的 → 装饰只属于表单主按钮) */
body[data-module="auth"] .card-body .d-grid a{text-align:center;padding-left:0}
body[data-module="auth"] .card-body .d-grid a:after{display:none}

/* 门户品牌文案(覆盖 hrm-base.css 档案版文案) */
body[data-module="auth"] .navbar-brand:before{content:'让经营更清晰，\A让管理更高效。'}
body[data-module="auth"] .navbar-brand:after{content:'WHALEFALL SPA · WORKSPACE'}
body[data-module="auth"] .card-header:after{content:'选择系统，企业微信一键登录。'}
body[data-module="auth"]>.container:after{content:none}
@media(min-width:992px){
body[data-module="auth"] .navbar>.container:after{content:'客户 · 营销 · 财务 · 员工 · 档案'}
}

/* 登录页整体纯白底(去掉 hrm-base 的 paper 淡蓝底 rgb(248,251,253)),左侧品牌区渐变不受影响 */
html{background:#fff}
body[data-module="auth"]{background:#fff}
body[data-module="auth"]>.container{background:#fff}
/* 不依赖 :has 的兜底(老浏览器/部分环境 :has 失效,档案系统踩过同坑) */
body[data-module="auth"]{background:#fff}
body[data-module="auth"]>.container{background:#fff}
/* 右下角海色光晕:老浏览器 :has 失效时 hrm-base 的 display:block 会把它显示出来,兜底隐藏 */
body[data-module="auth"]>.container:before{display:none}
/* 登录页输入框纯白底(去掉 hrm-base 的 paper 淡蓝底) */
body[data-module="auth"] .form-control,
body[data-module="auth"] .form-select{background-color:#fff}
body[data-module="auth"] .form-control:focus,
body[data-module="auth"] .form-select:focus{background-color:#fff}

/* 右半表单区:行撑满容器并限幅,控件等高、纵向舒展 */
body[data-module="auth"]>.container>.row{width:100%;max-width:420px}
/* React 版:挂载点(login-root/switch-root/unbound-root)是 container 的直接子元素,
   必须让它承接原 .row 的宽度角色,否则被 flex 收缩成内容宽(196px 窄条) */
body[data-module="auth"]>.container>#login-root,
body[data-module="auth"]>.container>#switch-root,
body[data-module="auth"]>.container>#unbound-root{width:100%;max-width:420px}
body[data-module="auth"] .mb-3{margin-bottom:20px!important}
/* 控件基准 44px/8px(统一规范);主按钮加高 48px */
body[data-module="auth"] #system{min-height:44px;font-size:14px;font-weight:500;padding:10px 16px;border-radius:8px!important}
body[data-module="auth"] .btn-wecom{min-height:48px;font-size:16px;border-radius:8px}
body[data-module="auth"] .form-label{font-size:13px}
body[data-module="auth"] #password-area .form-control{min-height:44px;font-size:14px;border-radius:8px!important}
body[data-module="auth"] #password-area .btn-primary{min-height:48px;font-size:15px;border-radius:8px}

/* 切密码区的按钮化链接(React 版) */
.portal-divider-link{background:none;border:0;padding:0;color:var(--muted);font-size:13px;cursor:pointer}
.portal-divider-link:hover{color:var(--ink)}

/* 备案号:与装饰行「客户 · 营销 · 财务 · 员工 · 档案」同一基准(fixed bottom:34px,
   12px/20px)精确平齐;left 78.5%(57% 品牌区 + 43% 卡片区中心)与登录卡片同竖直线,
   块内居中,与「账号密码登录」按钮居中对齐;规范色辅助灰 #5F666A。 */
.portal-footer{position:fixed;bottom:34px;left:78.5%;transform:translateX(-50%);width:420px;max-width:100%;text-align:center;z-index:10}
.portal-footer a{color:var(--muted,#5F666A);font-size:12px;font-weight:400;line-height:20px;text-decoration:none}
.portal-footer a:hover{color:var(--ink,#242629)}
/* 小屏(卡片全宽居中,57/43 分栏失效):备案号回到视口居中,并收窄底部避免压住表单 */
@media(max-width:991px){
  .portal-footer{left:50%;bottom:12px}
}
