/* =========================================================
   SolyLink 登录页风格对齐「每日小助理」
   目标：蓝渐变背景 + 居中白卡片 + 大输入框 + 间距舒适
   说明：uni-app 运行时注入 scoped 样式，本文件用 !important 覆盖。
   ========================================================= */
:root{
  --sl-blue:#2563eb;
  --sl-blue-deep:#1e3a8a;
  --sl-bg:#f4f6f9;
  --sl-ink:#1f2937;
  --sl-muted:#6b7280;
  --sl-line:#e5e7eb;
  --sl-card:#ffffff;
}
html, body{
  font-family:-apple-system,"PingFang SC","Microsoft YaHei","Segoe UI",sans-serif !important;
}
page{
  background-color:var(--sl-bg) !important;
}

/* ===== 登录页：全屏蓝渐变 + 内容居中 ===== */
.login-page{
  background:linear-gradient(135deg,#1e3a8a,#2563eb) !important;
  min-height:100vh !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  padding:24px 20px !important;
  box-sizing:border-box !important;
}

/* ===== 登录卡片：居中、更紧凑 ===== */
.login-card{
  width:100% !important;
  max-width:300px !important;
  background:#ffffff !important;
  border-radius:16px !important;
  padding:28px 22px 26px !important;
  box-shadow:0 16px 48px rgba(0,0,0,.28) !important;
  text-align:center !important;
  box-sizing:border-box !important;
  margin:0 auto !important;
}

/* ===== Logo / 品牌 ===== */
.brand{
  margin-bottom:22px !important;
}
.brand-logo{
  max-width:64px !important;
  max-height:64px !important;
  margin:0 auto 10px !important;
  display:block !important;
}
.brand-name{
  color:var(--sl-ink) !important;
  font-size:22px !important;
  font-weight:700 !important;
  letter-spacing:2px !important;
}

/* ===== 表单 ===== */
.form{
  margin-top:0 !important;
}
.field{
  margin-bottom:18px !important;
  text-align:left !important;
}

/* 外层只负责宽度，不画边框 */
.field-input{
  width:100% !important;
  background:transparent !important;
  border:none !important;
  padding:0 !important;
  height:auto !important;
  line-height:normal !important;
}

/* 可见输入框：更大、更高、圆角 */
.field-input .uni-input-wrapper{
  width:100% !important;
  height:54px !important;
  background:#ffffff !important;
  border:1px solid var(--sl-line) !important;
  border-radius:10px !important;
  padding:0 16px !important;
  box-sizing:border-box !important;
  display:flex !important;
  align-items:center !important;
  position:relative !important;
}
.field-input .uni-input-wrapper:focus-within{
  border-color:var(--sl-blue) !important;
  box-shadow:0 0 0 3px rgba(37,99,235,.12) !important;
}

/* 真实 input */
.field-input .uni-input-input{
  flex:1 !important;
  width:100% !important;
  height:100% !important;
  background:transparent !important;
  border:none !important;
  color:var(--sl-ink) !important;
  font-size:16px !important;
  outline:none !important;
  white-space:nowrap !important;
}

/* placeholder：绝对定位撑满，禁止换行 */
.field-input .uni-input-placeholder,
.field-input .uni-input-placeholder.field-placeholder{
  color:#9ca3af !important;
  font-size:16px !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  position:absolute !important;
  left:16px !important;
  right:16px !important;
  top:0 !important;
  bottom:0 !important;
  width:auto !important;
  height:100% !important;
  line-height:54px !important;
  padding:0 !important;
  margin:0 !important;
}

/* ===== 登录按钮 ===== */
.submit-btn{
  width:100% !important;
  background:var(--sl-blue) !important;
  color:#ffffff !important;
  border:none !important;
  border-radius:10px !important;
  height:50px !important;
  line-height:50px !important;
  margin-top:6px !important;
  font-size:16px !important;
  font-weight:500 !important;
  cursor:pointer !important;
  transition:opacity .2s ease !important;
}
.submit-btn:hover{ opacity:.92 !important; }
.submit-btn:active{ opacity:.80 !important; }
.submit-btn[disabled]{ opacity:.55 !important; cursor:not-allowed !important; }

/* ===== 底部版权 ===== */
.footer{
  margin-top:20px !important;
}
.footer-text{
  color:rgba(255,255,255,.72) !important;
  font-size:12px !important;
  letter-spacing:.5px !important;
}

/* ===== 小屏手机再紧凑一点 ===== */
@media (max-width:360px){
  .login-card{
    max-width:280px !important;
    padding:24px 18px 22px !important;
  }
  .field-input .uni-input-wrapper{
    height:52px !important;
  }
}


/* =========================================================
   SolyLink 底部 TabBar 修正
   问题：聊天、好友、我的三个 Tab 按钮错位堆在左侧，
         图标巨大、未横向均匀分布、未固定在底部。
   目标：固定在页面底部，三栏等分横向排列，图标/文字大小正常。
   ========================================================= */

/* TabBar 容器：固定在底部 */
uni-tabbar,
uni-tabbar.uni-tabbar-bottom{
  position:fixed !important;
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  z-index:9999 !important;
  box-sizing:border-box !important;
  width:100% !important;
  height:56px !important;
  max-height:56px !important;
  padding:0 0 env(safe-area-inset-bottom) 0 !important;
  margin:0 !important;
}

/* 内部真实 tabbar 条：flex 横向三栏等分 */
uni-tabbar .uni-tabbar{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:space-around !important;
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  background:#ffffff !important;
  border-top:1px solid #e5e7eb !important;
  padding:0 !important;
  margin:0 !important;
  box-sizing:border-box !important;
}

/* 单个 Tab 项：等分，内容垂直居中 */
uni-tabbar .uni-tabbar__item{
  flex:1 1 0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  height:100% !important;
  min-width:0 !important;
  padding:4px 0 !important;
  margin:0 !important;
  box-sizing:border-box !important;
  cursor:pointer !important;
}

/* 项内包装 */
uni-tabbar .uni-tabbar__bd{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  width:100% !important;
  height:auto !important;
  background:transparent !important;
  padding:0 !important;
  margin:0 !important;
}

/* 图标容器：固定 24px，不撑大 */
uni-tabbar .uni-tabbar__icon{
  width:24px !important;
  height:24px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 0 2px !important;
  padding:0 !important;
  box-sizing:border-box !important;
  flex:none !important;
}

/* 图标图片：限制在容器内 */
uni-tabbar .uni-tabbar__icon img,
uni-tabbar .uni-tabbar__icon image{
  width:100% !important;
  height:100% !important;
  max-width:24px !important;
  max-height:24px !important;
  object-fit:contain !important;
  display:block !important;
  margin:0 !important;
  padding:0 !important;
}

/* 文字标签 */
uni-tabbar .uni-tabbar__label,
.uni-tabbar .uni-tabbar__label{
  font-size:11px !important;
  line-height:1.2 !important;
  color:#666666 !important;
  text-align:center !important;
  margin:0 !important;
  padding:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  width:100% !important;
}

/* 选中态颜色 */
uni-tabbar .uni-tabbar__item--active .uni-tabbar__label,
uni-tabbar .uni-tabbar__item.active .uni-tabbar__label,
uni-tabbar .uni-tabbar__item .uni-tabbar__label.uni-tabbar__label--active{
  color:#2563eb !important;
  font-weight:500 !important;
}

/* 红点/徽标：限制大小，不撑破 */
uni-tabbar .uni-tabbar__reddot,
uni-tabbar .uni-tabbar__badge{
  position:absolute !important;
  top:-2px !important;
  right:-4px !important;
  min-width:14px !important;
  height:14px !important;
  line-height:14px !important;
  padding:0 3px !important;
  font-size:10px !important;
  color:#fff !important;
  background:#ff4d4f !important;
  border-radius:7px !important;
  text-align:center !important;
  box-sizing:border-box !important;
}

/* PC 端也保持底部固定 */
@media (min-width:768px){
  uni-tabbar,
  uni-tabbar.uni-tabbar-bottom{
    left:0 !important;
    right:0 !important;
    margin:0 auto !important;
  }
  uni-tabbar .uni-tabbar{
    max-width:100% !important;
  }
  uni-tabbar .uni-tabbar__label{
    font-size:12px !important;
  }
}
