*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif;color:#213349;background:#f9fafc}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}svg{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.login-layout{display:grid;grid-template-columns:48% 52%;min-height:100vh;min-height:100svh}.brand-panel{position:relative;overflow:hidden;background:#14384a;color:#fff;padding:45px 8.5%;display:flex;flex-direction:column;min-height:820px}.brand-panel:before,.brand-panel:after{content:"";position:absolute;width:640px;height:640px;border:1px solid #ffffff0a;border-radius:50%;pointer-events:none;right:-340px;bottom:-260px}.brand-panel:after{width:810px;height:810px;right:-425px;bottom:-345px}.brand{display:flex;align-items:center;gap:13px;width:fit-content;font-size:19px;font-weight:600;letter-spacing:1px}.brand-icon{display:grid;place-items:center;width:44px;height:44px;border:1px solid #ffffff35;border-radius:12px;background:#ffffff08}.brand-icon svg{width:28px;height:28px}.brand small{display:block;font-size:9px;letter-spacing:2.8px;color:#a5bac4;font-weight:400;margin-top:6px}.brand-content{margin:auto 0;padding:50px 0 35px}.eyebrow{color:#aac5cb;font-size:12px;letter-spacing:3px}h1{font-size:clamp(31px,3.1vw,48px);font-weight:600;line-height:1.5;letter-spacing:2px;margin:20px 0}.brand-description{font-size:14px;color:#a9c0c9;line-height:2.1;margin-bottom:32px}.certificate-art{position:relative;width:330px;height:238px;margin:36px auto 8px 4px}.art-back{position:absolute;width:266px;height:176px;top:12px;left:27px;transform:rotate(-9deg);border:1px solid #cadbdd3d;background:#ffffff0b;border-radius:8px}.art-paper{position:absolute;width:284px;height:194px;top:12px;left:25px;background:#f6f6ee;border-radius:7px;transform:rotate(-2deg);box-shadow:0 18px 40px #051c2930;padding:23px 28px;color:#49616b}.art-paper:before{content:"";position:absolute;inset:9px;border:1px solid #b9b49e8a;border-radius:2px;pointer-events:none}.paper-heading{font-size:7px;letter-spacing:3px;color:#8a8e7e}.paper-title{font-family:serif;font-size:20px;letter-spacing:4px;margin-top:7px;color:#2b4b58}.paper-rule{width:35px;height:2px;background:#b5a57c;margin:10px 0 14px}.paper-line{height:3px;background:#d5ddd9;margin-top:8px;width:73%;border-radius:2px}.paper-line.short{width:35%}.paper-line.medium{width:55%}.paper-sign{width:42px;height:1px;background:#82989c;position:absolute;right:30px;bottom:31px}.paper-seal{position:absolute;right:31px;bottom:52px;color:#a38b50}.paper-seal svg{width:37px;height:37px}.art-caption{position:absolute;bottom:2px;left:65px;font-size:11px;letter-spacing:2px;color:#9eb8c1}.caption-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#92bcb5;margin-right:8px}.brand-bottom{display:flex;align-items:center;gap:20px;color:#9bb4bf;font-size:11px;letter-spacing:1px;padding-top:18px}.brand-bottom i{height:10px;border-left:1px solid #7895a14d}.form-panel{position:relative;display:flex;flex-direction:column;padding:45px 9% 25px;background:linear-gradient(135deg,#fff 50%,#f5f8fa)}.top-link{display:flex;align-items:center;justify-content:flex-end;gap:18px;font-size:12px;color:#98a4b0}.top-link a{color:#346d7e;font-weight:500}.top-link a:hover{text-decoration:underline}.login-box{width:100%;max-width:390px;margin:auto;padding:45px 0}.welcome-tag{display:flex;align-items:center;gap:7px;font-size:11px;color:#63868d;letter-spacing:2px;margin-bottom:16px}.welcome-tag span{width:6px;height:6px;border-radius:50%;background:#4c938d}h2{font-size:31px;letter-spacing:1px;font-weight:600;margin:0 0 13px}.login-description{color:#8997a4;font-size:13px;line-height:1.7;margin:0 0 37px}form label{display:block;font-size:13px;font-weight:500;color:#405469;margin:23px 0 10px}.input-wrap{display:flex;align-items:center;border:1px solid #dfe6eb;border-radius:8px;background:#fff;transition:box-shadow .15s,border-color .15s;min-width:0;height:52px;padding-left:15px}.input-wrap:focus-within{border-color:#598b98;box-shadow:0 0 0 3px #5a89980f}.input-wrap>svg{width:18px;height:18px;color:#9eacb8;flex-shrink:0}.input-wrap input{width:100%;min-width:0;outline:none;border:0;background:transparent;color:#243d4e;padding:14px 12px;font-size:13px}.input-wrap input::placeholder{color:#afb9c2}.password-toggle{padding:12px;display:grid;place-items:center;border:0;background:transparent;color:#9aabb5;border-radius:6px}.password-toggle svg{width:19px;height:19px}.password-toggle[aria-pressed=true]{color:#256777}.captcha-row{display:grid;grid-template-columns:minmax(0,1fr) 116px;gap:12px}.captcha-button{border:1px solid #dfe6eb;border-radius:8px;background:#edf3f5;padding:3px;overflow:hidden;height:52px}.captcha-button img{display:block;width:100%;height:44px;object-fit:contain}.captcha-hint{font-size:11px;color:#a0acb5;margin:10px 0 0}.login-message{font-size:12px;line-height:1.6;color:#b04d40;min-height:20px;margin:12px 0 8px;overflow-wrap:anywhere}.submit-button{height:52px;width:100%;border:0;display:flex;justify-content:center;align-items:center;gap:22px;background:#216377;color:#fff;border-radius:8px;font-size:14px;font-weight:500;box-shadow:0 7px 17px #21637714;transition:background .15s}.submit-button:hover{background:#174f61}.submit-button:disabled{cursor:wait;opacity:.65}.support{margin:23px 0 0;text-align:center;color:#9aa7b1;font-size:11px}footer{text-align:center;color:#a6b1b9;font-size:11px;line-height:1.7}button:focus-visible,a:focus-visible{outline:3px solid #7ba7b2;outline-offset:4px}@media(min-width:1600px){.brand-panel{padding-left:15%;padding-right:10%}.form-panel{padding-left:14%;padding-right:14%}}@media(max-width:1050px){.brand-panel{padding:35px 8%;min-height:760px}.brand{font-size:16px}.certificate-art{transform:scale(.9);transform-origin:left center}.form-panel{padding:35px 8% 25px}.brand-bottom{gap:12px}}@media(max-width:760px){.login-layout{display:block}.brand-panel{min-height:0;padding:24px 26px;background:#14384a}.brand-content,.brand-bottom{display:none}.brand{font-size:17px}.brand-icon{width:39px;height:39px}.form-panel{min-height:calc(100svh - 91px);padding:22px 26px 24px}.login-box{padding:32px 0 38px;max-width:430px}.login-description{margin-bottom:26px}h2{font-size:28px}.top-link{font-size:11px}footer{font-size:10px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
