:root{
  --panel-bg: rgba(255,255,255,.86);
  --panel-bg-strong: rgba(255,255,255,.94);
  --text: #172033;
  --muted: #5b667c;
  --border: rgba(10,20,40,.08);
  --round: 14px;
}

/* 背景遮罩：位于烟花上层、内容下层 */
#bg-dimmer{
  position:fixed; inset:0;
  background: rgba(10,15,30,.38);
  z-index:1; pointer-events:none;
  transition: background .25s ease;
}
body.contrast-strong #bg-dimmer{ background: rgba(10,15,30,.55); }

/* 把页面其它元素层级抬到遮罩上方（不影响烟花画布/遮罩/小猫） */
body > *:not(canvas#bgfire):not(canvas#bgfx):not(#bg-dimmer):not(#physcat):not(#pcat2){
  position:relative; z-index:2;
}

body{ color:var(--text); }

/* 玻璃卡片兜底：尽量覆盖常见容器与条目 */
main, .container, .content, .grid,
.card, [class*="card"], .panel, [class*="panel"], .box, [class*="box"],
.table, .list, .list-group, .downloads, .download, .download-card,
.form, form, table, section, article, .login-card, .admin-card, .upload-card {
  background: var(--panel-bg);
  border: 1px solid var(--border);
  border-radius: var(--round);
  -webkit-backdrop-filter: blur(8px) saturate(1.05);
  backdrop-filter: blur(8px) saturate(1.05);
  box-shadow: 0 10px 28px rgba(0,0,0,.08);
}

/* 下载页大网格/卡片再加一层（如命中） */
.downloads .card, .downloads .item, .downloads .download-card {
  background: var(--panel-bg-strong);
}

/* 强对比模式：整体更厚实 */
body.contrast-strong main,
body.contrast-strong .container,
body.contrast-strong .content,
body.contrast-strong .grid,
body.contrast-strong .card, body.contrast-strong [class*="card"],
body.contrast-strong .panel, body.contrast-strong [class*="panel"],
body.contrast-strong .box, body.contrast-strong [class*="box"],
body.contrast-strong .download, body.contrast-strong .download-card {
  background: var(--panel-bg-strong);
  box-shadow: 0 14px 36px rgba(0,0,0,.12);
}

/* 文本与链接可读性 */
h1,h2,h3,h4{ color:#0f1422; text-shadow:none; }
a{ color:#1069ff; }
a:focus, a:hover{ color:#0d53c9; text-decoration: underline; }

/* 徽章/标签在暗背景下的可读性提升 */
.badge, .tag, [class*="badge"], [class*="tag"]{
  background: rgba(0,0,0,.06);
  border: 1px solid rgba(0,0,0,.08);
  color:#0e1628;
}

/* 按钮在烟花下更显眼（尽量不破坏原主题） */
button, .btn, [class*="btn-"]{
  position: relative;
  isolation: isolate;
  box-shadow: 0 10px 20px rgba(16,105,255,.18);
}
.btn.ghost, .ghost{
  background: rgba(255,255,255,.55);
  border: 1px solid rgba(255,255,255,.6);
  color:#0f1422;
}

/* 表格边框与行底色 */
table{ border-collapse: separate; border-spacing:0; overflow:hidden; }
table th, table td{ background: rgba(255,255,255,.9); }
table tr + tr td{ border-top: 1px solid rgba(10,20,40,.06); }

/* 让提示/弹窗不被遮罩影响 */
.modal, .toast, .tooltip{ position: relative; z-index: 3; }
