/* auth-modal · 登录 / 注册 / 找回密码弹窗样式
   被 auth-modal.js 使用。预加载在所有引用 auth-modal.js 的页面 head 里。 */

.auth-overlay {
  position: fixed; inset: 0; z-index: 99999;
  background: rgba(44, 38, 32, 0.55);
  display: flex; align-items: center; justify-content: center;
  padding: 20px;
  animation: authFadeIn 0.2s ease-out;
}
@keyframes authFadeIn { from { opacity: 0; } to { opacity: 1; } }

.auth-modal {
  background: #f5f1e8;
  border: 1px solid #d4c8b0;
  border-radius: 8px;
  width: 100%; max-width: 420px;
  padding: 36px 32px 28px;
  box-shadow: 0 20px 60px rgba(0,0,0,0.25);
  font-family: "Songti SC","STSong","SimSun","宋体",Georgia,serif;
  color: #2c2620; line-height: 1.7;
  position: relative;
  animation: authSlide 0.25s ease-out;
}
@keyframes authSlide { from { transform: translateY(20px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }

.auth-modal .auth-close {
  position: absolute; top: 14px; right: 16px;
  width: 28px; height: 28px; line-height: 28px; text-align: center;
  color: #8a8175; cursor: pointer; font-size: 18px;
  border-radius: 14px; transition: all 0.2s;
}
.auth-modal .auth-close:hover { background: #efe8d6; color: #2c2620; }

.auth-modal h2 {
  font-size: 22px; font-weight: normal;
  letter-spacing: 6px; margin-bottom: 6px; text-align: center;
}
.auth-modal .auth-sub {
  color: #8a8175; font-size: 12px; letter-spacing: 3px;
  text-align: center; margin-bottom: 24px;
}

.auth-modal label {
  display: block; font-size: 12px; color: #8a8175;
  letter-spacing: 2px; margin: 12px 0 4px;
}
.auth-modal input {
  width: 100%; padding: 10px 12px; font-size: 15px;
  font-family: inherit; background: #fff;
  border: 1px solid #d4c8b0; border-radius: 4px;
  color: #2c2620;
  transition: border-color 0.2s;
}
.auth-modal input:focus {
  outline: none; border-color: #8b5a3c;
}

.auth-modal .auth-hint {
  color: #8a8175; font-size: 11px;
  margin-top: 4px; letter-spacing: 1px;
}

.auth-modal .auth-error {
  background: rgba(176,58,40,0.08);
  border-left: 3px solid #b03a28;
  color: #b03a28; font-size: 13px;
  padding: 8px 12px; margin: 12px 0;
  display: none;
}
.auth-modal .auth-error.show { display: block; }
.auth-modal .auth-error a {
  color: #b03a28; text-decoration: underline;
  margin-left: 8px;
}

.auth-modal button.auth-submit {
  width: 100%; margin-top: 18px;
  padding: 12px; font-size: 15px;
  background: #b03a28; color: #f2ecdb;
  border: none; border-radius: 4px;
  cursor: pointer; font-family: inherit;
  letter-spacing: 6px;
  transition: background 0.2s;
}
.auth-modal button.auth-submit:hover { background: #983127; }
.auth-modal button.auth-submit:disabled { background: #8a8175; cursor: not-allowed; }

.auth-modal .auth-foot {
  margin-top: 18px; text-align: center;
  color: #8a8175; font-size: 13px;
  letter-spacing: 1px;
}
.auth-modal .auth-foot a {
  color: #b03a28; text-decoration: none;
  cursor: pointer; margin: 0 4px;
}
.auth-modal .auth-foot a:hover { text-decoration: underline; }

.auth-modal .auth-success {
  background: rgba(139, 90, 60, 0.08);
  color: #6b4a30; font-size: 13px;
  padding: 12px 14px; border-radius: 4px;
  margin: 14px 0; display: none;
}
.auth-modal .auth-success.show { display: block; }
