/* 页面固定（2026-10-25 接后端时补）：锁缩放、点输入框不放大、整页不晃、键盘弹起时顶栏不被顶走。
   放在最后加载，覆盖设计稿里的几处；设计稿原文件没动。 */
html, body { position: fixed; inset: 0; overflow: hidden; overscroll-behavior: none; touch-action: manipulation; -webkit-text-size-adjust: 100%; }
.app { position: fixed; top: 0; left: 0; right: 0; height: var(--vvh, 100%); min-height: 0; margin: 0 auto; }
.view { position: absolute; inset: 0; min-height: 0; overflow-y: auto; -webkit-overflow-scrolling: touch; overscroll-behavior: contain; }
.chat { height: 100%; }
input, textarea, select { font-size: 16px !important; }   /* iOS 小于 16px 会自动放大 */
.sheet { max-height: calc(var(--vvh, 100vh) * .8); }

/* 登录 */
.login { position: fixed; inset: 0; z-index: 100; display: flex; align-items: center; justify-content: center; background: var(--paper, #F8EFD9) url("../assets/paper.jpg") center / cover; background-blend-mode: multiply; padding: 24px; }
.login-card { width: 100%; max-width: 300px; display: flex; flex-direction: column; align-items: center; gap: 12px; }
.login-card b { font-size: 26px; letter-spacing: .3em; font-weight: 400; }
.login-card p { margin: 0; }
.login-card input { width: 100%; height: 46px; border: 1px solid var(--rule, #d9cdb4); border-radius: 23px; background: rgba(255, 252, 244, .8); padding: 0 18px; outline: none; text-align: center; }
.login-card button { width: 100%; height: 46px; border-radius: 23px; background: var(--accent, #E39A63); color: #fff; text-align: center; letter-spacing: .3em; }
.login-err { color: #B8564A; min-height: 1.2em; font-size: 13px; }
