.phone-auth{--phone-body:1.125rem;--phone-control:1rem;--phone-ink:#242620;--phone-accent:#963a08;max-width:34rem;color:var(--phone-ink)}
.phone-auth p,.phone-auth .phone-consent span{font-size:var(--phone-body);line-height:1.8;overflow-wrap:anywhere}
.phone-auth h3{font-size:1.5rem;line-height:1.5;margin:0 0 1rem}
.phone-auth form{display:grid;gap:1rem}.phone-auth label{display:flex;flex-direction:column;gap:.5rem;font-size:var(--phone-control);font-weight:600}
.phone-auth input:not([type=checkbox]),.phone-auth button{font:inherit;font-size:var(--phone-control);min-height:48px;width:100%;padding:.7rem .9rem;border:1px solid #777b72;border-radius:.6rem;background:#fffdf8;color:var(--phone-ink);box-sizing:border-box;min-width:0}
.phone-auth button{cursor:pointer;white-space:normal;font-weight:650;line-height:1.5}.phone-auth button.phone-primary{background:var(--phone-accent);color:#fff;border-color:var(--phone-accent)}
.phone-auth button:disabled{cursor:not-allowed;background:#e5e5df;color:#555950;border-color:#b8b9b0}.phone-auth .phone-consent{display:flex;flex-direction:row;align-items:flex-start;gap:.75rem;font-weight:400;padding:.3rem 0;cursor:pointer}
.phone-auth .phone-consent input{flex:0 0 24px;width:24px;height:24px;min-height:24px;margin:.35rem 0;accent-color:var(--phone-accent)}
.phone-auth :focus-visible{outline:3px solid #a7450e;outline-offset:3px}.phone-auth [role=status]:empty{display:none}
@media(max-width:680px){.phone-auth{max-width:100%;width:100%}.phone-auth p{max-width:100%}}

/* SMS entry only: password setup intentionally keeps the shared phone-auth styles. */
.phone-login{--phone-muted:#66645d;--phone-paper:#fffdf8;--phone-line:#c9c6bc;--phone-accent:#a33e0b;width:100%;max-width:28rem;margin-inline:auto;font-family:var(--ui-font,"Microsoft YaHei","PingFang SC",sans-serif)}
.phone-login .phone-brand{display:flex;align-items:center;gap:.75rem;margin:0 0 1rem}
.phone-login .phone-brand img{display:block;flex:0 0 44px;width:44px;height:44px;object-fit:contain}
.phone-login .phone-brand>div{display:flex;flex-direction:column;gap:.125rem;min-width:0}
.phone-login .phone-brand strong{font-size:var(--phone-body);line-height:1.5;letter-spacing:.02em}
.phone-login .phone-brand span{font-size:var(--phone-control);line-height:1.4;color:var(--phone-muted)}
.phone-login h3{margin:0 0 .5rem}
.phone-login p{margin:0;font-size:var(--phone-body);line-height:1.7}
.phone-login .phone-intro{margin:0 0 1.25rem;color:var(--phone-muted)}
.phone-login form{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;margin:0}
.phone-login label{min-width:0;line-height:1.5;gap:.375rem;margin:0}
.phone-login input:not([type=checkbox]),.phone-login button{min-height:48px;border-color:var(--phone-line);border-radius:.5rem;padding:.625rem .75rem;font-size:var(--phone-control);line-height:1.5;background:var(--phone-paper)}
.phone-login input:not([type=checkbox]){font-weight:400;letter-spacing:.02em}
.phone-login input::placeholder{color:#727067;opacity:1}
.phone-login .phone-code-row{display:grid;grid-template-columns:minmax(0,1fr) 7.25rem;align-items:end;gap:.625rem;min-width:0}
.phone-login button.phone-send{padding-inline:.5rem;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--phone-accent);border-color:var(--phone-accent);background:transparent}
.phone-login .phone-consent{min-height:44px;align-items:flex-start;gap:.625rem;padding:0}
.phone-login .phone-consent span{font-size:var(--phone-body);line-height:1.7;min-width:0}
.phone-login .phone-consent input{flex:0 0 22px;width:22px;height:22px;min-height:22px;margin:.25rem 0 0;accent-color:var(--phone-accent)}
.phone-login button.phone-primary{background:var(--phone-accent);border-color:var(--phone-accent);color:#fff;min-height:50px}
.phone-login button:disabled{opacity:1;cursor:not-allowed;background:#ecebe5;border-color:#d8d5cb;color:#69685f}
.phone-login .phone-status:not(:empty){margin:1rem 0;color:var(--phone-accent)}
.phone-login .phone-help{margin:.5rem 0 0;border:0;border-bottom:1px solid #e3dfd4;border-radius:0;padding:0;background:transparent}
.phone-login .phone-help summary{display:list-item;cursor:pointer;min-height:44px;box-sizing:border-box;padding:.625rem 0;font-size:var(--phone-control);font-weight:500;line-height:1.5;color:var(--phone-muted)}
.phone-login .phone-help-copy{padding:.125rem 0 1rem;display:grid;gap:.75rem;color:var(--phone-muted)}
.phone-login button.phone-legacy{display:block;min-height:44px;margin:.5rem 0 0;padding:.625rem 0;border:0;background:transparent;color:var(--phone-ink);font-weight:500;text-decoration:underline;text-underline-offset:.25em}
.phone-login button.phone-legacy:disabled{color:#77766f;text-decoration:none}
.phone-login :focus-visible{outline:3px solid var(--phone-accent);outline-offset:3px}
.member-center:has(.phone-login){--mc-paper:#fffdf8;width:min(480px,calc(100vw - 32px));padding-inline:20px;padding-bottom:16px}
.member-center:has(.phone-login) .mc-heading{padding-block:16px 12px;margin-bottom:16px}
.member-center:has(.phone-login) .mc-title{font-size:1.25rem}
.member-center:has(.phone-login) .mc-content{gap:0}
@media(hover:hover){.phone-login button.phone-send:hover:not(:disabled){background:#fff0e3}.phone-login button.phone-primary:hover:not(:disabled){background:#883108;border-color:#883108}.phone-login button.phone-legacy:hover:not(:disabled),.phone-login .phone-help summary:hover{color:var(--phone-accent)}}
@media(prefers-reduced-motion:no-preference){.phone-login button,.phone-login input,.phone-login .phone-help summary{transition:background-color .15s ease,border-color .15s ease,color .15s ease}.phone-login .phone-help[open] .phone-help-copy{animation:phone-help-in .16s ease-out}@keyframes phone-help-in{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}}
@media(prefers-reduced-motion:reduce){.phone-login button,.phone-login input,.phone-login .phone-help summary,.phone-login .phone-help[open] .phone-help-copy{transition:none;animation:none}}
