.login-page{--login-bg:#f4faf6;--login-text:#14261b;--login-muted:#6b8575;--login-line:rgba(15,80,40,.12);--login-accent:#16a34a;--login-accent-deep:#15803d;--login-soft:rgba(22,163,74,.12);min-height:100vh;display:grid;place-items:center;padding:32px 20px;color:var(--login-text);background:radial-gradient(920px 520px at 12% -8%,rgba(22,163,74,.18),transparent 56%),radial-gradient(760px 480px at 100% 0,hsla(0,0%,100%,.95),transparent 50%),radial-gradient(640px 420px at 70% 110%,rgba(21,128,61,.08),transparent 55%),var(--login-bg)}.login-stage{width:min(420px,100%);animation:login-rise .55s cubic-bezier(.32,.72,0,1) both}@keyframes login-rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.login-brand{margin-bottom:28px}.login-mark{display:block;width:36px;height:36px;margin-bottom:18px;border-radius:10px;object-fit:cover;box-shadow:0 10px 24px rgba(22,163,74,.28);background:transparent}.login-name{margin:0;font-size:clamp(2rem,4vw,2.4rem);line-height:1.05;letter-spacing:-.04em;font-weight:650;color:var(--login-text)}.login-tag{margin:10px 0 0;font-size:14px;color:var(--login-muted);letter-spacing:-.01em}.login-form .ant-form-item-label>label{color:var(--login-muted)!important;font-weight:500}.login-form .ant-input-affix-wrapper,.login-form .ant-input-affix-wrapper-lg,.login-form .ant-input-lg,.login-form .login-code-input{border-radius:10px!important;border-color:var(--login-line)!important;background:hsla(0,0%,100%,.92)!important;box-shadow:none}.login-form .ant-input-lg,.login-form .login-code-input{height:48px;padding-inline:14px;font-size:15px}.login-form .ant-input-affix-wrapper{padding-block:10px}.login-form .ant-input-affix-wrapper-focused,.login-form .ant-input-affix-wrapper:hover,.login-form .ant-input-lg:focus,.login-form .ant-input-lg:hover,.login-form .login-code-input:focus,.login-form .login-code-input:hover{border-color:var(--login-accent)!important;box-shadow:0 0 0 3px var(--login-soft)!important}.login-code-row{display:flex;gap:10px;align-items:stretch;width:100%}.login-code-row .login-code-input{flex:1 1;min-width:0}.login-sms-btn{flex:0 0 auto;min-width:128px!important;height:48px!important;padding:0 18px!important;border-radius:10px!important;font-size:14px!important;font-weight:600!important;letter-spacing:-.01em;color:var(--login-accent-deep)!important;background:var(--login-soft)!important;border:1px solid rgba(22,163,74,.32)!important;box-shadow:none!important;transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease}.login-sms-btn:hover:not(:disabled){color:#fff!important;background:var(--login-accent)!important;border-color:var(--login-accent)!important;transform:translateY(-1px)}.login-sms-btn:disabled{color:var(--login-muted)!important;background:rgba(15,80,40,.06)!important;border-color:var(--login-line)!important;opacity:1!important;cursor:not-allowed}.login-sms-btn.ant-btn-loading{color:var(--login-accent-deep)!important}.login-input-icon{color:var(--login-muted)}.login-submit{margin-top:8px;height:48px!important;border-radius:10px!important;font-weight:600;letter-spacing:-.01em;background:var(--login-accent)!important;border-color:var(--login-accent)!important;box-shadow:0 8px 20px rgba(22,163,74,.28);transition:transform .2s ease,background .2s ease}.login-submit:hover{background:var(--login-accent-deep)!important;border-color:var(--login-accent-deep)!important;transform:translateY(-1px)}.login-hint{margin:18px 0 0;font-size:12px;color:var(--login-muted);opacity:.85}