/*!
 * web/assets/css/index/12-boot.css
 * 启动加载动画（boot loading）：页面打开即显示，覆盖未挂载的 in-DOM 模板，
 * app 挂载成功后由 index 端入口脚本移除。替代原先“加载中/刷新”的裸模板观感。
 */

.boot-loading{
  position:fixed;inset:0;z-index:99990;
  display:flex;align-items:center;justify-content:center;
  background:var(--bg,#f5f6fa);
  transition:opacity .35s ease;
}
.boot-loading__box{display:flex;flex-direction:column;align-items:center;gap:18px}
.boot-spinner{
  width:56px;height:56px;border-radius:50%;
  border:3px solid rgba(0,122,255,.16);
  border-top-color:#007AFF;
  display:flex;align-items:center;justify-content:center;font-size:26px;
  animation:bootSpin .8s linear infinite;
}
.boot-loading__text{font-size:14px;letter-spacing:.18em;color:#8a8f99}
@keyframes bootSpin{to{transform:rotate(360deg)}}

html.dark .boot-loading{background:#0b0d12}
html.dark .boot-spinner{border-top-color:#0A84FF;border-color:rgba(10,132,255,.18)}
html.dark .boot-loading__text{color:#7a808c}

/* 2026-09-17：弱网/断网提示条（core/70-offline.js 使用） */
/* 离线提示条是**页面级常驻 chrome**，不是弹层：必须在弹层之下（弹层从 2000 起递增，写 3000 会被压在中间，#162） */
.gp-offbar{position:fixed;left:0;right:0;bottom:0;z-index:1900;display:none;align-items:center;gap:8px;padding:9px 14px;font-size:13px;line-height:1.4;color:#fff;background:#5A5A5A;box-shadow:0 -2px 10px rgba(0,0,0,.18)}
.gp-offbar--show{display:flex}
.gp-offbar--off{background:#8A6D3B}
.gp-offbar__dot{width:8px;height:8px;border-radius:50%;background:#FFC107;flex:none;animation:gp-offpulse 1.6s ease-in-out infinite}
.gp-offbar__txt{flex:1;min-width:0;overflow-wrap:anywhere}
.gp-offbar__btn{flex:none;border:0;border-radius:14px;padding:5px 12px;font-size:12px;font-weight:600;color:var(--tc,#1c1c1e);background:var(--cd,#fff);cursor:pointer}
.gp-offbar__btn:active{opacity:.75}
@keyframes gp-offpulse{0%,100%{opacity:1}50%{opacity:.35}}
/* 提示条出现时给底部留出空间，避免遮住固定操作栏 */
body.gp-offbar-on .pos-footer,body.gp-offbar-on .ord-footbar{padding-bottom:34px}
