@charset "utf-8";
/* ============================================================
   登录 / 注册 弹窗（全站通用，样式参照用户提供的弹窗设计稿）
   白色圆角卡片居中 + 半透明遮罩 + 右上角关闭 + 绿色主按钮
   ============================================================ */
.hao2026-modal-mask{display:none;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:99990;}
.hao2026-modal-mask.on{display:block;}
.hao2026-modal{display:none;position:fixed;top:50%;left:50%;transform:translate(-50%,-52%);width:400px;max-width:92vw;background:#fff;border-radius:12px;box-shadow:0 12px 40px rgba(0,0,0,.25);z-index:99991;padding:34px 40px 30px;box-sizing:border-box;}
.hao2026-modal.on{display:block;}
.hao2026-modal .fm-close{position:absolute;top:14px;right:18px;font-size:26px;line-height:1;color:#bbb;cursor:pointer;font-family:Arial,sans-serif;}
.hao2026-modal .fm-close:hover{color:#666;}
.hao2026-modal h3{font-size:22px;color:#222;text-align:center;margin:0 0 24px;font-weight:bold;}
.hao2026-modal .fm-field{margin-bottom:16px;}
.hao2026-modal .fm-field label{display:block;font-size:14px;color:#333;margin-bottom:8px;}
.hao2026-modal .fm-field input{width:100%;height:44px;line-height:44px;padding:0 14px;border:1px solid #e5e5e5;border-radius:6px;background:#f5f5f5;font-size:14px;box-sizing:border-box;outline:none;}
.hao2026-modal .fm-field input:focus{border-color:#3cb135;background:#fff;}
.hao2026-modal .fm-field input::-webkit-input-placeholder{color:#b5b5b5;}
.hao2026-modal .fm-row{display:flex;justify-content:space-between;align-items:center;margin:2px 0 20px;font-size:13px;}
.hao2026-modal .fm-row .fm-remember{color:#555;cursor:pointer;display:inline-flex;align-items:center;gap:6px;}
.hao2026-modal .fm-row .fm-remember input{width:auto;height:auto;vertical-align:middle;}
.hao2026-modal .fm-row a{color:#333;}
.hao2026-modal .fm-row a:hover{color:#3cb135;}
.hao2026-modal .fm-switch{text-align:center;font-size:13px;color:#666;margin:-6px 0 16px;}
.hao2026-modal .fm-switch a{color:#333;}
.hao2026-modal .fm-switch a:hover{color:#3cb135;}
.hao2026-modal .fm-submit{display:block;width:100%;height:46px;line-height:46px;border:0;border-radius:6px;background:#3cb135;color:#fff;font-size:17px;font-weight:bold;cursor:pointer;}
.hao2026-modal .fm-submit:hover{background:#2f9c2a;}
.hao2026-modal .fm-submit[disabled]{opacity:.6;cursor:default;}
.hao2026-modal .fm-msg{display:none;margin:-8px 0 14px;padding:8px 12px;border-radius:6px;font-size:13px;line-height:20px;}
.hao2026-modal .fm-msg.err{display:block;background:#fdf0ef;color:#d9534f;border:1px solid #f5d8d6;}
.hao2026-modal .fm-msg.ok{display:block;background:#f0f9ee;color:#2f8f2a;border:1px solid #d6ecd2;}
.hao2026-modal .fm-code{display:flex;gap:10px;align-items:center;}
.hao2026-modal .fm-code input{flex:1;}
.hao2026-modal .fm-code img{height:44px;cursor:pointer;border-radius:6px;border:1px solid #e5e5e5;}
.hao2026-modal .fm-code .fm-codebtn{flex-shrink:0;height:44px;line-height:44px;padding:0 16px;border:1px solid #3cb135;background:#fff;color:#3cb135;font-size:14px;border-radius:6px;cursor:pointer;white-space:nowrap;}
.hao2026-modal .fm-code .fm-codebtn:hover{background:#f0f9ee;}
.hao2026-modal .fm-code .fm-codebtn[disabled]{border-color:#ccc;color:#aaa;cursor:default;background:#f5f5f5;}
@media (max-width:480px){
  .hao2026-modal{padding:24px 20px 20px;border-radius:14px;max-width:94vw;max-height:86vh;overflow-y:auto;}
  .hao2026-modal h3{font-size:19px;margin:0 0 18px;}
  .hao2026-modal .fm-field{margin-bottom:13px;}
  .hao2026-modal .fm-field label{font-size:13px;margin-bottom:6px;}
  .hao2026-modal .fm-field input{height:42px;line-height:42px;font-size:15px;} /* 15px 防 iOS 聚焦缩放 */
  .hao2026-modal .fm-row{flex-direction:column;align-items:flex-start;gap:8px;}
  .hao2026-modal .fm-submit{height:44px;line-height:44px;font-size:16px;}
  .hao2026-modal .fm-code{gap:8px;}
  .hao2026-modal .fm-code .fm-codebtn{padding:0 12px;font-size:13px;height:42px;line-height:42px;}
}

