/* 登录/注册弹窗 */
.auth-modal-bg { display: none; position: fixed; inset: 0; background: rgba(0,0,0,.45); z-index: 2000; justify-content: center; align-items: center; }
.auth-modal-bg.open { display: flex; }
.auth-modal-box { background: #fff; border-radius: 16px; padding: 36px 40px; width: 100%; max-width: 400px; box-shadow: 0 20px 60px rgba(0,0,0,.2); position: relative; }
.auth-modal-close { position: absolute; top: 14px; right: 16px; width: 32px; height: 32px; border: none; background: #f1f5f9; border-radius: 8px; font-size: 20px; line-height: 1; color: #64748b; cursor: pointer; }
.auth-modal-close:hover { background: #e2e8f0; color: #334155; }
.auth-modal-box h2 { font-size: 22px; font-weight: 700; margin-bottom: 22px; }
.auth-fg { margin-bottom: 14px; }
.auth-fg label { display: block; font-size: 13px; color: #555; margin-bottom: 5px; font-weight: 500; }
.auth-fg input { width: 100%; padding: 10px 14px; border: 1.5px solid #ddd; border-radius: 8px; font-size: 15px; outline: none; box-sizing: border-box; }
.auth-fg input:focus { border-color: #16a34a; }
.auth-pw-wrap { position: relative; }
.auth-pw-wrap input { padding-right: 42px; }
.auth-pw-eye { position: absolute; right: 12px; top: 50%; transform: translateY(-50%); cursor: pointer; color: #bbb; font-size: 15px; user-select: none; }
.auth-pw-eye:hover { color: #555; }
#auth-err, #fp-err { color: #dc2626; font-size: 13px; min-height: 18px; margin: 4px 0; }
.auth-modal-row { display: flex; justify-content: space-between; align-items: center; margin-top: 10px; }
.auth-modal-row a { font-size: 13px; color: #16a34a; cursor: pointer; }
