*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;min-height:100vh;min-height:100dvh;background:#f6f7f1;color:#292d28;
     font:15px/1.6 system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif}
.login-wrap{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px 16px}
.login-card{background:#fff;border:1px solid #e4e7dc;border-radius:18px;padding:26px 26px 22px;
            width:420px;max-width:100%}
h1{font-size:20px;margin:0;font-weight:600}
.tabs{display:flex;gap:6px;background:#f1f3ec;padding:4px;border-radius:11px;margin:16px 0 6px}
.tab{flex:1;background:transparent;color:#6d7667;font:inherit;font-size:13.5px;font-weight:400;
     border:0;border-radius:8px;padding:8px;cursor:pointer;margin:0;width:auto;box-shadow:none}
.tab.on{background:#fff;color:#292d28;font-weight:600;box-shadow:0 1px 2px rgba(0,0,0,.06)}
label{display:block;font-size:13px;color:#5d6657;margin:12px 0 0}
input{width:100%;padding:10px 12px;border:1px solid #dce0d5;border-radius:10px;margin:6px 0 0;
      font:inherit;background:#fdfefb}
input:focus{outline:none;border-color:#d8b32f;box-shadow:0 0 0 3px #fdf3cf}
button.primary{border:0;background:#ffdf59;padding:11px 16px;border-radius:10px;font:inherit;
       font-weight:600;cursor:pointer;color:#3a3208;width:100%;margin-top:18px}
button.primary:hover{background:#fdd83a}
button.primary:disabled{opacity:.55;cursor:default}
.login-err{color:#b74d3b;font-size:13px;margin:12px 0 0;min-height:20px}
.login-ok{color:#3f7a4e;font-size:13px;margin:14px 0 0}
.login-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;
            margin-top:18px;padding-top:14px;border-top:1px solid #f0f1ea;
            font-size:12.5px;color:#87917e}
.login-foot a{color:inherit;text-decoration:none}
.login-foot a:hover{color:#5d6657}
.login-noscript{text-align:center;color:#b74d3b;font-size:13px}
@media(max-width:600px){
  .login-wrap{padding:16px 12px}
  .login-card{padding:22px 20px}
  input{font-size:16px;min-height:44px}
  button.primary{min-height:42px}
}
