.auth-page[data-v-ffca6a4a]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:40px 20px;background-color:#f4f5f7;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;color:#303133;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.auth-card[data-v-ffca6a4a]{width:100%;max-width:520px;background:#fff;border-radius:12px;padding:48px 40px;-webkit-box-shadow:0 4px 16px rgba(0,0,0,.04),0 1px 4px rgba(0,0,0,.02);box-shadow:0 4px 16px rgba(0,0,0,.04),0 1px 4px rgba(0,0,0,.02)}@media (max-width:480px){.auth-page[data-v-ffca6a4a]{padding:16px;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.auth-card[data-v-ffca6a4a]{padding:32px 24px;-webkit-box-shadow:none;box-shadow:none;border:1px solid #dcdfe6}}.card-header[data-v-ffca6a4a]{margin-bottom:32px;text-align:center}.card-title[data-v-ffca6a4a]{font-size:24px;font-weight:600;margin:0 0 10px;color:#303133}.card-subtitle[data-v-ffca6a4a]{font-size:14px;color:#606266;margin:0}.form[data-v-ffca6a4a]{display:block}.field[data-v-ffca6a4a]{margin-bottom:20px}.field-label[data-v-ffca6a4a]{display:block;font-size:14px;font-weight:500;color:#303133;margin-bottom:8px}.field-label-row[data-v-ffca6a4a]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:8px}.field-label-row .field-label[data-v-ffca6a4a]{margin-bottom:0}.input[data-v-ffca6a4a]{width:100%;height:44px;padding:0 14px;font-size:14px;color:#303133;background:#fff;border:1px solid #dcdfe6;border-radius:8px;-webkit-transition:all .2s ease;transition:all .2s ease;-webkit-box-sizing:border-box;box-sizing:border-box;font-family:inherit}.input[data-v-ffca6a4a]::-webkit-input-placeholder{color:#c0c4cc}.input[data-v-ffca6a4a]::-moz-placeholder{color:#c0c4cc}.input[data-v-ffca6a4a]:-ms-input-placeholder{color:#c0c4cc}.input[data-v-ffca6a4a]::-ms-input-placeholder{color:#c0c4cc}.input[data-v-ffca6a4a]::placeholder{color:#c0c4cc}.input[data-v-ffca6a4a]:hover:not(:disabled):not(.has-error){border-color:#69a6f8}.input[data-v-ffca6a4a]:focus{outline:none;border-color:#409eff;-webkit-box-shadow:0 0 0 2px rgba(64,158,255,.2);box-shadow:0 0 0 2px rgba(64,158,255,.2)}.input.has-error[data-v-ffca6a4a]{border-color:#f56c6c}.input.has-error[data-v-ffca6a4a]:focus{-webkit-box-shadow:0 0 0 2px rgba(245,108,108,.2);box-shadow:0 0 0 2px rgba(245,108,108,.2)}.input[data-v-ffca6a4a]:disabled{background:#f4f5f7;color:#c0c4cc;cursor:not-allowed}.input-wrap[data-v-ffca6a4a]{position:relative}.input-wrap .input[data-v-ffca6a4a]{padding-right:40px}.input-affix[data-v-ffca6a4a]{position:absolute;right:6px;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:32px;height:32px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;background:transparent;border:none;color:#c0c4cc;cursor:pointer;border-radius:4px;font-size:16px;-webkit-transition:all .2s;transition:all .2s}.input-affix[data-v-ffca6a4a]:hover{color:#606266}.link-btn[data-v-ffca6a4a]{background:transparent;border:none;color:#409eff;font-size:14px;font-weight:500;cursor:pointer;padding:0;font-family:inherit;-webkit-transition:color .2s ease;transition:color .2s ease}.link-btn[data-v-ffca6a4a]:hover:not(:disabled){color:#69a6f8}.link-btn[data-v-ffca6a4a]:disabled{color:#c0c4cc;cursor:not-allowed}.code-row[data-v-ffca6a4a]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:12px}.code-cell[data-v-ffca6a4a]{min-width:0;-webkit-box-flex:1;-ms-flex:1;flex:1;height:52px;padding:0;text-align:center;font-size:22px;font-weight:600;color:#303133;background:#fff;border:1px solid #dcdfe6;border-radius:8px;-webkit-transition:all .2s ease;transition:all .2s ease;-webkit-box-sizing:border-box;box-sizing:border-box;font-family:inherit}.code-cell[data-v-ffca6a4a]:hover:not(.has-error){border-color:#69a6f8}.code-cell[data-v-ffca6a4a]:focus{outline:none;border-color:#409eff;-webkit-box-shadow:0 0 0 2px rgba(64,158,255,.2);box-shadow:0 0 0 2px rgba(64,158,255,.2)}.code-cell.has-error[data-v-ffca6a4a]{border-color:#f56c6c}.strength-meter[data-v-ffca6a4a]{display:-webkit-box;display:-ms-flexbox;display:flex;gap:6px;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-top:10px}.strength-bar[data-v-ffca6a4a]{-webkit-box-flex:1;-ms-flex:1;flex:1;height:4px;border-radius:2px;background:#dcdfe6;-webkit-transition:background .3s ease;transition:background .3s ease}.strength-bar.active-weak[data-v-ffca6a4a]{background:#f56c6c}.strength-bar.active-fair[data-v-ffca6a4a]{background:#e6a23c}.strength-bar.active-good[data-v-ffca6a4a]{background:#409eff}.strength-bar.active-strong[data-v-ffca6a4a]{background:#67c23a}.strength-label[data-v-ffca6a4a]{font-size:12px;font-weight:500;margin-left:8px;min-width:32px;text-align:right}.strength-label.strength-label-weak[data-v-ffca6a4a]{color:#f56c6c}.strength-label.strength-label-fair[data-v-ffca6a4a]{color:#e6a23c}.strength-label.strength-label-good[data-v-ffca6a4a]{color:#409eff}.strength-label.strength-label-strong[data-v-ffca6a4a]{color:#67c23a}.field-hint[data-v-ffca6a4a]{font-size:13px;color:#606266;margin:8px 0 0;line-height:1.5}.field-hint strong[data-v-ffca6a4a]{color:#303133;font-weight:600}.field-error[data-v-ffca6a4a]{font-size:13px;color:#f56c6c;margin:6px 0 0;line-height:1.4;-webkit-animation:shake-ffca6a4a .4s ease-in-out;animation:shake-ffca6a4a .4s ease-in-out}@-webkit-keyframes shake-ffca6a4a{0%,to{-webkit-transform:translateX(0);transform:translateX(0)}25%{-webkit-transform:translateX(-4px);transform:translateX(-4px)}75%{-webkit-transform:translateX(4px);transform:translateX(4px)}}@keyframes shake-ffca6a4a{0%,to{-webkit-transform:translateX(0);transform:translateX(0)}25%{-webkit-transform:translateX(-4px);transform:translateX(-4px)}75%{-webkit-transform:translateX(4px);transform:translateX(4px)}}.btn-primary[data-v-ffca6a4a]{width:100%;height:48px;font-size:16px;font-weight:600;color:#fff;background:linear-gradient(135deg,#409eff,#69a6f8);border:none;border-radius:8px;cursor:pointer;-webkit-box-shadow:0 4px 12px rgba(64,158,255,.3);box-shadow:0 4px 12px rgba(64,158,255,.3);-webkit-transition:all .2s ease;transition:all .2s ease;font-family:inherit;margin-top:12px}.btn-primary[data-v-ffca6a4a]:hover:not(:disabled){-webkit-box-shadow:0 6px 16px rgba(64,158,255,.4);box-shadow:0 6px 16px rgba(64,158,255,.4);-webkit-transform:translateY(-1px);transform:translateY(-1px)}.btn-primary[data-v-ffca6a4a]:active:not(:disabled){-webkit-transform:translateY(1px);transform:translateY(1px);-webkit-box-shadow:0 2px 8px rgba(64,158,255,.3);box-shadow:0 2px 8px rgba(64,158,255,.3)}.btn-primary[data-v-ffca6a4a]:disabled{background:#a0cfff;-webkit-box-shadow:none;box-shadow:none;cursor:not-allowed}.signin-link[data-v-ffca6a4a]{text-align:center;margin:24px 0 0;font-size:14px;color:#606266}.signin-link a[data-v-ffca6a4a]{color:#409eff;font-weight:500;text-decoration:none}.signin-link a[data-v-ffca6a4a]:hover{text-decoration:underline;color:#69a6f8}