.login-page{min-width:320px;min-height:100vh;background:#eef3f9;color:#162033;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}.login-page *,.login-page *:before,.login-page *:after{box-sizing:border-box}.login-shell{display:grid;grid-template-columns:minmax(520px,1.18fr) minmax(460px,.82fr);width:100%;min-height:100vh;overflow:hidden}.login-showcase{position:relative;display:flex;flex-direction:column;min-height:100vh;padding:clamp(36px,4.2vw,68px) clamp(44px,6vw,100px);overflow:hidden;color:#fff;background:linear-gradient(145deg,#07193efa,#10449af5),#0b2e70}.login-showcase:before,.login-showcase:after{position:absolute;content:"";pointer-events:none}.login-showcase:before{right:-145px;bottom:-230px;width:620px;height:620px;border:1px solid rgba(255,255,255,.1);border-radius:50%;box-shadow:0 0 0 80px #ffffff06,0 0 0 160px #ffffff05}.login-showcase:after{top:0;right:0;bottom:0;left:0;opacity:.32;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:linear-gradient(135deg,#000,transparent 70%);mask-image:linear-gradient(135deg,#000,transparent 70%)}.showcase-glow{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}.showcase-glow-one{top:-150px;left:-120px;width:430px;height:430px;background:#2a81ff33}.showcase-glow-two{top:30%;right:-150px;width:420px;height:420px;background:#26cdc321}.showcase-brand,.showcase-content,.showcase-footer{position:relative;z-index:1}.showcase-brand{display:flex;align-items:center;gap:14px;font-size:clamp(17px,1.35vw,22px);font-weight:650;letter-spacing:.04em}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:#ffffff1f;box-shadow:0 10px 28px #0000001f;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-size:13px;font-weight:700;letter-spacing:.02em}.showcase-content{width:min(660px,100%);margin:auto 0;padding:64px 0 44px}.showcase-eyebrow{margin:0 0 20px;color:#8fc5ff;font-size:14px;font-weight:600;letter-spacing:.2em}.showcase-content h1{margin:0;color:#fff;font-size:clamp(42px,4.1vw,68px);font-weight:700;line-height:1.2;letter-spacing:-.035em}.showcase-description{max-width:610px;margin:24px 0 0;color:#e1edffc2;font-size:clamp(15px,1.15vw,18px);line-height:1.9}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:46px}.feature-item{display:flex;align-items:center;gap:12px;min-width:0;padding:16px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:#ffffff13;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.feature-icon{display:grid;flex:0 0 36px;place-items:center;width:36px;height:36px;border-radius:10px;color:#9dceff;background:#68b1ff24}.feature-icon svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.feature-item>span:last-child{display:flex;min-width:0;flex-direction:column;gap:4px}.feature-item strong{font-size:14px;font-weight:600;white-space:nowrap}.feature-item small{overflow:hidden;color:#dceaff8f;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.showcase-footer{margin:0;color:#dae9ff85;font-size:13px;letter-spacing:.05em}.login-panel{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:56px clamp(38px,5vw,90px);background:radial-gradient(circle at 90% 8%,rgba(44,112,220,.08),transparent 28%),linear-gradient(180deg,#f8fafd,#f1f5fa)}.login-card{width:min(420px,100%)}.login-card-header{margin-bottom:38px}.login-welcome{margin:0 0 9px;color:#2c68ca;font-size:14px;font-weight:650;letter-spacing:.08em}.login-card-header h2{margin:0;color:#17233a;font-size:34px;font-weight:700;letter-spacing:-.02em}.login-card-header p:not(.login-welcome){margin:12px 0 0;color:#7b879a;font-size:14px}.login-field{margin-bottom:22px}.login-field label{display:block;margin-bottom:9px;color:#46536a;font-size:14px;font-weight:550}.input-wrap{position:relative}.input-icon{position:absolute;top:50%;left:17px;display:grid;place-items:center;width:20px;height:20px;color:#8a98ad;pointer-events:none;transform:translateY(-50%)}.input-icon svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.login-page .input-wrap input{width:100%;height:54px;padding:0 16px 0 50px;border:1px solid #dce3ed;border-radius:12px;color:#1e293b;font-size:15px;outline:none;background:#ffffffd1;box-shadow:0 2px 4px #1b305305;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.login-page .input-wrap input.has-toggle{padding-right:48px}.login-page .input-wrap input::placeholder{color:#a3adbc}.login-page .input-wrap input:focus{border-color:#2c68ca;background:#fff;box-shadow:0 0 0 4px #2c68ca1a}.input-wrap:focus-within .input-icon{color:#2c68ca}.password-toggle{position:absolute;top:50%;right:12px;display:grid;place-items:center;width:32px;height:32px;padding:0;border:none;border-radius:8px;background:transparent;color:#8a98ad;cursor:pointer;transform:translateY(-50%)}.password-toggle:hover,.password-toggle:focus-visible{color:#2c68ca;background:#2c68ca14}.password-toggle svg{width:18px;height:18px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.login-error{min-height:20px;margin:-7px 0 9px;color:#d23b3b;font-size:13px;line-height:20px}.login-submit{width:100%;height:54px;border:none;border-radius:12px;color:#fff;font-size:15px;font-weight:600;letter-spacing:.08em;cursor:pointer;background:linear-gradient(135deg,#2e70dc,#2459b5);box-shadow:0 12px 24px #255db738;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease}.login-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 15px 28px #255db745}.login-submit:active:not(:disabled){transform:translateY(0)}.login-submit:disabled{cursor:wait;opacity:.65}.login-security{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:28px;color:#93a0b2;font-size:12px}.login-security svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}@media (max-width: 1040px){.login-shell{grid-template-columns:minmax(440px,1fr) minmax(400px,.85fr)}.login-showcase{padding-right:48px;padding-left:48px}.feature-grid{grid-template-columns:1fr;max-width:310px;gap:10px}}@media (max-width: 820px){.login-shell{display:block;min-height:100vh;background:linear-gradient(160deg,#0b2e70,#134c9e 40%,#f3f6fa 40%)}.login-showcase{min-height:auto;padding:30px 24px 96px;background:transparent}.showcase-brand{font-size:17px}.showcase-content{padding:52px 0 0}.showcase-content h1{font-size:clamp(34px,9vw,46px)}.showcase-description{margin-top:18px}.feature-grid,.showcase-footer{display:none}.login-panel{min-height:auto;margin-top:-54px;padding:0 20px 36px;background:transparent}.login-card{width:min(480px,100%);padding:32px 26px 26px;border:1px solid rgba(222,229,238,.9);border-radius:20px;background:#fffffffa;box-shadow:0 24px 60px #152d5429}.login-card-header{margin-bottom:28px}.login-card-header h2{font-size:28px}}@media (max-height: 720px) and (min-width: 821px){.login-showcase,.login-panel{padding-top:30px;padding-bottom:30px}.showcase-content{padding-top:34px;padding-bottom:28px}.feature-grid{margin-top:28px}.login-card-header{margin-bottom:26px}.login-field{margin-bottom:16px}}@media (prefers-reduced-motion: reduce){.login-page *,.login-page *:before,.login-page *:after{scroll-behavior:auto!important;transition:none!important}}html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}@-ms-viewport{width:device-width}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{padding:.2em;background-color:#feffe6}
