.member-auth{min-height:100dvh;background:#f8fafc;display:flex;align-items:center;justify-content:center;padding:32px 24px;padding-bottom:max(32px,env(safe-area-inset-bottom))}
.member-login{width:100%;max-width:420px}.member-login .brand{margin-bottom:32px}.member-login .brand strong{font-size:16px}.member-login h1{font-size:28px;letter-spacing:-.5px;margin:0 0 28px;color:#0f172a}.member-form .field{margin-bottom:10px}.member-form>label:not(:first-of-type){margin-top:20px}.member-form .member-code-row+.field{margin-top:20px}
.member-code-row{display:flex;align-items:stretch;gap:10px}.member-code-row>input{min-width:0;flex:1;border:1px solid #dbe3ed;border-radius:13px;background:#fff;padding:15px 14px;font:inherit;font-size:16px;outline:none;width:0}.member-code-row>input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #dbeafe}.member-code-row>.button{flex-shrink:0;min-width:114px;white-space:nowrap;padding:10px;font-size:13px}.member-captcha{height:56px;width:138px;flex-shrink:0;border:1px solid #dbe3ed;border-radius:12px;background:#fff;color:#2563eb;overflow:hidden;font:inherit;font-size:13px}.member-captcha img{width:100%;height:100%;object-fit:contain}.member-submit{width:100%;margin-top:24px;min-height:52px}.member-mode{display:block;background:transparent;border:0;color:#2563eb;min-height:44px;margin:12px auto 0;font:inherit;font-size:13px}.member-footnote{text-align:center;font-size:12px;color:#64748b;margin-top:14px}.member-form input[type=email]{font-size:16px}.member-profile{margin-bottom:20px}.member-email{font-size:15px;overflow-wrap:anywhere}.member-profile .action-row{flex-wrap:wrap;gap:8px}.member-list{display:grid;gap:12px;margin-top:18px}.member-row{margin:0;display:flex;align-items:center;gap:12px;padding:18px}.member-row>div{min-width:0;flex:1}.member-row strong{display:block;overflow-wrap:anywhere;font-size:14px}.member-row p,.member-row small{display:block;color:#64748b;font-size:12px;line-height:1.8;margin-top:5px}.member-row>.button{flex-shrink:0;min-height:44px}.member-search{display:flex;gap:8px}.member-search input{min-width:0;flex:1;border:1px solid #dbe3ed;border-radius:12px;padding:12px;background:#fff;font:inherit;font-size:14px}.member-list+.pagination{flex-wrap:wrap;gap:12px}.member-form .help{min-height:22px;margin-top:10px}
@media(min-width:768px){.member-login{background:#fff;border:1px solid #e2e8f0;border-radius:24px;padding:36px;max-width:464px;box-shadow:0 8px 40px #0f172a05}}
@media(max-width:359px){.member-auth{padding-left:20px;padding-right:20px}.member-captcha{width:118px}.member-code-row>.button{min-width:106px}.member-login h1{font-size:26px}.member-row{padding:14px}.member-profile .action-row .button{font-size:12px;padding:9px}}
.app-update{position:fixed;z-index:50;left:50%;transform:translateX(-50%);bottom:calc(14px + env(safe-area-inset-bottom));width:calc(100% - 28px);max-width:450px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe;border-radius:14px;padding:12px 14px;font-size:13px;box-shadow:0 5px 20px #0f172a12}.app-update[hidden]{display:none}.app-update .button{min-height:44px}
