/* 星火寻迹 · 账户入口 / 保留原表单 IDs、按钮及 JS 行为 */
:root{--xh-ink:#28211d;--xh-red:#9c3335;--xh-gold:#e1b87b;--xh-paper:#fffcf7}
html:has(body.xh-auth){min-height:100%;height:auto!important;background:#f2e9dc!important;background-image:none!important}
body.xh-auth{margin:0!important;min-height:100vh!important;height:auto!important;padding:0!important;display:flex!important;align-items:stretch!important;justify-content:stretch!important;background:#f6f2ec!important;color:var(--xh-ink);font-family:"Noto Sans CJK SC","Microsoft YaHei",sans-serif!important}
.xh-auth *{box-sizing:border-box}
.xh-auth .auth-brand-panel{width:43%;flex:0 0 43%;min-height:100vh;position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:46px clamp(28px,4vw,84px);background:linear-gradient(152deg,rgba(29,16,18,.50),rgba(85,26,27,.48)),url('/images/location1_1.png') center/cover no-repeat,#492425;color:#fff;overflow:hidden}
.xh-auth .auth-brand-panel:before{content:"";position:absolute;inset:16px;border:1px solid rgba(232,185,121,.35);pointer-events:none}
.xh-auth .auth-brand-panel:after{content:"✦";font-family:serif;position:absolute;font-size:32vw;color:rgba(243,208,141,.075);right:-80px;bottom:-140px;line-height:1;pointer-events:none}
.xh-auth .auth-brand-mark{font:700 26px/1.4 "Noto Serif CJK SC",serif;letter-spacing:.08em;position:relative;z-index:1;color:#ffe6b7}
.xh-auth .auth-brand-mark span{display:block;font:500 11px/2 Arial,sans-serif;letter-spacing:.2em;color:#d9bd93}
.xh-auth .auth-brand-story{position:relative;z-index:1;max-width:500px;margin:70px 0 0}
.xh-auth .auth-mini,.xh-auth .auth-eyebrow{display:block;font:700 11px/1.8 Arial,"Microsoft YaHei",sans-serif;letter-spacing:.19em;text-transform:uppercase;color:#bd8850;margin-bottom:20px}
.xh-auth .auth-mini{color:#f1c58c}
.xh-auth .auth-brand-story strong{display:block;font:700 clamp(31px,3.15vw,57px)/1.46 "Noto Serif CJK SC","SimSun",serif;letter-spacing:.04em;color:#fff6e8}
.xh-auth .auth-brand-story p{margin:25px 0 0;max-width:360px;color:#e5d6c6;font:15px/1.95 "Microsoft YaHei",sans-serif}
.xh-auth .auth-brand-foot{z-index:1;position:relative;color:#e1c9a9;font-size:12px;letter-spacing:.2em}
.xh-auth>.container{flex:1 1 auto;min-width:0;max-width:none!important;width:auto!important;min-height:100vh!important;height:auto!important;margin:0!important;padding:54px max(28px,5.2vw)!important;display:flex!important;flex-direction:column;align-items:center!important;justify-content:center!important;background:radial-gradient(ellipse at 90% 3%,#e7d8c2 0,transparent 45%),#f6f2ec}
.xh-auth>.container>header{width:100%!important;height:auto!important;margin:0 auto 26px!important;max-width:490px;padding:0!important;text-align:left!important}
.xh-auth>.container>header h1,.xh-auth .auth-register-header h1{font:700 clamp(25px,2.35vw,38px)/1.5 "Noto Serif CJK SC",serif!important;letter-spacing:.02em;color:#46282a!important;background:none!important;-webkit-text-fill-color:#46282a!important;text-shadow:none!important;padding:0!important;margin:0 0 10px!important}
.xh-auth>.container>header h1:after{display:none!important}
.xh-auth .auth-subtitle,.xh-auth .auth-register-header>p{color:#8e7f73;font-size:14px;line-height:1.8;margin:0}
.xh-auth>.container>.content{max-width:510px!important;min-width:0;width:100%!important;height:auto!important;margin:0 auto!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
.xh-auth .content form{max-width:none!important;width:100%!important;height:auto!important;text-align:left!important;border:1px solid #e6d8c7!important;box-shadow:0 16px 54px rgba(65,32,21,.09)!important;background:rgba(255,253,248,.97)!important;border-radius:20px!important;padding:36px 36px 30px!important;margin:0!important;font-family:inherit!important}
.xh-auth .content form .input-group{display:block!important;width:100%!important}
.xh-auth .content form .input-group-item{display:flex;align-items:center;gap:12px;padding:0!important;margin:0 0 20px!important;width:100%}
.xh-auth .content form .input-group-item .label,.xh-auth .form-container .label{width:75px;flex:0 0 75px;margin:0!important;padding:0!important;color:#65554d!important;font-size:14px!important;font-weight:600!important;text-align:left;white-space:nowrap;background:none!important;line-height:1.5!important}
.xh-auth .input,.xh-auth .form-container input:not([type=radio]):not([type=file]):not([type=button]):not([type=reset]){min-width:0;width:100%;max-width:none!important;height:46px!important;border:1px solid #decfc2!important;border-radius:10px!important;padding:0 14px!important;background:#fff!important;color:#3f3330!important;font-size:14px!important;box-shadow:none!important;outline:none;transition:border-color .2s,box-shadow .2s}
.xh-auth .input:focus,.xh-auth .form-container input:focus{border-color:#ab4d49!important;box-shadow:0 0 0 4px rgba(171,77,73,.12)!important}
.xh-auth .button,.xh-auth input.button{height:46px!important;border-radius:10px!important;padding:0 16px!important;cursor:pointer;font-size:14px!important;letter-spacing:.15em;font-weight:700!important;transition:transform .18s,box-shadow .18s}
.xh-auth .btn-login{background:#9c3335!important;color:#fff!important;border:1px solid #9c3335!important;box-shadow:0 8px 18px rgba(156,51,53,.18)}
.xh-auth .btn-login:hover{background:#7e292b!important;transform:translateY(-2px)}
.xh-auth .bt-reset,.xh-auth .btn-reset{background:#fff7ec!important;color:#785a45!important;border:1px solid #eadac9!important}
.xh-auth .to-register{justify-content:center!important;text-align:center;display:flex;align-items:center;margin-top:9px}
.xh-auth .register,.xh-auth .register-blue{font-size:13px!important;color:#846e5d!important}.xh-auth .register-blue{color:#a03236!important;font-weight:700}
.xh-auth .warn{color:#b83234!important;font-size:13px!important}
/* Register form keeps existing fields and validation */
.xh-auth .auth-register-header{margin:0 0 28px;padding:0 2px;text-align:left}
.xh-auth .auth-register-header .auth-eyebrow{margin-bottom:9px}
.xh-auth:has(#u_register)>.container{padding-top:35px!important;padding-bottom:35px!important}
.xh-auth:has(#u_register)>.container>.content{max-width:710px!important}
.xh-auth:has(#u_register) .content form{padding:26px 30px!important}
.xh-auth .form-container{gap:14px!important}
.xh-auth .form-row{gap:16px!important;min-width:0;flex-wrap:wrap}
.xh-auth .form-column{min-width:160px;flex:1 1 200px}
.xh-auth .form-container .input-group-item{gap:6px!important;display:flex;flex-wrap:wrap;margin:0!important}
.xh-auth .form-container .label{width:100%;flex:0 0 100%}
.xh-auth .form-container .avatar-section{width:100%;padding:14px;background:#f9f2e9;border:1px solid #eee0d0;border-radius:13px}
.xh-auth .avatar-preview{border:3px solid #ead2ac!important;box-shadow:0 8px 22px rgba(49,25,20,.11)!important}
.xh-auth .upload-label{background:#8b3333!important;color:#fff!important;border-radius:9px!important}
.xh-auth .avatar-option{border-radius:12px!important;border:2px solid transparent!important;width:52px!important;height:52px!important}
.xh-auth .avatar-option.selected,.xh-auth .avatar-option:hover{border-color:#ab4d49!important}
.xh-auth .gender-group{display:flex;align-items:center;gap:13px;min-height:42px}
.xh-auth .button-group{display:flex;gap:12px;flex-wrap:wrap}
.xh-auth .button-group .button{min-width:126px}
.xh-auth a:hover{text-decoration:none}
@media(max-width:1020px){.xh-auth .auth-brand-panel{flex-basis:36%;width:36%;padding:35px 24px}.xh-auth .auth-brand-story strong{font-size:30px}.xh-auth>.container{padding:42px 28px!important}.xh-auth .content form{padding:28px!important}}
@media(max-width:750px){body.xh-auth{display:block!important}.xh-auth .auth-brand-panel{width:100%;min-height:210px;padding:26px 26px 25px}.xh-auth .auth-brand-story{margin:17px 0 0}.xh-auth .auth-brand-story strong{font-size:25px}.xh-auth .auth-brand-story p,.xh-auth .auth-brand-foot{display:none}.xh-auth .auth-brand-panel:after{font-size:150px;right:0;bottom:-50px}.xh-auth>.container{min-height:calc(100vh - 210px)!important;padding:24px 18px 35px!important}.xh-auth .content form{padding:24px 19px!important}.xh-auth>.container>header{margin-bottom:14px!important}.xh-auth .form-column{flex-basis:100%}.xh-auth .form-container .avatar-section{flex-direction:column}.xh-auth .avatar-options{grid-template-columns:repeat(6,minmax(36px,1fr))}.xh-auth .avatar-option{width:42px!important;height:42px!important}}
@media(prefers-reduced-motion:reduce){.xh-auth *, .xh-auth *:before{transition:none!important}}
