/* ============================ 我的墨痕 ============================ */
.mohen-app{max-width:780px;margin:10px auto 0;}

/* --- 登录 / 注册 --- */
.mohen-auth{max-width:420px;margin:0 auto;}
.auth-lead{font-size:13px;line-height:1.9;color:var(--ink-muted);margin:0 0 22px;padding-bottom:18px;border-bottom:1px solid var(--line-soft);letter-spacing:.02em;}
.auth-form{display:flex;flex-direction:column;gap:18px;}
.field{display:flex;flex-direction:column;gap:8px;}
.field>span{font-size:13px;letter-spacing:.08em;color:var(--ink-muted);}
.field input,.ci-extra textarea{font:inherit;font-size:15px;color:var(--ink);background:var(--paper-raised);border:1px solid var(--line);padding:12px 14px;width:100%;}
.field input:focus,.ci-extra textarea:focus{border-color:var(--green);outline:none;}
.otp[hidden]{display:none;}
.btn-row{display:flex;gap:12px;margin-top:4px;}
.auth-foot{display:flex;justify-content:space-between;align-items:center;font-size:13px;gap:12px;}
.auth-tip{color:var(--ink-muted);line-height:1.5;}
.link{color:var(--azure);text-decoration:none;white-space:nowrap;}
.link:hover{text-decoration:underline;}
.auth-hint{color:var(--ink-muted);text-align:right;}
#auth-msg{margin-top:2px;min-height:18px;color:var(--seal);}

.btn{font-family:var(--font-ui);font-size:14px;letter-spacing:.12em;padding:12px 22px;border:1px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer;transition:background .2s,color .2s,border-color .2s;}
.btn-solid{background:var(--ink-strong);color:var(--paper);border-color:var(--ink-strong);}
.btn-solid:hover{background:var(--green-deep);border-color:var(--green-deep);}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line);}
.btn-ghost:hover{border-color:var(--ink);}
.btn-sm{padding:9px 16px;font-size:13px;}
.btn:disabled{opacity:.45;cursor:not-allowed;}

/* --- 已登录主页 --- */
.mohen-bar{display:flex;justify-content:space-between;align-items:flex-end;padding-bottom:18px;border-bottom:1px solid var(--line-soft);margin-bottom:26px;gap:16px;}
.mohen-hi{font-family:var(--font-serif);font-size:20px;letter-spacing:.1em;color:var(--ink-strong);}
.mohen-hi span{font-family:var(--font-ui);font-size:13px;color:var(--ink-muted);letter-spacing:0;}
.mohen-bar .btn{white-space:nowrap;}

.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-soft);border:1px solid var(--line-soft);margin-bottom:40px;}
.stat{background:var(--paper);padding:22px 14px;text-align:center;}
.stat-n{display:block;font-family:var(--font-serif);font-size:30px;color:var(--ink-strong);line-height:1;}
.stat-l{display:block;font-size:12.5px;letter-spacing:.08em;color:var(--ink-muted);margin-top:10px;}

/* --- 打卡 --- */
.checkin{margin-bottom:44px;}
.checkin-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:18px;}
.checkin-card{background:var(--paper-raised);border:1px solid var(--line);padding:22px 20px;display:flex;flex-direction:column;gap:12px;align-items:flex-start;}
.ci-type{font-family:var(--font-serif);font-size:19px;letter-spacing:.14em;color:var(--green-deep);}
.ci-desc{font-size:13.5px;color:var(--ink-muted);line-height:1.7;flex:1;}
.ci-extra{display:flex;flex-direction:column;gap:10px;width:100%;}
.ci-extra[hidden]{display:none;}
.checkin-card.is-done{opacity:.62;}
.checkin-card.is-done .ci-type::after{content:" · 今日已留痕";font-size:12px;color:var(--ink-muted);letter-spacing:0;}

/* --- 历史 --- */
.history{margin-bottom:10px;}
.hist-list{display:flex;flex-direction:column;border-top:1px solid var(--line-soft);margin-top:18px;}
.hist-item{display:flex;gap:16px;align-items:flex-start;padding:16px 4px;border-bottom:1px solid var(--line-soft);}
.hist-date{font-family:var(--font-serif);font-size:15px;color:var(--ink-strong);min-width:92px;flex-shrink:0;}
.hist-body{flex:1;min-width:0;}
.hist-type{font-size:12px;letter-spacing:.16em;color:var(--green);}
.hist-note{font-size:14.5px;color:var(--ink);line-height:1.7;margin-top:4px;white-space:pre-wrap;word-break:break-word;}

@media (max-width:680px){
  .stats{grid-template-columns:repeat(2,1fr);}
  .checkin-grid{grid-template-columns:1fr;}
  .hist-item{flex-direction:column;gap:6px;}
  .hist-date{min-width:0;}
}

/* --- 企微轻引导 --- */
.mohen-guide{display:flex;align-items:center;gap:20px;margin-top:22px;padding:16px 18px;background:var(--paper);border:1px solid var(--line-soft);border-radius:8px;}
.mohen-guide .micro{margin:0;max-width:520px;line-height:1.8;}
.mohen-qr{flex:0 0 auto;display:block;}
.mohen-qr img{width:84px;height:84px;border-radius:6px;mix-blend-mode:multiply;display:block;}
@media (max-width:560px){
  .mohen-guide{flex-direction:column;align-items:flex-start;gap:14px;}
}
