/* 12-low-perf.css — 低配模式(html.low-perf)UI 精简层
 *
 * 背景:低配机上 WebView2 走软件合成(无 GPU 光栅化),空闲时的两类效果会让它
 * 持续重绘/合成、把 CPU 一直吊在高位,表现为「什么都不操作也卡」:
 *   1) backdrop-filter 背景模糊 —— 每帧都要对背景重新做高斯模糊,极重;
 *   2) 常驻的 infinite 装饰动画 —— 没有用户交互也一直跑,持续触发合成。
 *
 * 策略:
 *   1) 关掉所有 backdrop-filter —— 只是失去模糊,弹层/遮罩本身有半透明实色背景,
 *      可读性不受影响,故可安全地全局(含伪元素)覆盖;
 *   2) 只停「装饰性」常驻动画,保留「功能性」动画 —— loading 转圈(spin / ai-spin)、
 *      批量进度(batch-progress-flow)、运行状态(status-pulse)、生成脉冲(scriptGenPulse)
 *      若一并停掉会被误判为「卡死/没反应」,故必须留下。
 *
 * 挂载方式:
 *   - 主界面:web/js/10-settings.js 的 applyPrefs() 依据 prefs.low_perf_mode 增删该 class;
 *   - editor / free-canvas 等子页面:与主界面同源,各自 head 内联脚本读同一份 localStorage
 *     (zm_ui_prefs_v1)挂载。故本文件被主界面与各子页面共用。
 * 低配机首次启动会自动开 low_perf_mode,所以低配机自动精简、高配机完全无感。
 */

/* 1) 关闭背景模糊(含 ::before/::after 伪元素) */
html.low-perf,
html.low-perf *,
html.low-perf *::before,
html.low-perf *::after {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

/* 2) 停掉装饰性常驻动画(功能性动画不在此列表,自动保留) */
html.low-perf .premium-btn,            /* 顶栏「升级」按钮光晕 premium-btn-glow */
html.low-perf .premium-btn-trial,      /* 顶栏试用徽章脉冲 premium-trial-pulse */
html.low-perf .premium-urgent,         /* 付费弹层紧急徽章 premium-pulse */
html.low-perf .tpl-progress-save,      /* 「保存为模板」按钮脉冲 tplSavePulse */
html.low-perf .stage-back-btn,         /* 返回按钮吸睛 stage-back-attract */
html.low-perf .btn.mobile-upload::after,  /* 手机上传按钮呼吸光环 mobileUploadPulse */
html.low-perf .guide-spotlight::after, /* 新手引导聚光呼吸 guide-pulse */
html.low-perf .guide-cta-btn,          /* 「教程引导」按钮脉冲 guide-cta-pulse */
html.low-perf .ai-fab-btn,             /* AI 悬浮球上下浮动 ai-fab-float(常驻) */
html.low-perf .ai-fab-wave {           /* AI 悬浮球招手 ai-wave(常驻) */
  animation: none !important;
}
