/* 页面：index（首页） */
/* 让页面刚好铺满浏览器视窗且不产生溢出滚动 */
html, body { height: 100%; margin: 0; padding: 0; }
/* 布局与容器：完全水平垂直居中 */
.viewport-center {
    /* 兼容性处理：优先使用百分比（依赖 html,body 高度），其次尝试 dvh 解决移动端地址栏问题 */
    min-height: 100%;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

/* 覆盖 layui-container 的默认行为，确保全屏 Flex 布局生效 */
.layui-container.viewport-center {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
}

/* 让 form 内部也居中 */
.viewport-center .layui-form {
    width: 100%;
    display: flex;
    justify-content: center;
}

.demo-reg-container {
    width: 320px;
    margin: 0; /* 去除 margin: 0 auto，完全依赖 Flex 布局 */
}
/* 顶部 LOGO 样式：增大底部间距以和后续内容留白 */
.index-logo{width: 96px; height: 96px; display: block; margin: 0 auto 20px;}
/* 说明文字灰色 */
.muted { color: #808080; }
/* 消息样式 */
.message { padding: 10px; background-color: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; border-radius: 4px; word-wrap: break-word; white-space: normal; display: none; text-align: center; }
.message.success { background-color: #d4edda; color: #155724; border-color: #c3e6cb; }
.message.loading { background-color: #FFFFE0; color: #155724; border-color: #c3e6cb; }
/* 无标签时的单选块左边距修正 */
.no-label { margin-left: 0; }
/* 选择框占满容器宽度 */
.demo-reg-container .layui-form-select{ width: 100%; }
/* 输入组占满容器宽度 */
.demo-reg-container .layui-input-group { width: 100%; }
/* 标签宽度与输入块左边距 */
.demo-reg-container .layui-form-label { width: 90px; }
.demo-reg-container .layui-input-block { margin-left: 90px; }
/* 辅助类：隐藏 */
.hide { display: none; }
/* 验证码输入内容居中（首页） */
#index-code.layui-input { text-align: center; }
/* 验证码图标颜色（首页设为绿色，与 2FA/SMS 保持一致） */
.layui-input-prefix .layui-icon-vercode { color: #5FB878; }