/* 登录/注册框直接迁移自 /Users/guan/gpt/注册.html；网站蒙层继续由 .lx-p0-modal-mask 统一提供。 */
.lx-p0-modal-mask.lx-auth-modal-mask .lx-p0-modal.lx-auth-modal {
  --brand-deep:#4d144a;
  --brand-red:#b8252e;
  --brand-pink:#d84069;
  --brand-soft:#fcf2f8;
  --lavender:#e3eafd;
  --text:#2b2430;
  --muted:#8f8794;
  --line:#ebe6ee;
  --surface:#ffffff;
  --shadow:0 24px 70px rgba(42,20,48,.18), 0 4px 18px rgba(42,20,48,.08);
  width:min(520px, calc(100vw - 32px));
  max-height:calc(100vh - 32px);
  overflow:auto;
  border-radius:24px;
  border:1px solid rgba(77,20,74,.08);
  background:radial-gradient(560px 300px at 80% -10%, rgba(216,64,105,.07), transparent 62%),linear-gradient(180deg,rgba(255,255,255,.98),rgba(255,255,255,.96));
  box-shadow:var(--shadow);
  padding:30px 48px 46px;
  position:relative;
  animation:lx-auth-pop .35s cubic-bezier(.2,.8,.2,1);
  color:var(--text);
  font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,-apple-system,sans-serif;
}
@keyframes lx-auth-pop{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
.lx-auth-modal .lx-p0-modal-head{display:none!important}
.lx-auth-modal .lx-p0-modal-body{padding:0!important;overflow:visible!important}
.lx-auth-modal button,.lx-auth-modal input{font:inherit}
.lx-auth-modal button{cursor:pointer}
.lx-auth-modal .lx-auth-close{position:absolute;right:18px;top:16px;width:36px;height:36px;border:0;background:transparent;border-radius:10px;font-size:26px;line-height:1;color:#5b535e}
.lx-auth-modal .lx-auth-close:hover{background:#f6f2f6}
.lx-auth-modal .lx-auth-logo-wrap{display:flex;justify-content:center;margin:4px 0 20px}
.lx-auth-modal .lx-auth-logo-img{width:196px;max-width:72%;height:auto;display:block}
.lx-auth-modal .lx-auth-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line);margin-bottom:26px;position:relative}
.lx-auth-modal .lx-auth-tabs:after{content:"";position:absolute;left:6%;bottom:-1px;width:38%;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--brand-deep),var(--brand-red),#ff4050);transition:left .32s cubic-bezier(.22,.8,.3,1)}
.lx-auth-modal .lx-auth-tabs.register-active:after{left:56%}
.lx-auth-modal .lx-auth-tab{border:0;background:transparent;height:48px;font-weight:800;font-size:16px;color:#4d464f;position:relative;transition:color .22s ease}
.lx-auth-modal .lx-auth-tab.active{color:var(--brand-deep)}
.lx-auth-modal .lx-auth-form-panel{display:none}
.lx-auth-modal .lx-auth-form-panel.active{display:block}
.lx-auth-modal .lx-auth-field{height:54px;border:1px solid #ded8e1;border-radius:12px;background:#fff;display:flex;align-items:center;padding:0 14px;gap:12px;margin-bottom:14px;transition:.2s ease}
.lx-auth-modal .lx-auth-field:focus-within{border-color:#caa9bf;box-shadow:0 0 0 4px rgba(184,37,46,.06)}
.lx-auth-modal .lx-auth-field.invalid{border-color:#e5484d;box-shadow:0 0 0 4px rgba(229,72,77,.08)}
.lx-auth-modal .lx-auth-field svg{width:20px;height:20px;stroke:#8a8390;flex:0 0 auto}
.lx-auth-modal .lx-auth-field input{border:0;outline:0;width:100%;font-size:14px;color:#2d2730;background:transparent}
.lx-auth-modal .lx-auth-field input::placeholder{color:#a39ba7}
.lx-auth-modal .lx-auth-field button{border:0;background:transparent;color:var(--brand-red);font-size:13px;font-weight:700;white-space:nowrap}
.lx-auth-modal .lx-auth-eye{width:34px;height:34px;border-radius:8px!important;display:grid;place-items:center;padding:0!important;color:#8d8491!important}
.lx-auth-modal .lx-auth-eye:hover{background:#f7f3f7!important}
.lx-auth-modal .lx-auth-primary{width:100%;height:56px;border:0;border-radius:12px;color:white;font-size:16px;font-weight:800;letter-spacing:.2px;background:linear-gradient(90deg,var(--brand-deep) 0%,#7c194b 34%,var(--brand-red) 72%,#ed2733 100%);box-shadow:0 10px 22px rgba(184,37,46,.18);transition:.18s ease}
.lx-auth-modal .lx-auth-primary:hover{transform:translateY(-1px);box-shadow:0 13px 26px rgba(184,37,46,.24)}
.lx-auth-modal .lx-auth-primary:disabled{cursor:default;transform:none;opacity:.72}
.lx-auth-modal .lx-auth-code-row{display:grid;grid-template-columns:1fr 120px;gap:10px;margin-bottom:14px}
.lx-auth-modal .lx-auth-code-row .lx-auth-field{margin:0}
.lx-auth-modal .lx-auth-code-btn{border:1px solid #e1d8df;border-radius:12px;background:#faf7fa;color:var(--brand-deep);font-size:13px;font-weight:800}
.lx-auth-modal .lx-auth-code-btn:hover{background:#f6f0f5}
.lx-auth-modal .lx-auth-agree{display:flex;align-items:flex-start;gap:8px;cursor:pointer;font-size:12px;color:#857d89;margin:2px 0 22px}
.lx-auth-modal .lx-auth-agree input{accent-color:var(--brand-deep);width:16px;height:16px;margin-top:1px}
.lx-auth-modal .lx-auth-agree.invalid{color:#c52b32}
.lx-auth-modal .lx-auth-error-message{display:flex;align-items:center;gap:6px;margin:-8px 2px 14px;color:#c52b32;font-size:12px;line-height:1.5;white-space:nowrap;animation:lx-auth-error-in .18s ease}
.lx-auth-modal .lx-auth-error-message:before{content:"!";display:grid;place-items:center;width:16px;height:16px;border-radius:50%;background:#c52b32;color:#fff;font-size:11px;font-weight:800;flex:0 0 auto}
@keyframes lx-auth-error-in{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}
.lx-auth-modal .lx-auth-form-panel.success>*:not(.lx-auth-success-message){display:none}
.lx-auth-modal.success-view>*:not(.lx-p0-modal-body),.lx-auth-modal.success-view .lx-p0-modal-body>*:not(.lx-auth-form-panel.success){display:none}
.lx-auth-modal.success-view{width:min(360px, calc(100vw - 32px));padding:34px 42px 38px}
.lx-auth-modal .lx-auth-success-message{text-align:center;padding:34px 0 28px;animation:lx-auth-success-in .32s cubic-bezier(.2,.8,.2,1)}
.lx-auth-modal .lx-auth-success-icon{width:54px;height:54px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--brand-deep),var(--brand-red));color:#fff;box-shadow:0 10px 24px rgba(184,37,46,.2)}
.lx-auth-modal .lx-auth-success-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.lx-auth-modal .lx-auth-success-title{font-size:20px;font-weight:800;color:var(--brand-deep)}
.lx-auth-modal .lx-auth-success-subtitle{margin-top:7px;color:#8b828e;font-size:13px}
@keyframes lx-auth-success-in{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:760px){.lx-p0-modal-mask.lx-auth-modal-mask .lx-p0-modal.lx-auth-modal{padding:28px 24px 40px;border-radius:20px}.lx-auth-modal .lx-auth-logo-img{width:172px}}
.lx-auth-limit-notice{
  display:grid;
  gap:4px;
  margin:0 0 18px;
  padding:12px 14px;
  border:1px solid #e2ddeb;
  border-radius:10px;
  background:#f3f0f7;
  color:#4d144a;
  text-align:left;
}
.lx-auth-limit-notice strong{font-size:14px;line-height:1.5;font-weight:700}
.lx-auth-limit-notice span{color:#625b68;font-size:12px;line-height:1.5}
