*{box-sizing:border-box;margin:0;padding:0}body,html{min-height:100%;font-family:PingFang SC,Microsoft YaHei,Noto Sans SC,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}.login-page{min-height:100dvh;background:#f4f7fa;color:#162c42}.login-brand,.login-page{display:flex;overflow:hidden}.login-brand{position:relative;flex:0 0 58%;min-width:0;flex-direction:column;padding:clamp(28px,4vw,58px) clamp(32px,5vw,80px) 28px;color:#fff;background:linear-gradient(135deg,#123b63,#0d3153 58%,#092a49)}.login-brand:after{content:"";right:-16%;bottom:-28%;width:58%;aspect-ratio:1;border:1px solid rgba(127,183,226,.16);border-radius:50%}.login-brand-grid,.login-brand:after{position:absolute;pointer-events:none}.login-brand-grid{inset:0;opacity:.42;background-image:linear-gradient(hsla(0,0%,100%,.045) 1px,transparent 0),linear-gradient(90deg,hsla(0,0%,100%,.045) 1px,transparent 0);background-size:44px 44px;-webkit-mask-image:linear-gradient(135deg,rgba(0,0,0,.85),transparent 76%);mask-image:linear-gradient(135deg,rgba(0,0,0,.85),transparent 76%)}.login-brand-lines{position:absolute;right:6%;top:18%;width:42%;height:45%;opacity:.36;pointer-events:none}.login-brand-lines span,.login-brand-lines:after,.login-brand-lines:before{content:"";position:absolute;display:block;border:1px solid rgba(155,205,243,.2);border-radius:10px;transform:rotate(-13deg)}.login-brand-lines:before{inset:12% 14% 20% 10%}.login-brand-lines:after{inset:32% 1% 4% 38%}.login-brand-lines span:first-child{width:8px;height:8px;left:8%;top:22%;border-radius:50%;background:#7fb7e2}.login-brand-lines span:nth-child(2){width:8px;height:8px;right:8%;top:38%;border-radius:50%;background:#7fb7e2}.login-brand-lines span:nth-child(3){width:8px;height:8px;left:32%;bottom:8%;border-radius:50%;background:#7fb7e2}.login-brand-content,.login-brand-footer,.login-brand-header{position:relative;z-index:1}.login-brand-header{display:flex;align-items:center;gap:14px}.login-brand-logo,.login-card-logo,.login-mobile-logo{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;font-weight:700;letter-spacing:.04em}.login-brand-logo{width:48px;height:48px;border:1px solid hsla(0,0%,100%,.34);border-radius:12px;background:hsla(0,0%,100%,.1);font-size:17px}.login-brand-name{color:#fff;font-size:19px;font-weight:650;line-height:1.35}.login-brand-sub{margin-top:3px;color:hsla(0,0%,100%,.62);font-size:12px}.login-brand-content{display:flex;flex:1 1;flex-direction:column;justify-content:center;width:min(100%,760px);padding:7vh 0 4vh}.login-brand-kicker,.login-slide-kicker{color:#86bce5;font-size:12px;font-weight:650;letter-spacing:.16em}.login-brand-kicker{margin-bottom:20px}.login-slide-count{position:absolute;top:7vh;right:0;color:hsla(0,0%,100%,.45);font-family:Segoe UI,sans-serif;font-size:12px;letter-spacing:.12em}.login-slide-copy{max-width:650px}.login-slide-kicker{margin-bottom:16px}.login-slide-copy h1{max-width:680px;color:#fff;font-size:clamp(32px,3.3vw,48px);font-weight:700;line-height:1.22;letter-spacing:-.03em;text-wrap:balance}.login-slide-copy p{max-width:560px;margin-top:22px;color:hsla(0,0%,100%,.74);font-size:16px;line-height:1.85}.login-slide-visual{position:relative;display:flex;align-items:center;gap:clamp(10px,2vw,24px);max-width:650px;margin-top:clamp(36px,6vh,72px)}.login-slide-visual-line{position:absolute;left:38px;right:38px;top:21px;height:1px;background:rgba(143,193,231,.36)}.login-slide-node{position:relative;z-index:1;display:flex;align-items:center;gap:10px;min-width:0;color:hsla(0,0%,100%,.82);font-size:13px}.login-slide-node-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid rgba(155,205,243,.3);border-radius:50%;background:#15466f;color:#9bcdf3;font-size:16px}.login-carousel-controls{display:flex;align-items:center;gap:8px;margin-top:clamp(32px,5vh,54px)}.login-carousel-button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid hsla(0,0%,100%,.28);border-radius:8px;background:hsla(0,0%,100%,.06);color:hsla(0,0%,100%,.84);cursor:pointer;transition:background-color .16s ease,border-color .16s ease,color .16s ease}.login-carousel-button:focus-visible,.login-carousel-button:hover{border-color:hsla(0,0%,100%,.7);background:hsla(0,0%,100%,.16);color:#fff}.login-carousel-button:focus-visible,.login-carousel-dots button:focus-visible,.login-mode-switch button:focus-visible{outline:3px solid rgba(143,193,231,.55);outline-offset:3px}.login-carousel-dots{display:flex;gap:7px;margin-left:12px}.login-carousel-dots button{width:22px;height:4px;border:0;border-radius:8px;background:hsla(0,0%,100%,.28);cursor:pointer;transition:width .16s ease,background-color .16s ease}.login-carousel-dots button.is-active{width:36px;background:#9bcdf3}.login-brand-footer{color:hsla(0,0%,100%,.58);font-size:12px}.login-form-side{position:relative;flex:1 1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px clamp(24px,4vw,64px) 22px;background:#f4f7fa}.login-mobile-brand{display:none}.login-card{width:min(100%,440px);padding:36px 40px 28px;border:1px solid #e0e7ef;border-radius:16px;background:#fff;box-shadow:0 14px 38px rgba(24,55,84,.1)}.login-card-header{margin-bottom:22px;text-align:center}.login-card-brand{display:inline-flex;align-items:center;gap:8px;margin-bottom:22px;color:#123b63;font-size:14px;font-weight:650}.login-card-logo{width:28px;height:28px;border-radius:7px;background:#123b63;color:#fff;font-size:11px}.login-card-title{color:#162c42;font-size:28px;font-weight:700;line-height:1.3;text-wrap:balance}.login-card-subtitle{margin-top:8px;color:#718096;font-size:14px}.login-mode-switch{display:grid;grid-template-columns:1fr 1fr;grid-gap:4px;gap:4px;margin-bottom:22px;padding:4px;border-radius:9px;background:#f0f3f7}.login-mode-switch button{min-height:36px;border:0;border-radius:7px;background:transparent;color:#718096;cursor:pointer;font-size:14px;transition:background-color .16s ease,color .16s ease,box-shadow .16s ease}.login-mode-switch button.is-active{background:#fff;box-shadow:0 2px 6px rgba(24,55,84,.1);color:#123b63;font-weight:650}.login-card .ant-form-item,.login-error-alert,.login-success-alert{margin-bottom:18px}.login-card .ant-form-item-label{padding-bottom:7px}.login-card .ant-form-item-label>label{color:#30465c;font-size:14px;font-weight:600}.login-card .ant-btn,.login-card .ant-input,.login-card .ant-input-affix-wrapper{border-radius:8px}.login-card .ant-input-affix-wrapper{min-height:48px}.login-card .ant-input-affix-wrapper:hover{border-color:#2468a5}.login-card .ant-input-affix-wrapper-focused,.login-card .ant-input:focus{border-color:#2468a5;box-shadow:0 0 0 3px rgba(36,104,165,.14)}.login-card .ant-btn-primary{background:#2468a5;box-shadow:none}.login-card .ant-btn-primary:focus-visible,.login-card .ant-btn-primary:hover{background:#1b568c}.login-input-icon{color:#93a2b3}.login-form-extra{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-2px 0 20px}.login-help-text{color:#8a98a8;font-size:12px;text-align:right}.login-submit-item{margin-bottom:0!important}.login-card-note{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:20px;line-height:1.5}.login-card-note,.login-side-footer{color:#8a98a8;font-size:12px;text-align:center}.login-side-footer{flex:0 0 auto;margin-top:18px}.planning-tag{opacity:.65}@media (max-width:1100px){.login-brand{flex-basis:54%;padding-inline:38px}.login-form-side{padding-inline:28px}.login-card{padding-inline:30px}}@media (max-width:900px){.login-page{min-height:100dvh;overflow-y:auto}.login-brand{display:none}.login-form-side{min-height:100dvh;justify-content:flex-start;padding:0 24px 20px}.login-mobile-brand{display:flex;align-items:center;gap:9px;padding:26px 0 18px;color:#123b63;font-size:15px;font-weight:650}.login-mobile-logo{width:30px;height:30px;border-radius:7px;background:#123b63;color:#fff;font-size:12px}.login-card{margin:auto;padding:30px 28px 24px}.login-side-footer{margin-top:18px}}@media (max-width:520px){.login-form-side{padding-inline:16px}.login-mobile-brand{padding-top:20px}.login-card{border-radius:14px;padding-inline:22px}.login-card-title{font-size:26px}.login-help-text{max-width:160px}}@media (prefers-reduced-motion:reduce){.login-carousel-button,.login-carousel-dots button,.login-mode-switch button{transition:none}}