:root{--tensia-green-900: #0A2E26;--tensia-green-800: #123B36;--tensia-green-700: #005F39;--tensia-green-600: #007A5E;--tensia-green-500: #00A085;--tensia-mint-300: #7FE0C8;--tensia-mint-100: #8FE8D2;--tensia-bg-light: #F5FAF8;--tensia-text: #123B36;--tensia-radius: 12px;--tensia-font: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif}:root{color-scheme:light}*{box-sizing:border-box}html,body,#app{height:100%;margin:0}body{font-family:var(--tensia-font)}.tsx-top{position:fixed;top:24px;left:28px;z-index:20;display:flex;align-items:center;gap:9px;color:#005f39;font-weight:700;letter-spacing:2px;font-size:15px;text-decoration:none;text-shadow:none;pointer-events:auto}.tsx-top img{width:46px;height:46px;flex:none}.tsx-top .nm{display:flex;flex-direction:column;gap:3px;line-height:1}.tsx-top .nm b{font-size:15px;font-weight:750;letter-spacing:2px}.tsx-top .nm i{font-style:normal;font-size:8.5px;font-weight:700;letter-spacing:3.4px;opacity:.68}.login-panel-dark .tsx-top{color:#eaf6f3;text-shadow:none}.login-panel-dark .tsx-top img{content:url(https://tensia-storage.oss-cn-chengdu.aliyuncs.com/assets/casdoor-login/mark-white.svg)}.tsx-copy{position:absolute;left:clamp(24px,4vw,56px);top:18%;max-width:44%;z-index:2;-webkit-user-select:none;user-select:none}.tsx-copy h2{margin:0;font-size:clamp(22px,2.6vw,27px);font-weight:800;line-height:1.5;letter-spacing:.5px;color:#005f39;text-shadow:none}.tsx-copy h2 b{color:#007a5e}.tsx-copy p{margin:12px 0 0;font-size:13px;letter-spacing:4px;color:#005f39;text-shadow:none}.login-panel-dark .tsx-copy h2{color:#eaf6f3;text-shadow:none}.login-panel-dark .tsx-copy h2 b{color:#7fe0c8}.login-panel-dark .tsx-copy p{color:#b8d6ce;text-shadow:none}.tsx-tools{position:absolute;right:28px;top:28px;z-index:20;display:flex;gap:0;padding:3px;border-radius:999px;border:1px solid rgba(18,59,54,.1);background:#ffffff6b}.tsx-tools>button{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:0;border-radius:50%;color:#123b36;background:transparent;cursor:pointer;transition:color .18s linear,background .18s linear,transform .12s linear}.tsx-tools>button:hover{color:#00a085;background:#ffffff59}.tsx-tools>button:active{transform:scale(.86)}.tsx-tools>button+button{border-left:1px solid rgba(18,59,54,.1)}.login-panel-dark .tsx-tools{background:#ffffff12;border-color:#7fe0c82e}.login-panel-dark .tsx-tools>button{color:#e9f4f1d9}.login-panel-dark .tsx-tools>button:hover{color:#8fe8d2}.login-panel-dark .tsx-tools>button+button{border-left-color:#7fe0c829}.tsx-org-menu,.tsx-theme-menu{position:absolute;top:calc(100% + 8px);right:0;width:168px;padding:6px;border:1px solid rgba(18,59,54,.12);border-radius:14px;background:#fafcfbf5;box-shadow:0 18px 48px -24px #0a2d2880;backdrop-filter:blur(14px) saturate(1.08);-webkit-backdrop-filter:blur(14px) saturate(1.08)}.tsx-org-option,.tsx-theme-option{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:38px;padding:0 11px;border:0;border-radius:9px;background:transparent;color:#284c46;font:inherit;font-size:13px;text-decoration:none;cursor:pointer}.tsx-org-option:hover,.tsx-theme-option:hover{background:#00a08514;color:#007a5e}.tsx-org-option.is-selected,.tsx-theme-option.is-selected{color:#007a5e;font-weight:650}.login-panel-dark .tsx-org-menu,.login-panel-dark .tsx-theme-menu{border-color:#7fe0c82e;background:#0d2325f5;box-shadow:0 20px 54px -24px #000000c7}.login-panel-dark .tsx-org-option,.login-panel-dark .tsx-theme-option{color:#e9f4f1db}.login-panel-dark .tsx-org-option:hover,.login-panel-dark .tsx-org-option.is-selected,.login-panel-dark .tsx-theme-option:hover,.login-panel-dark .tsx-theme-option.is-selected{background:#7fe0c817;color:#8fe8d2}.tsx-legal{position:absolute;right:4%;top:calc(50% + clamp(215px,25vh,250px) + 14px);width:clamp(360px,31.5vw,454px);z-index:2;display:flex;align-items:center;justify-content:center;gap:8px;font-size:10.5px;line-height:1.4;letter-spacing:.01em;color:#123b3694;white-space:nowrap;text-shadow:none}.tsx-legal a{display:inline-flex;align-items:center;gap:3px;min-height:16px;color:inherit;text-decoration:none}.tsx-legal a:hover{text-decoration:underline}.tsx-legal svg{width:11px;height:11px;flex:none}.login-panel-dark .tsx-legal{color:#e9f4f19e;text-shadow:none}.tsx-theme-snapshot{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;z-index:9999!important;width:100vw!important;height:100vh!important;margin:0!important;overflow:hidden!important;pointer-events:none!important;opacity:1;transition:opacity .36s linear!important;contain:paint}.tsx-theme-snapshot.tsx-theme-snapshot-out{opacity:0}.tsx-continue{width:100%;max-width:360px;display:flex;flex-direction:column;align-items:stretch;gap:10px}.tsx-continue-head{display:flex;flex-direction:column;align-items:center;gap:2px;margin-bottom:4px}.tsx-continue-title{font-size:16px;font-weight:700;letter-spacing:.5px;color:#123b36}.tsx-continue-sub{font-size:12px;color:#5f7a75}.tsx-continue-card{display:flex;align-items:center;gap:12px;width:100%;min-height:64px;padding:10px 16px;border:1.5px solid rgba(18,59,54,.12);border-radius:16px;background:#ffffffc7;box-shadow:0 14px 34px -24px #0a3c3280;color:#123b36;font:inherit;text-align:left;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .12s}.tsx-continue-card:hover{border-color:#00a08580;box-shadow:0 16px 38px -24px #0a3c328c;transform:translateY(-1px)}.tsx-continue-card:active{transform:translateY(1px) scale(.985)}.tsx-continue-card:disabled{opacity:.62;cursor:not-allowed}.tsx-continue-avatar{width:40px;height:40px;min-width:40px;border-radius:50%;background:linear-gradient(150deg,#00a085,#005f39);box-shadow:0 6px 14px -6px #005f398c;color:#fff;display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:700;overflow:hidden}.tsx-continue-avatar img{width:100%;height:100%;object-fit:cover}.tsx-continue-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.tsx-continue-meta b{font-size:14.5px;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tsx-continue-meta i{font-style:normal;font-size:11.5px;color:#5f7a75;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tsx-continue-arrow{flex:none;color:#9db5b0}.tsx-continue-alt{align-self:center;border:0;background:transparent;padding:6px 10px;color:#007a5e;font:inherit;font-size:12.5px;font-weight:600;cursor:pointer}.tsx-continue-alt:hover{text-decoration:underline}.login-panel-dark .tsx-continue-title{color:#e9f4f1}.login-panel-dark .tsx-continue-sub,.login-panel-dark .tsx-continue-meta i{color:#e9f4f1ad}.login-panel-dark .tsx-continue-card{background:#fff1;border-color:#7fe0c83d;color:#e9f4f1}.login-panel-dark .tsx-continue-card:hover{border-color:#7fe0c880}.login-panel-dark .tsx-continue-alt{color:#8fe8d2}@media (max-width: 768px){.tsx-copy{display:none}.tsx-top,.tsx-top .nm b{font-size:13px}.tsx-top .nm i{font-size:7.5px;letter-spacing:2.8px}.tsx-tools{top:18px;right:20px}.tsx-legal{left:0;right:0;top:auto;bottom:0;width:100%;flex-direction:row;gap:6px;align-items:center}}@media (prefers-reduced-motion: reduce){.tsx-tools *,.tsx-continue-card,.tsx-continue-card *{animation:none!important;transition-duration:.01ms!important}}.loginBackground{background:#f6f0e3!important;color-scheme:light!important}.loginBackgroundDark{background:#0b2622!important;color-scheme:dark!important}.ant-layout{background:transparent!important}.login-content{width:100%!important;flex:1 1 auto!important;margin:0 auto!important}.login-panel,.login-panel-dark{position:relative;display:flex;align-items:center;justify-content:flex-end;width:100%;min-height:100vh;margin:0!important}.side-image{position:absolute!important;top:0;right:0;bottom:0;left:0;display:block!important;width:100%!important;max-width:none!important;min-height:0!important;height:auto!important;flex:none!important;z-index:1;pointer-events:none;background:url(https://tensia-storage.oss-cn-chengdu.aliyuncs.com/assets/casdoor-login/login-pc-light.svg) no-repeat 10% 50% / cover!important}.login-panel-dark .side-image{background:url(https://tensia-storage.oss-cn-chengdu.aliyuncs.com/assets/casdoor-login/login-pc-dark.svg) no-repeat 10% 50% / cover!important}.login-form{position:relative;z-index:2;box-sizing:border-box;width:clamp(360px,31.5vw,454px);min-width:0;height:clamp(430px,50vh,500px);margin:0 4% 0 0;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:26px;padding:28px 36px 24px;background:#fafcfb29;backdrop-filter:blur(10px) saturate(1.15);-webkit-backdrop-filter:blur(10px) saturate(1.15);border:1px solid rgba(255,255,255,.3);box-shadow:0 28px 70px -42px #0a3c3261}.login-panel-dark .login-form{background:#08161a38;border-color:#7fe0c829;box-shadow:0 28px 70px -42px #000000b8}.login-form>div:first-child{width:100%;max-width:360px}.login-logo-box{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:13px;margin-bottom:2px}.login-logo-box img{width:72px;height:72px;object-fit:contain;display:block;margin:0}.login-logo-box:after{content:"TENSIA";font-size:13px;font-weight:700;letter-spacing:5px;color:#005f39;text-align:center}.login-panel-dark .login-logo-box img{content:url(https://tensia-storage.oss-cn-chengdu.aliyuncs.com/assets/casdoor-login/mark-white.svg)}.login-panel-dark .login-logo-box:after{color:#e9f4f1}.login-form .ant-tabs-nav{width:100%;margin:24px 0 18px;background:#f1f5f3;padding:4px;border-radius:12px}.login-form .login-username,.login-form .login-password{margin-bottom:11px!important}.login-form .login-forget-password{width:100%!important;margin-bottom:18px!important}.login-form .login-button-box{margin-bottom:14px!important}.login-form .login-signup-link{margin-bottom:0!important}.login-form form>div:last-child:has(.ant-form-item-control-input-content:empty){display:none!important}.login-form .ant-tabs-nav:before{border-bottom:0!important}.login-form .ant-tabs-ink-bar{display:none!important}.login-form .ant-tabs-nav-list{display:flex;width:100%;gap:4px}.login-form .ant-tabs-tab{flex:1;justify-content:center;margin:0!important;padding:8px 0;border-radius:9px;font-size:13.5px;letter-spacing:.5px;color:#5f7a75;transition:color .18s,background .18s,box-shadow .18s}.login-form .ant-tabs-tab:hover{color:#005f39}.login-form .ant-tabs-tab.ant-tabs-tab-active{background:#fff;color:#005f39;font-weight:600;box-shadow:0 2px 8px -4px #123b3647}.login-panel-dark .login-form .ant-tabs-nav{background:#ffffff14}.login-panel-dark .login-form .ant-tabs-tab{color:#e9f4f1b3}.login-panel-dark .login-form .ant-tabs-tab:hover{color:#a8f0de}.login-panel-dark .login-form .ant-tabs-tab.ant-tabs-tab-active{background:#7fe0c829;color:#8fe8d2;box-shadow:inset 0 0 0 1px #7fe0c84d;text-shadow:none}.login-username-input,.login-password-input{border-radius:12px!important;height:46px!important;background:#fff;border-color:#dce7e3;transition:box-shadow .18s,border-color .18s}.login-username-input:focus-within,.login-password-input:focus-within{box-shadow:0 0 0 3px #0a6e6e24;border-color:#0a6e6e!important}.login-panel-dark .login-username-input,.login-panel-dark .login-password-input{background:#ffffff14!important;border-color:#7fe0c852!important}.login-panel-dark .login-username-input:hover,.login-panel-dark .login-password-input:hover{border-color:#7fe0c880!important}.login-panel-dark .login-username-input:focus-within,.login-panel-dark .login-password-input:focus-within{box-shadow:0 0 0 3px #7fe0c824;border-color:#7fe0c89e!important}.login-button{position:relative;border-radius:12px!important;height:46px!important;font-size:0!important;letter-spacing:2px;background:linear-gradient(120deg,#00a085,#005f39)!important;box-shadow:0 12px 24px -12px #005f398c;transition:filter .18s,box-shadow .18s}.login-button:hover{filter:brightness(1.07) saturate(1.04);box-shadow:0 15px 28px -14px #005f399e}.login-panel-dark .login-button{background:linear-gradient(120deg,#00a085,#0a6e6e)!important;box-shadow:0 14px 30px -14px #00a0858c}.login-form .login-username,.login-form .login-forget-password{overflow:hidden;opacity:1;visibility:visible;transform:translateY(0);transition:max-height .38s cubic-bezier(.22,.8,.26,1),margin .38s cubic-bezier(.22,.8,.26,1),opacity .24s ease,transform .38s cubic-bezier(.22,.8,.26,1),visibility 0s linear 0s}.login-form .login-username{max-height:72px}.login-form .login-forget-password{max-height:40px}.login-form.tsx-passkey-active .login-username,.login-form.tsx-passkey-active .login-forget-password,.login-form:has(.ant-tabs-tab:nth-child(3).ant-tabs-tab-active) .login-username,.login-form:has(.ant-tabs-tab:nth-child(3).ant-tabs-tab-active) .login-forget-password{max-height:0;min-height:0!important;margin-top:0!important;margin-bottom:0!important;opacity:0;visibility:hidden;transform:translateY(-5px);pointer-events:none;transition:max-height .38s cubic-bezier(.22,.8,.26,1),margin .38s cubic-bezier(.22,.8,.26,1),opacity .2s ease,transform .38s cubic-bezier(.22,.8,.26,1),visibility 0s linear .38s}.login-button:before,.login-button:after{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:15px;letter-spacing:2px;transition:opacity .28s cubic-bezier(.22,.8,.26,1),transform .34s cubic-bezier(.22,.8,.26,1);pointer-events:none}.login-button:before{content:"登录";opacity:1;transform:translateY(0)}.login-button:after{content:"使用通行密钥";opacity:0;transform:translateY(4px)}.login-form.tsx-passkey-active .login-button:before,.login-form:has(.ant-tabs-tab:nth-child(3).ant-tabs-tab-active) .login-button:before{opacity:0;transform:translateY(-4px)}.login-form.tsx-passkey-active .login-button:after,.login-form:has(.ant-tabs-tab:nth-child(3).ant-tabs-tab-active) .login-button:after{opacity:1;transform:translateY(0)}.login-form a{color:#007a5e;font-weight:600}.login-panel-dark .login-form a{color:#8fe8d2}.login-form .ant-checkbox-checked .ant-checkbox-inner{background:#00a085;border-color:#00a085}@media (max-width: 1100px){.login-form{padding-left:24px;padding-right:24px}.login-form form{max-width:340px}}@media (min-width: 769px) and (max-height: 820px){.side-image{top:0;right:0;bottom:0;left:0}.login-form{height:min(430px,calc(100vh - 48px));padding-top:20px;padding-bottom:18px}.login-form .ant-tabs-nav{margin:16px 0 12px}.login-form .login-forget-password{margin-bottom:14px!important}.login-form .login-button-box{margin-bottom:10px!important}}.login-form .ant-tabs-nav:after,.login-form .ant-tabs-nav-list:before,.login-form .ant-tabs-nav-list:after{border:0!important}.login-panel .login-form,.login-panel .login-form input,.login-panel .login-form button,.login-panel .login-form .ant-input-affix-wrapper,.login-panel .login-form .ant-tabs-nav,.login-panel .login-form .ant-tabs-tab{color-scheme:light!important}.login-panel .login-username-input,.login-panel .login-password-input{background:#fff!important;border-color:#dce7e3!important;color:#123b36!important}.login-panel .login-username-input input,.login-panel .login-password-input input{background:transparent!important;color:#123b36!important;-webkit-text-fill-color:#123B36!important;caret-color:#0a6e6e}.login-panel .login-username-input input::placeholder,.login-panel .login-password-input input::placeholder{color:#6e817d!important;-webkit-text-fill-color:#6E817D!important;opacity:1}.login-panel .login-username-input .anticon,.login-panel .login-password-input .anticon,.login-panel .ant-input-password-icon{color:#526b66!important}.login-panel .login-form .ant-tabs-nav{background:#f1f5f3!important}.login-panel .login-form .ant-tabs-tab,.login-panel .login-form .ant-tabs-tab .ant-tabs-tab-btn{color:#526f69!important;-webkit-text-fill-color:#526F69!important}.login-panel .login-form .ant-tabs-tab.ant-tabs-tab-active,.login-panel .login-form .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{background:#fff!important;color:#005f39!important;-webkit-text-fill-color:#005F39!important}.login-panel .login-forget-password,.login-panel .login-forget-password .ant-checkbox-wrapper,.login-panel .login-signup-link,.login-panel .login-signup-link>span:not(:has(a)){color:#526f69!important;-webkit-text-fill-color:#526F69!important}.login-panel .login-form a{color:#007a5e!important;-webkit-text-fill-color:#007A5E!important}.login-panel .ant-checkbox:not(.ant-checkbox-checked) .ant-checkbox-inner{background:#fff!important;border-color:#78918c!important}.login-panel-dark .login-username-input input,.login-panel-dark .login-password-input input{background:transparent!important;color:#f2faf8!important;-webkit-text-fill-color:#F2FAF8!important;caret-color:#8fe8d2}.login-panel-dark .login-username-input input:-webkit-autofill,.login-panel-dark .login-password-input input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #183336 inset!important;-webkit-text-fill-color:#F2FAF8!important}.login-panel-dark .login-username-input input::placeholder,.login-panel-dark .login-password-input input::placeholder{color:#e9f4f1ad!important;opacity:1}.login-panel-dark .login-username-input .anticon,.login-panel-dark .login-password-input .anticon,.login-panel-dark .ant-input-password-icon{color:#e9f4f1b8!important}.login-panel-dark .login-forget-password,.login-panel-dark .login-forget-password .ant-checkbox-wrapper,.login-panel-dark .login-signup-link,.login-panel-dark .login-signup-link>span:not(:has(a)){color:#e9f4f1d1!important}.login-panel-dark .ant-checkbox:not(.ant-checkbox-checked) .ant-checkbox-inner{background:#ffffff14;border-color:#e9f4f18a}.login-form,.login-form .ant-tabs-nav,.login-form .ant-tabs-tab,.login-username-input,.login-password-input,.login-button,.login-form a,.login-form .ant-checkbox-wrapper,.tsx-tools a{transition-timing-function:cubic-bezier(.22,.8,.26,1)!important}.login-form{--tsx-pointer-x: 50%;--tsx-pointer-y: 50%;--tsx-pointer-alpha: 0;background:radial-gradient(260px circle at var(--tsx-pointer-x) var(--tsx-pointer-y),rgba(255,255,255,calc(var(--tsx-pointer-alpha) * .34)),transparent 70%),#fafcfb29;animation:tsx-panel-enter .56s cubic-bezier(.22,.8,.26,1) both}.login-panel-dark .login-form{background:radial-gradient(280px circle at var(--tsx-pointer-x) var(--tsx-pointer-y),rgba(127,224,200,calc(var(--tsx-pointer-alpha) * .18)),transparent 72%),#08161a38}.login-form .ant-tabs-tab:active,.login-button:active,.login-form a:active,.login-form .ant-checkbox-wrapper:active{transform:scale(.975)}.login-username-input:focus-within,.login-password-input:focus-within{transform:translateY(-1px)}.tsx-pointer-pulse{position:fixed;z-index:10000;width:28px;height:28px;margin:-14px 0 0 -14px;border:1.5px solid rgba(143,232,210,.68);border-radius:50%;pointer-events:none;animation:tsx-pointer-pulse .48s cubic-bezier(.2,.72,.25,1) forwards}@media (hover: hover) and (pointer: fine){.login-form .ant-tabs-tab:hover,.login-form a:hover,.login-form .ant-checkbox-wrapper:hover{transform:translateY(-1px)}.login-username-input:hover,.login-password-input:hover{transform:translateY(-1px);box-shadow:0 8px 18px -14px #005f397a}}@keyframes tsx-panel-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes tsx-pointer-pulse{0%{opacity:.8;transform:scale(.38)}to{opacity:0;transform:scale(1.8)}}@media (prefers-reduced-motion: reduce){.login-form,.login-form *,.tsx-tools *,.tsx-pointer-pulse{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.login-form{--tsx-pointer-alpha: 0 !important}}@media (max-width: 768px){.loginBackground{background:#f6f0e3!important;color-scheme:light!important}.loginBackgroundDark{background:#0b2622!important;color-scheme:dark!important}.ant-layout{background:transparent!important}.login-content{width:100%!important;flex:1 1 auto!important;margin:0 auto!important}.login-panel,.login-panel-dark{position:relative;display:block;width:100%;min-height:100vh;min-height:100svh;height:100vh;height:100svh;overflow:hidden;margin:0!important}.login-panel .side-image,.login-panel-dark .side-image{position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;max-width:none!important;min-height:100%!important;height:100%!important;display:block!important;pointer-events:none;background:url(https://tensia-storage.oss-cn-chengdu.aliyuncs.com/assets/casdoor-login/login-mob-light.svg) no-repeat 50% 50% / cover!important}.side-image:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:linear-gradient(to bottom,#f6f0e3fa,#f6f0e3f5 35%,#f6f0e3c2 51%,#f6f0e300 72%)}.login-panel-dark .side-image{background:url(https://tensia-storage.oss-cn-chengdu.aliyuncs.com/assets/casdoor-login/login-mob-dark.svg) no-repeat 50% 50% / cover!important}.login-panel-dark .side-image:after{background:linear-gradient(to bottom,#0b2622c7,#0b262294 38%,#0b26221f 65%,#0b262200 78%)}.login-panel>.tsx-legal-flow,.login-panel-dark>.tsx-legal-flow{position:absolute!important;z-index:4!important;top:auto!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;min-height:46px!important;height:auto!important;margin:0!important;padding:16px 10px max(6px,env(safe-area-inset-bottom))!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:6px!important;background:linear-gradient(to top,#f6f0e3f5,#f6f0e3c2 58%,#f6f0e300)!important;color:#123b36c7!important;font-size:9px!important;line-height:1.4!important;white-space:nowrap!important;text-shadow:none!important}.login-panel-dark>.tsx-legal-flow{background:linear-gradient(to top,#0b2622f7,#0b2622c7 58%,#0b262200)!important;color:#e9f4f1c2!important}.login-form{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;margin:0;width:100%;min-height:100vh;min-height:100svh;height:auto;padding:104px 20px 58px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;border:0!important;border-radius:0!important;box-shadow:none!important}.login-form form{width:100%;max-width:400px}.login-logo-box{display:none!important}.login-form .ant-tabs-nav{width:100%;height:44px;margin:0 0 14px;padding:3px;gap:3px;border-radius:15px;background:#ffffff61;border:1px solid rgba(18,59,54,.08);box-shadow:0 8px 24px -18px #0a3c3266,inset 0 1px #ffffffb3}.login-form .ant-tabs-nav:before{border-bottom:0!important}.login-form .ant-tabs-ink-bar{display:none!important}.login-form .ant-tabs-nav-list{display:flex;width:100%;height:100%;align-items:stretch;gap:3px}.login-form .ant-tabs-nav-wrap{width:100%;height:100%}.login-form .ant-tabs-tab{position:relative;display:flex;flex:1;height:100%;min-height:0;align-items:center;justify-content:center;margin:0!important;padding:0;border-radius:11px;font-size:12.5px;letter-spacing:.2px;color:#5f7a75;transition:color .2s,background .2s,box-shadow .2s,transform .16s}.login-form .ant-tabs-tab-btn{display:flex;width:100%;height:100%;align-items:center;justify-content:center;border-radius:inherit;background:transparent!important}.login-form .ant-tabs-tab.ant-tabs-tab-active{background:#ffffffe0;box-shadow:0 3px 10px -7px #005f3973,inset 0 0 0 1px #005f3912;color:#005f39;font-weight:600}.login-form .ant-tabs-tab.ant-tabs-tab-active:after{display:none}.login-panel-dark .login-form .ant-tabs-nav{background:#ffffff0e;border-color:#7fe0c824;box-shadow:0 8px 24px -18px #000000a6,inset 0 1px #ffffff0a}.login-panel-dark .login-form .ant-tabs-tab{color:#e9f4f1b3}.login-panel-dark .login-form .ant-tabs-tab.ant-tabs-tab-active{background:#7fe0c81f;box-shadow:inset 0 0 0 1px #7fe0c838;color:#8fe8d2}.login-username-input,.login-password-input{height:44px!important;border-radius:12px!important;margin-bottom:10px;background:#ffffffe6;border-color:#123b361a}.login-username-input input,.login-password-input input{font-size:16px!important}.login-username-input input::placeholder,.login-password-input input::placeholder{font-size:15px}.login-username-input:focus-within,.login-password-input:focus-within{box-shadow:0 0 0 3px #0a6e6e29;border-color:#0a6e6e!important}.login-panel-dark .login-username-input,.login-panel-dark .login-password-input{background:#ffffff1a!important;border-color:#7fe0c84d!important}.login-button{position:relative;height:44px!important;border-radius:12px!important;font-size:0!important;letter-spacing:2px;background:linear-gradient(120deg,#00a085,#005f39)!important;box-shadow:0 12px 24px -12px #005f398c}.login-panel-dark .login-button{background:linear-gradient(120deg,#00a085,#0a6e6e)!important}.login-form .login-username,.login-form .login-forget-password{overflow:hidden;opacity:1;visibility:visible;transform:translateY(0);transition:max-height .38s cubic-bezier(.22,.8,.26,1),margin .38s cubic-bezier(.22,.8,.26,1),opacity .24s ease,transform .38s cubic-bezier(.22,.8,.26,1),visibility 0s linear 0s}.login-form .login-username{max-height:70px}.login-form .login-forget-password{max-height:38px}.login-form.tsx-passkey-active .login-username,.login-form.tsx-passkey-active .login-forget-password,.login-form:has(.ant-tabs-tab:nth-child(3).ant-tabs-tab-active) .login-username,.login-form:has(.ant-tabs-tab:nth-child(3).ant-tabs-tab-active) .login-forget-password{max-height:0;min-height:0!important;margin-top:0!important;margin-bottom:0!important;opacity:0;visibility:hidden;transform:translateY(-5px);pointer-events:none;transition:max-height .38s cubic-bezier(.22,.8,.26,1),margin .38s cubic-bezier(.22,.8,.26,1),opacity .2s ease,transform .38s cubic-bezier(.22,.8,.26,1),visibility 0s linear .38s}.login-button:before,.login-button:after{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:14px;letter-spacing:2px;transition:opacity .28s cubic-bezier(.22,.8,.26,1),transform .34s cubic-bezier(.22,.8,.26,1);pointer-events:none}.login-button:before{content:"登录";opacity:1;transform:translateY(0)}.login-button:after{content:"使用通行密钥";opacity:0;transform:translateY(4px)}.login-form.tsx-passkey-active .login-button:before,.login-form:has(.ant-tabs-tab:nth-child(3).ant-tabs-tab-active) .login-button:before{opacity:0;transform:translateY(-4px)}.login-form.tsx-passkey-active .login-button:after,.login-form:has(.ant-tabs-tab:nth-child(3).ant-tabs-tab-active) .login-button:after{opacity:1;transform:translateY(0)}.login-form a{color:#007a5e;font-weight:600}.login-panel-dark .login-form a{color:#8fe8d2}.login-forget-password,.login-forget-password .ant-checkbox-wrapper,.login-signup-link,.login-signup-link a{font-size:14px!important}.login-form .ant-checkbox-checked .ant-checkbox-inner{background:#00a085;border-color:#00a085}.login-form .ant-tabs-nav:after,.login-form .ant-tabs-nav-list:before,.login-form .ant-tabs-nav-list:after{border:0!important}.login-panel .login-form,.login-panel .login-form input,.login-panel .login-form button,.login-panel .login-form .ant-input-affix-wrapper,.login-panel .login-form .ant-tabs-nav,.login-panel .login-form .ant-tabs-tab{color-scheme:light!important}.login-panel .login-username-input,.login-panel .login-password-input{background:#fffffff0!important;border-color:#123b3624!important;color:#123b36!important}.login-panel .login-username-input input,.login-panel .login-password-input input{background:transparent!important;color:#123b36!important;-webkit-text-fill-color:#123B36!important;caret-color:#0a6e6e}.login-panel .login-username-input input::placeholder,.login-panel .login-password-input input::placeholder{color:#647b76!important;-webkit-text-fill-color:#647B76!important;opacity:1}.login-panel .login-username-input .anticon,.login-panel .login-password-input .anticon,.login-panel .ant-input-password-icon{color:#526b66!important}.login-panel .login-form .ant-tabs-nav{background:#ffffff80!important}.login-panel .login-form .ant-tabs-tab,.login-panel .login-form .ant-tabs-tab .ant-tabs-tab-btn{color:#526f69!important;-webkit-text-fill-color:#526F69!important}.login-panel .login-form .ant-tabs-tab.ant-tabs-tab-active{background:#ffffffeb!important;color:#005f39!important;-webkit-text-fill-color:#005F39!important}.login-panel .login-form .ant-tabs-tab.ant-tabs-tab-active .ant-tabs-tab-btn{background:transparent!important;color:#005f39!important;-webkit-text-fill-color:#005F39!important}.login-panel .login-forget-password,.login-panel .login-forget-password .ant-checkbox-wrapper,.login-panel .login-signup-link,.login-panel .login-signup-link>span:not(:has(a)){color:#526f69!important;-webkit-text-fill-color:#526F69!important}.login-panel .login-form a{color:#007a5e!important;-webkit-text-fill-color:#007A5E!important}.login-panel .ant-checkbox:not(.ant-checkbox-checked) .ant-checkbox-inner{background:#fff!important;border-color:#78918c!important}.login-panel-dark .login-username-input input,.login-panel-dark .login-password-input input{background:transparent!important;color:#f2faf8!important;-webkit-text-fill-color:#F2FAF8!important;caret-color:#8fe8d2}.login-panel-dark .login-username-input input:-webkit-autofill,.login-panel-dark .login-password-input input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #183336 inset!important;-webkit-text-fill-color:#F2FAF8!important}.login-panel-dark .login-username-input input::placeholder,.login-panel-dark .login-password-input input::placeholder{color:#e9f4f1b8!important;opacity:1}.login-panel-dark .login-username-input .anticon,.login-panel-dark .login-password-input .anticon,.login-panel-dark .ant-input-password-icon{color:#e9f4f1c2!important}.login-panel-dark .login-forget-password,.login-panel-dark .login-forget-password .ant-checkbox-wrapper,.login-panel-dark .login-signup-link,.login-panel-dark .login-signup-link>span:not(:has(a)){color:#e9f4f1d6!important}.login-panel-dark .ant-checkbox:not(.ant-checkbox-checked) .ant-checkbox-inner{background:#ffffff14;border-color:#e9f4f194}.login-form{animation:tsx-mobile-enter .5s cubic-bezier(.22,.8,.26,1) both}.login-form .ant-tabs-tab,.login-username-input,.login-password-input,.login-button,.login-form a,.login-form .ant-checkbox-wrapper,.tsx-tools a{transition:color .22s cubic-bezier(.22,.8,.26,1),background .22s cubic-bezier(.22,.8,.26,1),border-color .22s cubic-bezier(.22,.8,.26,1),box-shadow .22s cubic-bezier(.22,.8,.26,1),transform .16s cubic-bezier(.22,.8,.26,1)!important;-webkit-tap-highlight-color:transparent}.login-form .ant-tabs-tab:active,.login-button:active,.login-form a:active,.login-form .ant-checkbox-wrapper:active,.tsx-tools a:active{transform:scale(.965)}.login-username-input:focus-within,.login-password-input:focus-within{transform:translateY(-1px)}.tsx-pointer-pulse{position:fixed;z-index:10000;width:36px;height:36px;margin:-18px 0 0 -18px;border:2px solid rgba(143,232,210,.72);border-radius:50%;pointer-events:none;animation:tsx-touch-pulse .52s cubic-bezier(.2,.72,.25,1) forwards}.tsx-continue{max-width:400px}.tsx-continue-title{font-size:14px}.tsx-continue-card{min-height:58px;border-radius:15px;padding:9px 14px;font-size:13px}.tsx-continue-avatar{width:38px;height:38px;min-width:38px;font-size:15px}@keyframes tsx-mobile-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes tsx-touch-pulse{0%{opacity:.86;transform:scale(.3)}to{opacity:0;transform:scale(1.65)}}@media (prefers-reduced-motion: reduce){.login-form,.login-form *,.tsx-tools *,.tsx-pointer-pulse{animation:none!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}}.code-wrap{flex:1}.login-form .ant-form-item-control-input-content{display:flex;gap:8px}.send-btn{flex:none;height:46px;padding:0 12px;border:1px solid rgba(0,160,133,.4);border-radius:12px;background:#ffffffb3;color:#007a5e;font-size:12.5px;font-weight:600;cursor:pointer;font-family:inherit;white-space:nowrap;transition:color .18s,background .18s,border-color .18s,box-shadow .18s}.send-btn:hover:not(:disabled){background:#00a0851f}.login-panel-dark .send-btn{background:#ffffff12;color:#8fe8d2;border-color:#7fe0c859}.send-btn:disabled{opacity:.5;cursor:not-allowed}.err-msg{margin:0 0 12px;padding:9px 12px;border-radius:10px;background:#dc262614;border:1px solid rgba(220,38,38,.22);color:#b42318;font-size:12.5px;line-height:1.5;width:100%;max-width:360px}.login-panel-dark .err-msg{color:#ff9d94;background:#dc262624}.passkey-hint{margin:0 0 14px;font-size:12.5px;line-height:1.7;color:#5f7a75;text-align:center;width:100%}.login-panel-dark .passkey-hint{color:#e9f4f1b3}.ant-row{display:flex;flex-flow:row wrap}.ant-form-item{margin:0}.ant-form-item-control-input{min-height:auto}.ant-tabs,.ant-tabs-nav-wrap,.ant-tabs-nav-list,.ant-form-item-control,.ant-form-item-control-input,.ant-form-item-control-input-content,.ant-col{width:100%;min-width:0}.ant-tabs{max-width:360px}.ant-tabs-nav-wrap{display:flex}.ant-tabs-tab{display:flex;align-items:center}.ant-tabs-tab-btn{width:100%;text-align:center}.ant-input-affix-wrapper{display:flex;flex:1 1 auto;align-items:center;padding:0 14px}.ant-input-affix-wrapper input{width:100%;min-width:0;height:100%;padding:0;border:0;outline:0;font:inherit}.login-button{width:100%;border:0;color:#fff;cursor:pointer}.login-button:disabled{cursor:not-allowed;opacity:.62}.login-forget-password{display:flex;align-items:center;justify-content:space-between;gap:16px}.ant-checkbox-wrapper{display:inline-flex;align-items:center;gap:7px;cursor:pointer}.ant-checkbox{position:relative;display:inline-flex;width:16px;height:16px;flex:none}.ant-checkbox-input{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;opacity:0}.ant-checkbox-inner{width:16px;height:16px;border:1px solid #78918c;border-radius:4px}.ant-checkbox-checked .ant-checkbox-inner:after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.login-form form{width:100%!important;max-width:360px}
