/* v21 part1 */
(function () {
'use strict';
if (window.__mobV21) return;
window.__mobV21 = true;
function $(id) { return document.getElementById(id); }
/* 撤销 v20 对 #login-form-container 的强制显示/隐藏干预:
登录 UI 由 login-register-enhanced-component(组件版) 自行管理,
避免双登录叠放。仅保留:游客模式 + 注册登录走 8001(真库)。 */
var GUEST = 'v20_guest';
function guestOn() {
try { localStorage.setItem(GUEST, '1'); } catch (e) {}
guestBar();
var lc = $('login-form-container');
if (lc && lc.style.display === 'flex') lc.style.display = 'none';
var gl = document.querySelector('[id*="loginSection"],[id*="login-form-section"]');
if (gl) { var p = gl.closest('[style*="flex"],.overlay,[class*="modal"],[class*="overlay"]'); if (p && p.style) p.style.display = 'none'; }
location.reload();
}
function guestBar() {
try {
if ($('v21Bar')) return;
var d = document.createElement('div');
d.id = 'v21Bar';
d.style.cssText = 'position:fixed;top:0;left:0;right:0;z-index:29000;background:#f1f5f9;color:#475569;font-size:12px;padding:6px 10px;display:flex;align-items:center;gap:8px;';
d.innerHTML = '👀 游客预览模式(只读体验)登录';
document.body.appendChild(d);
var hd = document.querySelector('.mobile-header');
if (hd) hd.style.marginTop = '32px';
var gl = $('v21GoLogin');
if (gl) gl.onclick = function () {
try { localStorage.removeItem(GUEST); } catch (e) {}
location.reload();
};
} catch (e) {}
}
function floatBtn() {
if ($('v21Fab')) return;
var fab = document.createElement('div');
fab.id = 'v21Fab';
fab.style.cssText = 'position:fixed;right:14px;bottom:76px;z-index:28000;font-size:12px;color:#334155;background:#fff;border:1px solid #cbd5e1;border-radius:18px;padding:7px 12px;box-shadow:0 2px 8px rgba(0,0,0,.12);cursor:pointer;';
fab.textContent = localStorage.getItem(GUEST) === '1' ? '返回登录' : '👀 游客体验';
fab.onclick = function () {
if (localStorage.getItem(GUEST) === '1') {
try { localStorage.removeItem(GUEST); } catch (e) {}
location.reload();
} else { guestOn(); }
};
document.body.appendChild(fab);
}
/* 自动:游客态显示顶条;底部悬浮按钮已废弃(v20260909:会遮住发送按钮,登录入口已改由顶部 header 登录钮/游客顶条承担) */
function boot21() {
try {
if (localStorage.getItem(GUEST) === '1') { guestBar(); }
console.log('[MobV21] ready');
} catch (e) {}
}
if (document.readyState === 'loading') document.addEventListener('DOMContentLoaded', boot21);
else boot21();
setTimeout(boot21, 1200);
setTimeout(boot21, 3000);
})();