/* 前台版本升级弹窗 */
body.wb-app-update-open{overflow:hidden}
.wb-app-update-modal{
  position:fixed;inset:0;z-index:100080;
  display:flex;align-items:center;justify-content:center;
  padding:20px 16px;
}
.wb-app-update-modal[hidden]{display:none!important}
.wb-app-update-backdrop{
  position:absolute;inset:0;
  background:rgba(0,0,0,.55);
  backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);
}
.wb-app-update-dialog{
  position:relative;z-index:1;
  width:min(100%,380px);
  max-height:min(86vh,640px);
  display:flex;flex-direction:column;
  background:#fff;
  border-radius:18px;
  overflow:hidden;
  box-shadow:0 20px 60px rgba(0,0,0,.22);
  animation:wbAppUpdateIn .28s ease;
}
html.theme-dark .wb-app-update-dialog{background:#1c1c1e;color:#f1f5f9}
@keyframes wbAppUpdateIn{
  from{opacity:0;transform:translateY(16px) scale(.96)}
  to{opacity:1;transform:none}
}
.wb-app-update-head{
  position:relative;
  padding:18px 16px 14px;
  text-align:center;
  background:linear-gradient(160deg,#2563eb 0%,#4f46e5 55%,#7c3aed 100%);
  color:#fff!important;
}
.wb-app-update-head h2,
.wb-app-update-head #wbAppUpdateTitle{
  margin:0 0 8px;
  font-size:18px;
  font-weight:700;
  color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.25);
}
.wb-app-update-version,
.wb-app-update-head .wb-app-update-version{
  display:inline-block;margin:0;
  padding:4px 14px;font-size:13px;font-weight:600;
  border-radius:999px;
  color:#fff!important;
  background:rgba(255,255,255,.22);
  border:1px solid rgba(255,255,255,.35);
}
.wb-app-update-close{
  position:absolute;top:10px;right:10px;
  width:32px;height:32px;border:none;border-radius:50%;
  background:rgba(255,255,255,.2);color:#fff!important;
  font-size:20px;line-height:1;cursor:pointer;
}
.wb-app-update-close[hidden]{display:none!important}
.wb-app-update-body{
  flex:1;min-height:0;
  padding:16px 18px 8px;
  overflow:auto;-webkit-overflow-scrolling:touch;
}
.wb-app-update-note{font-size:14px;line-height:1.65;color:#334155;word-break:break-word}
html.theme-dark .wb-app-update-note{color:#cbd5e1}
.wb-app-update-note p{margin:0 0 10px}
.wb-app-update-note p:last-child{margin-bottom:0}
.wb-app-update-progress{padding:8px 0 4px}
.wb-app-update-progress[hidden]{display:none!important}
.wb-app-update-progress-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.wb-app-update-progress-track{
  flex:1;height:6px;border-radius:999px;background:rgba(0,0,0,.08);overflow:hidden
}
html.theme-dark .wb-app-update-progress-track{background:rgba(255,255,255,.12)}
.wb-app-update-progress-track i{
  display:block;height:100%;width:0;border-radius:999px;
  background:linear-gradient(90deg,#2563eb,#7c3aed);
  transition:width .12s linear;
}
.wb-app-update-progress-pct{
  flex-shrink:0;min-width:42px;text-align:right;
  font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;
}
.wb-app-update-progress-text{margin:0;text-align:center;font-size:13px;color:#64748b}
.wb-app-update-foot{
  padding:12px 16px 16px;
  display:flex;flex-direction:column;gap:8px;
}
.wb-app-update-btn{
  width:100%;height:44px;border:none;border-radius:12px;
  background:#2563eb;color:#fff;font-size:15px;font-weight:700;cursor:pointer;
}
.wb-app-update-btn:disabled{opacity:.7;cursor:default}
.wb-app-update-btn--ghost{
  background:transparent;color:#2563eb;font-weight:600;height:36px;
}
html.theme-dark .wb-app-update-btn--ghost{color:#93c5fd}
