:root{font-family:"Microsoft YaHei","PingFang SC",sans-serif;color:#25183D;background:#F6F3FC;font-synthesis:none}
#logout-others-field input{width:auto;min-height:0;accent-color:#7c3aed}
*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}button,input{font:inherit}a{color:#7134d8}button,a,input{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #a779ed}
.auth-layout{min-height:100dvh;max-width:1180px;margin:auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:64px;padding:48px 32px}.brand{display:flex;align-items:center;gap:12px;font-size:26px;font-weight:700}.brand span{display:grid;place-items:center;background:#7c3aed;color:white;width:56px;height:56px;border-radius:17px;font-size:18px}.brand-panel h1{font-size:clamp(28px,3.2vw,42px);line-height:1.4;letter-spacing:-1px;margin:44px 0 20px}.brand-panel p{color:#786986;line-height:1.9}
.auth-card{background:#fff;padding:36px;border-radius:24px;box-shadow:0 18px 60px #4223640d;max-width:500px;width:100%}.eyebrow{color:#7c3aed;font-weight:600;font-size:14px}h2{font-size:28px;margin:12px 0}#intro,.hint{color:#786986;line-height:1.6}.hint{font-size:12px}form{display:grid;gap:16px;margin-top:24px}label{display:grid;gap:8px;font-size:14px;font-weight:600}input{width:100%;min-width:0;border:1px solid #e4d9f3;border-radius:10px;padding:12px;background:#fff;color:#241536}button{cursor:pointer;border:0;border-radius:10px;padding:13px 16px;background:#7c3aed;color:#fff;font-weight:600;transition:background .18s}button:hover{background:#6830c7}button:disabled{opacity:.55;cursor:not-allowed}.secondary{background:#f3ecfc;color:#7134d8}.secondary:hover{background:#e9dcfa}.code-row{display:grid;grid-template-columns:1fr auto;gap:10px}#code-fields{display:grid;gap:16px}#code-fields .hint{margin:0}#status{font-size:14px;margin:0;line-height:1.6;color:#634382;min-height:22px}.auth-actions{display:flex;gap:20px;align-items:center;margin:22px 0;font-size:14px}.auth-actions button{background:none;color:#7134d8;padding:0}.auth-actions a{text-decoration:none}footer{display:flex;gap:18px;font-size:12px;border-top:1px solid #eee6f8;padding-top:18px;margin-top:22px}#challenge{max-width:100%;overflow:hidden}
@media(max-width:760px){.auth-layout{grid-template-columns:1fr;gap:24px;padding:24px 16px}.brand-panel h1,.brand-panel p{display:none}.auth-card{justify-self:center;padding:26px}.brand-panel{justify-self:center}.brand{font-size:22px}.brand span{width:42px;height:42px;font-size:14px}}

/* V1.1 brand tokens; keep third-party challenge styling untouched. */
:root{--primary:#7939DF;--deep:#6326C0;--decoration:#D9C8F8;--pale:#F1E9FC;--background:#F6F3FC;--card:#FFFFFF;--text:#25183D;--muted:#746782;--border:#EAE3F3;--error:#B7405B}
a,.secondary,.auth-actions button{color:var(--deep)}
button:focus-visible,a:focus-visible,input:focus-visible{outline-color:var(--deep)}
.auth-layout{grid-template-columns:minmax(0,1fr) minmax(0,440px)}
.brand span,button{background:var(--primary);color:var(--card)}
.brand-panel p,#intro,.hint{color:var(--muted)}
.auth-card{background:var(--card);max-width:440px;min-width:0;box-shadow:0 18px 60px rgb(37 24 61 / 5%)}
.eyebrow{color:var(--primary)}
input{border-color:var(--border);background:var(--card);color:var(--text)}
input::placeholder{color:var(--muted);opacity:1}
button:hover{background:var(--deep)}
.secondary{background:var(--pale);color:var(--deep)}
.secondary:hover{background:var(--decoration)}
#toggle-password{justify-self:end;padding:4px 8px;margin-top:-8px;min-height:32px}
.code-row{grid-template-columns:minmax(0,1fr) auto}
label,#code-fields{min-width:0}
#status{color:var(--deep);overflow-wrap:anywhere}
#logout-others-field input{accent-color:var(--primary)}
.auth-actions,footer{flex-wrap:wrap}
.auth-actions button:hover{background:var(--pale)}
footer{border-color:var(--border)}
#challenge{overflow:auto}
@media(max-width:760px){.auth-layout{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){button{transition:none}}
