.auth-shell{width:100%;max-width:560px;min-height:100svh;padding:0 20px max(28px,env(safe-area-inset-bottom));font-family:var(--ui-interface);margin:0 auto}.auth-topline{border-bottom:1px solid var(--ui-line);min-height:64px;color:var(--ui-muted);justify-content:space-between;align-items:center;gap:16px;font-size:13px;display:flex}.auth-topline a{min-height:44px;color:var(--ui-wine);align-items:center;text-decoration:none;display:inline-flex}.auth-shell .phone-auth-panel{background:var(--ui-card);border:1px solid var(--ui-line);border-top:3px solid var(--ui-wine);width:100%;max-width:440px;font-family:var(--ui-interface);box-sizing:border-box;border-radius:16px;margin:32px auto 0;padding:28px 24px;box-shadow:0 8px 28px #37231a09}.auth-shell .phone-auth-panel *{box-sizing:border-box}.auth-shell .phone-auth-panel fieldset{border:0;min-width:0;margin:0;padding:0}.auth-shell .phone-auth-panel .auth-heading{text-align:center;margin:0 0 24px}.auth-heading img{object-fit:contain;width:48px;height:48px;margin:0 auto 14px;display:block}.auth-shell .phone-auth-panel .auth-eyebrow{letter-spacing:.12em;color:var(--ui-muted);margin:0 0 10px;font-size:11px}.auth-shell .phone-auth-panel h1{font:500 28px/1.4 var(--ui-serif);letter-spacing:.04em;margin:0 0 10px}.auth-shell .phone-auth-panel .auth-heading>p:last-child{color:var(--ui-muted);margin:0;font-size:14px;line-height:1.7}.auth-shell .phone-auth-panel button{cursor:pointer;white-space:normal;min-height:48px;font:500 15px/1.5 var(--ui-interface);letter-spacing:0;box-shadow:none;border-radius:8px;margin:0}.auth-shell .phone-auth-panel button:disabled{cursor:not-allowed;opacity:.55}.auth-shell .phone-auth-panel .mini-wechat-login .auth-wechat-submit,.auth-shell .phone-auth-panel .auth-submit{border:1px solid var(--ui-wine);background:var(--ui-wine);color:#fffdf8;justify-content:center;align-items:center;width:100%;padding:12px 16px;display:flex}.auth-shell .phone-auth-panel .mini-wechat-login>[role=status]{color:var(--ui-muted);text-align:center;overflow-wrap:anywhere;margin:10px 0 20px;font-size:12px;line-height:1.7}.auth-shell .phone-auth-panel .auth-cancel{border:1px solid var(--ui-line);width:100%;color:var(--ui-muted);background:0 0;margin-top:8px;display:block}.phone-login-options{border-top:1px solid var(--ui-line);padding-top:16px}.phone-login-options summary{min-height:44px;color:var(--ui-muted);cursor:pointer;text-align:center;padding:10px 0;font-size:14px;line-height:24px;list-style:none}.phone-login-options summary::-webkit-details-marker{display:none}.phone-login-options summary:after{content:"＋";color:var(--ui-wine);margin-left:10px}.phone-login-options[open] summary:after{content:"－"}.auth-shell .phone-auth-panel .auth-methods{background:#f0ebe3;border:0;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin:12px 0 20px;padding:4px;display:grid}.auth-shell .phone-auth-panel .auth-methods button{min-width:0;min-height:44px;color:var(--ui-muted);background:0 0;border:0;border-radius:7px;padding:8px 4px;font-size:14px}.auth-shell .phone-auth-panel .auth-methods button[aria-pressed=true]{background:var(--ui-card);color:var(--ui-wine);box-shadow:0 1px 4px #37231a0d}.auth-shell .phone-auth-panel label{color:var(--ui-ink);margin:16px 0;font-size:14px;line-height:1.6;display:block}.auth-shell .phone-auth-panel input:not([type=checkbox]){width:100%;min-width:0;height:48px;font:16px var(--ui-interface);border:1px solid var(--ui-line);background:var(--ui-card);color:var(--ui-ink);border-radius:8px;margin:8px 0 0;padding:10px 12px;display:block}.auth-shell .phone-auth-panel input::placeholder{color:#92877e}.auth-shell .phone-auth-panel .auth-code-row{align-items:stretch;gap:8px;margin-top:8px;display:flex}.auth-shell .phone-auth-panel .auth-code-row input{flex:1;width:0;margin:0}.auth-shell .phone-auth-panel .auth-code-row button{border:1px solid var(--ui-line);color:var(--ui-wine);background:#f6f1e8;flex:0 0 112px;padding:8px;font-size:13px}.auth-shell .phone-auth-panel .auth-consent{color:var(--ui-muted);align-items:flex-start;gap:8px;font-size:12px;line-height:1.7;display:flex}.auth-shell .phone-auth-panel input[type=checkbox]{width:20px;height:20px;accent-color:var(--ui-wine);flex:0 0 20px;margin:1px 0 0}.auth-shell .phone-auth-panel small{color:var(--ui-muted);margin-top:6px;font-size:12px;line-height:1.6;display:block}.auth-shell .phone-auth-panel .auth-secondary-actions{justify-content:space-between;gap:12px;margin-top:12px;display:flex}.auth-shell .phone-auth-panel .auth-secondary-actions button{width:auto;min-height:44px;color:var(--ui-muted);background:0 0;border:0;padding:6px 0;font-size:13px}.auth-shell .phone-auth-panel .auth-feedback,.auth-service-note{overflow-wrap:anywhere;color:var(--ui-wine);background:#f2ece3;border-radius:8px;margin:16px 0 0;padding:12px;font-size:13px;line-height:1.7}.auth-shell .phone-auth-panel :focus-visible{outline-offset:3px;outline:3px solid #8d403c}.auth-footer{text-align:center;letter-spacing:.12em;color:var(--ui-muted);margin:24px 0 0;font-size:12px}@media (max-width:360px){.auth-shell{padding-left:16px;padding-right:16px}.auth-shell .phone-auth-panel{margin-top:24px;padding:24px 18px}.auth-shell .phone-auth-panel h1{font-size:26px}.auth-shell .phone-auth-panel .auth-code-row button{flex-basis:100px}}
