:root{font-family:system-ui,"Microsoft YaHei",sans-serif;color:#18312b;background:#f3f6f4;font-size:16px}*{box-sizing:border-box}body{margin:0}header{display:flex;justify-content:space-between;align-items:center;padding:24px 6%;border-bottom:1px solid #d9e3de;background:white;gap:16px}a{color:#14644e;text-decoration:none}header>a{font-size:21px;font-weight:700}header span,.muted,footer{color:#61746c}nav{display:flex;gap:20px;align-items:center}main{max-width:720px;margin:64px auto;padding:0 24px}h1{font-size:36px;letter-spacing:-1px}.eyebrow{font-size:12px;letter-spacing:3px;color:#177653}.card{background:white;border:1px solid #d9e3de;border-radius:12px;padding:32px;margin-top:32px;box-shadow:0 8px 24px #12332105}label{display:block;margin:0 0 8px}input{display:block;width:100%;font:inherit;padding:12px;border:1px solid #a4b8ae;border-radius:6px;margin-bottom:24px}button{font:inherit;cursor:pointer;background:#14644e;color:white;border:0;border-radius:6px;padding:12px 24px}button:disabled{opacity:.5}form button{width:100%}dt{color:#61746c;margin-top:20px}dd{margin:8px 0;overflow-wrap:anywhere}footer{padding:24px;text-align:center;font-size:13px}#message{color:#982f2f}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #bba237;outline-offset:3px}@media(max-width:560px){header{align-items:flex-start;flex-direction:column}main{margin-top:32px}.card{padding:24px}h1{font-size:30px}nav{flex-wrap:wrap}}
#workspace>section,#workspace>form{background:white;border:1px solid #d9e3de;border-radius:12px;padding:24px;margin:24px 0}#workspace>a{display:inline-block;margin:0 20px 12px 0}#workspace select{font:inherit;padding:10px;display:block;margin:8px 0 18px;width:100%;border:1px solid #a4b8ae;border-radius:6px}#workspace section button{margin:4px}#workspace p{overflow-wrap:anywhere}

body.admin-users-page main{max-width:1320px;margin:32px auto}body.admin-users-page h1{margin-bottom:16px}#workspace .admin-users-note{background:#eef7f2;border-left:5px solid #14644e;padding:14px 18px;margin:16px 0}#workspace .admin-users-note p{margin:6px 0 0}.admin-users-search{display:grid;grid-template-columns:minmax(240px,1fr) 160px;align-items:end;gap:14px;padding:16px!important;margin:16px 0!important}.admin-users-search h2{grid-column:1/-1;margin:0;font-size:20px}.admin-users-search label{margin:0}.admin-users-search input{margin:6px 0 0}.admin-users-search button{height:46px}.admin-users-table{width:100%;border-collapse:collapse;background:white;border:1px solid #d9e3de;border-radius:10px;overflow:hidden;font-size:14px}.admin-users-table th,.admin-users-table td{padding:12px 14px;text-align:left;vertical-align:middle;border-bottom:1px solid #e4ebe7}.admin-users-table th{background:#edf3f0;color:#304a40;white-space:nowrap}.admin-users-table tr:last-child td{border-bottom:0}.admin-users-table td:first-child{min-width:190px}.admin-user-email{display:block;color:#61746c;font-size:13px;overflow-wrap:anywhere}.admin-users-current{display:inline-block;color:#3654a0;background:#edf1ff;border-radius:10px;padding:2px 7px;font-size:12px;margin-top:4px}.admin-users-role-admin,.admin-users-role,.admin-users-active,.admin-users-inactive{display:inline-block;border-radius:12px;padding:4px 9px;white-space:nowrap;font-size:13px}.admin-users-role-admin{background:#e5f4ee;color:#0d664b}.admin-users-role{background:#f0f2f1;color:#485850}.admin-users-active{background:#e7f5ec;color:#216b3d}.admin-users-inactive{background:#fff0e9;color:#a34820}.admin-users-table button{font-size:13px;padding:7px 10px;margin:3px;white-space:nowrap}.admin-users-table .button-warning{background:#a34d2f}.admin-users-table .button-secondary{background:#53665e}.admin-users-paging{display:flex;justify-content:flex-end;gap:8px;margin:14px 0}.admin-users-paging button{padding:8px 16px}@media(max-width:900px){body.admin-users-page main{padding:0 14px}.admin-users-table{display:block;overflow-x:auto;white-space:normal}.admin-users-search{grid-template-columns:1fr}.admin-users-search h2{grid-column:auto}}
[hidden]{display:none!important}
.login-modes{border:1px solid #a4b8ae;border-radius:6px;padding:8px;display:flex;gap:8px;margin:24px 0 0;min-width:0}
.login-modes legend{font-size:14px;padding:0 6px}
.login-modes label{display:flex;align-items:center;justify-content:center;gap:8px;flex:1;padding:10px 4px;margin:0;cursor:pointer;border-radius:4px}
.login-modes label:has(input:checked){background:#e5f4ee;color:#0d664b}
.login-modes input{width:auto;margin:0;accent-color:#14644e}
.phone-auth{margin-top:24px}.phone-auth h2{font-size:20px}.otp-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;margin-bottom:24px}.otp-row input{margin:0}.otp-row button{width:auto;min-height:48px;padding:12px;font-size:14px}
#wechat-login,#wechat-bind{margin-top:24px;background:#26763b;width:100%}
#identities{padding-left:20px;overflow-wrap:anywhere}#identities li{margin:12px 0}
.authentication-identity{min-width:0}.authentication-identity h3{overflow-wrap:anywhere}
button:disabled{cursor:default}button[aria-busy=true]{opacity:.65}
main,form,.card{min-width:0}body h1{letter-spacing:0}body .card{border-radius:8px}
@media(max-width:560px){nav{gap:12px}header{padding:20px 24px}.otp-row{gap:8px}main{padding:0 20px}.login-modes label{font-size:14px}}
