:root{--panel:#fff;--muted:#667085}
*{box-sizing:border-box}
body{margin:0;min-width:320px;background:var(--figs-paper);color:var(--figs-ink);font-family:var(--figs-font-zh)}
.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(520px,7fr) minmax(460px,5fr)}
.login-intro{position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:56px clamp(48px,7vw,112px);background:var(--figs-navy);color:#fff}
.login-intro::after{content:"";position:absolute;right:-17vw;bottom:-34vw;width:62vw;height:62vw;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 72px rgba(255,255,255,.03),0 0 0 144px rgba(255,255,255,.025);pointer-events:none}
.login-intro img{position:relative;z-index:1;width:min(300px,80%);height:auto}
.login-story{position:relative;z-index:1;max-width:680px}
.login-intro h1{margin:20px 0 24px;font-size:clamp(3.5rem,6vw,6.6rem);line-height:1.04;letter-spacing:-.055em;color:#fff;max-width:none}
.login-intro p{max-width:620px;margin:0;font-size:18px;line-height:1.8;color:#d6e4f0}
.login-intro .figs-label{font-size:12px;letter-spacing:.18em;color:#9eb8ca}
.login-features{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}
.login-features span{padding:8px 13px;border:1px solid rgba(255,255,255,.24);font-size:13px;letter-spacing:.04em;color:#fff}
.login-intro small{position:relative;z-index:1;color:#a8bdcd;letter-spacing:.06em}
.login-panel{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:56px clamp(36px,5vw,80px);background:linear-gradient(180deg,#fff 0%,#fbfbf8 100%)}
.login-panel form,.security,.login-deadline{width:min(100%,440px)}
.step{font:700 12px/1.2 var(--figs-font-latin);letter-spacing:.16em;text-transform:uppercase;color:var(--figs-orange)}
h2{font-size:clamp(2.25rem,3.3vw,3.25rem);margin:12px 0 10px;letter-spacing:-.035em;color:var(--figs-navy)}
.hint,.security{color:var(--muted)}
label{display:grid;gap:9px;margin-top:22px;font-weight:700;color:var(--figs-ink)}
input{width:100%;min-height:54px;border:1px solid #c7ced5;background:#fff;padding:12px 14px;font:inherit;color:var(--figs-ink);transition:border-color .18s,box-shadow .18s}
input:hover{border-color:#8fa0af}
input:focus{outline:0;border-color:var(--figs-focus);box-shadow:0 0 0 3px rgba(36,107,254,.16)}
button{width:100%;min-height:54px;margin-top:26px;border:0;background:var(--figs-orange);color:#25150f;font:750 16px var(--figs-font-zh);cursor:pointer;transition:transform .18s,background .18s}
button:hover{background:#e96c48;transform:translateY(-1px)}
button:focus-visible{outline:3px solid var(--figs-focus);outline-offset:3px}
button:disabled{opacity:.6;transform:none}
.error{min-height:24px;margin:12px 0 0;color:var(--figs-error)}
.login-deadline{display:grid;gap:5px;margin-top:28px;padding:16px 18px;border-left:4px solid var(--figs-orange);background:#fff4ee;color:var(--figs-ink)}
.login-deadline strong{color:var(--figs-navy);font-size:16px}.login-deadline span{font-size:13px;line-height:1.65;color:#6e4a3e}
.security{margin:24px 0 0;font-size:13px;border-top:1px solid var(--figs-rule);padding-top:20px;line-height:1.65}
@media(max-width:900px){.login-shell{grid-template-columns:1fr}.login-intro{min-height:430px;padding:36px 28px}.login-intro h1{font-size:clamp(3.2rem,12vw,5rem)}.login-intro p{font-size:16px}.login-intro small{display:none}.login-panel{padding:48px 24px 56px}}
@media(max-width:480px){.login-intro{min-height:390px}.login-intro img{width:240px}.login-intro h1{font-size:3.2rem}.login-features{margin-top:24px}.login-panel{align-items:stretch}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
