* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: "Microsoft YaHei", sans-serif; font-size: 14px; background: var(--site-bg, #fff); color: var(--site-text, #000); }
.container { max-width: 480px; margin: 16px auto; padding: 12px; }
/* 登录/注册等表单页：窄栏居中（约 WAP 原宽度） */
.container--narrow { max-width: 320px; }
.form-group { margin-bottom: 12px; }
.form-group label { display: block; margin-bottom: 4px; }
.form-control { width: 100%; padding: 8px; border: 1px solid #ccc; border-radius: 4px; font-size: 14px; }
.btn { display: inline-block; padding: 10px 16px; border: none; border-radius: 4px; cursor: pointer; font-size: 14px; }
.btn-success { background: #5cb85c; color: #fff; }
.btn-block { display: block; width: 100%; }
.form-links { margin-top: 16px; text-align: center; font-size: 13px; line-height: 1.6; }
.form-links a { color: var(--site-link, #4169e1); text-decoration: none; }
.form-links a:hover { text-decoration: underline; }
.page-title { margin-bottom: 8px; }
.hint { color: var(--site-muted, #666); margin-bottom: 12px; font-size: 13px; }
.msg-error { color: #c0392b; margin-bottom: 10px; }
.msg-success { color: #27ae60; margin-bottom: 10px; }
span[id$="_info"] { color: #c0392b; font-size: 12px; }

.pwd-wrap { position: relative; }
.pwd-wrap .form-control,
.pwd-wrap .admin-input { padding-right: 44px; }
.pwd-toggle {
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    color: #888;
    cursor: pointer;
    padding: 0;
    border-radius: 4px;
    line-height: 0;
    transition: color 0.15s, background 0.15s;
}
.pwd-toggle:hover {
    color: #555;
    background: rgba(0, 0, 0, 0.05);
}
.pwd-toggle--on {
    color: var(--site-link, #4169e1);
}
.pwd-toggle .pwd-icon {
    display: block;
    pointer-events: none;
}
