/* Account entry uses the same charcoal surfaces and rose accent as the forum. */
:root{--color-bg-primary:#131313;--color-bg-secondary:#191919;--color-border:#303030;--color-text-primary:#ededed;--color-text-secondary:#bcb7c0;--color-text-muted:#928b98;--color-accent-primary:#d44773;--color-accent-secondary:#ee91b0;--color-accent-gradient:linear-gradient(#bd3a64,#ab2e55);color-scheme:dark}
*{box-sizing:border-box}
html,body{min-height:100%;margin:0}
body.login-redesign{color:#dcd8df;background:repeating-linear-gradient(135deg,#ffffff02 0,#ffffff02 1px,transparent 1px,transparent 4px),#131313;font-family:Inter,"Microsoft YaHei",sans-serif;padding:56px 24px}
.login-page{display:grid;grid-template-columns:1fr 1fr;max-width:1060px;min-height:min(740px,calc(100vh - 112px));margin:auto;border:1px solid #303030;border-radius:5px;overflow:hidden;background:#191919}
.login-brand-side{display:flex;flex-direction:column;justify-content:space-between;position:relative;padding:40px;background:radial-gradient(ellipse at 0 100%,#85284324,transparent 70%),#151515;border-right:1px solid #303030}
.auth-wordmark{display:flex;align-items:center;gap:12px;font-size:19px;letter-spacing:2px;font-weight:800;text-decoration:none;color:#f1ecf2}
.auth-wordmark img{object-fit:contain}
.brand-content{padding:60px 0}
.auth-eyebrow{color:#be6682;font-size:11px;letter-spacing:3px;margin:0 0 24px}
.brand-title{font-size:clamp(30px,3vw,44px);font-weight:600;line-height:1.5;margin:0;letter-spacing:-1px;color:#f2edf3}
.brand-title span{display:block;color:#d6819e}
.brand-tagline{font-size:14px;line-height:1.8;color:#99919e;margin:22px 0}
.auth-brand-rule{height:2px;width:56px;background:#ad315b;margin-top:32px}
.auth-brand-bottom{font-size:11px;color:#767079;margin:0}
.login-form-side{min-width:0;display:flex;flex-direction:column}
.form-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:78px;padding:22px 32px;border-bottom:1px solid #2b282c}
.form-back-link{display:inline-flex;align-items:center;gap:6px;color:#a59ca9;font-size:13px;text-decoration:none}
.form-body{flex:1;padding:38px 44px}
.form-tag{font-size:11px;color:#cd7593;letter-spacing:1px;margin-bottom:12px}
.form-title{font-size:29px;font-weight:600;margin:0 0 8px;color:#f1edf2}
.form-subtitle{font-size:13px;color:#9b939f;line-height:1.7;margin:0 0 28px}
.form-group{margin-bottom:20px}
.form-group label{display:block;font-size:12px;color:#b7afbb;margin-bottom:9px}
.input-wrapper{position:relative;display:flex;align-items:center}
.input-icon{position:absolute;left:14px;color:#8b7f8f;pointer-events:none}
.input-wrapper input{width:100%;min-width:0;padding:13px 14px 13px 42px;background:#151515;border:1px solid #3b343d;border-radius:3px;color:#efebf1;font:inherit;font-size:14px;outline:none;transition:border-color .18s}
.input-wrapper input::placeholder{color:#736c78}
.input-wrapper input:focus{border-color:#c46586;box-shadow:0 0 0 2px #c465861a}
.input-wrapper:focus-within .input-icon{color:#d17c9a}
.cf-turnstile{width:100%;min-width:0;min-height:65px;margin:18px 0;overflow:visible}
.cf-turnstile[data-widget-size=compact]{min-height:140px}
.cf-turnstile iframe{display:block;border:0;max-width:none}
.btn-submit{display:flex;justify-content:center;align-items:center;gap:10px;width:100%;padding:13px 18px;border:1px solid #c34973;border-radius:3px;color:#fff;background:#ad315b;font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.btn-submit:hover,.btn-confirm:hover{background:#c3426d}.btn-submit:disabled{opacity:.6;cursor:wait}
.form-divider{display:flex;align-items:center;gap:14px;margin:22px 0;color:#6f6775;font-size:11px}.form-divider:before,.form-divider:after{content:"";height:1px;flex:1;background:#302a32}
.form-links{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:12px}
.form-links a{cursor:pointer;color:#cf829e}.form-links a:hover,.form-back-link:hover{color:#f4b0ca}
.form-footer{padding:18px 30px;text-align:center;color:#77707e;font-size:10px;border-top:1px solid #2b282c}
.msg{font-size:13px;line-height:1.7;margin-top:14px;overflow-wrap:anywhere}.msg.error{color:#f088a0}.msg.success{color:#8fc69b}
.modal-overlay{display:none;position:fixed;inset:0;background:#000b;align-items:center;justify-content:center;z-index:1000;padding:20px;overflow:auto}
.modal{width:100%;max-width:440px;padding:28px;background:#191919;border:1px solid #463440;border-radius:4px}
.modal h3{font-size:21px;margin:0 0 12px;color:#eee}.modal-desc{font-size:13px;line-height:1.7;color:#a098a8;margin-bottom:22px}
.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:22px}
.btn-cancel,.btn-confirm{padding:10px 18px;border:1px solid #493740;background:#242024;border-radius:3px;color:#eee;font:inherit;font-size:13px;cursor:pointer}
.btn-confirm{background:#ad315b;border-color:#c34973}
.login-redesign :focus-visible{outline:2px solid #d781a0;outline-offset:3px}
@media(max-width:760px){body.login-redesign{padding:20px 12px}.login-page{max-width:480px;grid-template-columns:1fr;min-height:calc(100vh - 40px)}.login-brand-side{padding:22px 28px;border-right:0;border-bottom:1px solid #303030}.brand-content,.auth-brand-bottom{display:none}.form-header{padding:18px 24px}.form-body{padding:28px 24px}.form-footer{padding:16px}.auth-wordmark{font-size:17px}}
@media(max-width:360px){.form-body{padding:24px 16px}.login-redesign .form-header{padding:16px}.login-brand-side{padding:20px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
