/* 千格 Ink & Signal：墨色底 + 信号绿（覆盖旧电青蜂窝）
   通过 html.wu-theme 提高优先级，覆盖各页内联 body 背景，不改布局。 */

:root,
html.wu-theme {
  --wu-bg: #07080c;
  --wu-bg-elevated: #0e1018;
  --wu-panel: rgb(18 22 34 / 72%);
  --wu-panel-solid: #121622;
  --wu-panel-hover: rgb(24 30 46 / 88%);
  --wu-text: #eef2f7;
  --wu-text-secondary: #8b93a7;
  --wu-text-muted: #5c6478;
  --wu-border: rgb(184 255 120 / 14%);
  --wu-border-strong: rgb(184 255 120 / 32%);
  --wu-accent: #b8ff78;
  --wu-accent-strong: #7fbf4a;
  --wu-accent-2: #9ae66e;
  --wu-accent-3: #5eead4;
  --wu-glow-cyan: rgb(184 255 120 / 18%);
  --wu-glow-blue: rgb(80 140 255 / 10%);
  --wu-glow-magenta: rgb(94 234 212 / 8%);
  --wu-hex: rgb(184 255 120 / 12%);
  --wu-honeycomb-size: 56px 64px;
  --wu-honeycomb: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='64' viewBox='0 0 56 64'%3E%3Cpath fill='none' stroke='%23b8ff78' stroke-opacity='0.14' stroke-width='1' d='M28 2 L54 17 V47 L28 62 L2 47 V17 Z'/%3E%3C/svg%3E");
  --wu-glow:
    radial-gradient(ellipse 80% 50% at 50% -10%, var(--wu-glow-cyan), transparent 55%),
    radial-gradient(ellipse 50% 40% at 100% 20%, var(--wu-glow-blue), transparent 50%),
    linear-gradient(180deg, rgb(14 16 24 / 0%) 0%, rgb(7 8 12 / 40%) 100%);

  --bg-deep: var(--wu-bg);
  --bg-surface: var(--wu-panel);
  --bg-card: var(--wu-panel);
  --bg-card-hover: var(--wu-panel-hover);
  --bg-main: var(--wu-bg);
  --bg-input: rgb(6 8 14 / 72%);
  --bg: var(--wu-bg);
  --panel: var(--wu-panel);
  --card: var(--wu-panel);
  --text-primary: var(--wu-text);
  --text-secondary: var(--wu-text-secondary);
  --text-muted: var(--wu-text-muted);
  --text-main: var(--wu-text);
  --text: var(--wu-text);
  --muted: var(--wu-text-secondary);
  --border-subtle: var(--wu-border);
  --border-strong: var(--wu-border-strong);
  --border-color: var(--wu-border);
  --border: var(--wu-border);
  --line: var(--wu-border);
  --accent-cyan: var(--wu-accent);
  --accent-blue: #d4ff9a;
  --accent: var(--wu-accent);
  --primary: var(--wu-accent);
  --primary-color: var(--wu-accent);
  --primary-hover: var(--wu-accent-strong);
  --accent-color: #d4ff9a;
  --primary-soft: rgb(184 255 120 / 12%);
  --callout-bg: rgb(184 255 120 / 8%);
  --glow-cyan: var(--wu-glow-cyan);
  --glow-magenta: var(--wu-glow-magenta);
  color-scheme: dark;
}

html.wu-theme:has(body[data-theme="light"]),
html.wu-theme[data-theme="light"] {
  /* Unified dark only — ignore legacy light toggles */
  --wu-bg: #07080c;
  --wu-bg-elevated: #0e1018;
  --wu-panel: rgb(18 22 34 / 72%);
  --wu-panel-solid: #121622;
  --wu-panel-hover: rgb(24 30 46 / 88%);
  --wu-text: #eef2f7;
  --wu-text-secondary: #8b93a7;
  --wu-text-muted: #5c6478;
  --wu-border: rgb(184 255 120 / 14%);
  --wu-border-strong: rgb(184 255 120 / 32%);
  --wu-accent: #b8ff78;
  --wu-accent-strong: #7fbf4a;
  --primary-color: #b8ff78;
  --primary: #b8ff78;
  --primary-hover: #7fbf4a;
  --accent: #b8ff78;
  color-scheme: dark;
}

html.wu-theme {
  background: var(--wu-bg);
}

html.wu-theme body {
  background-color: transparent !important;
  background-image: var(--wu-glow), var(--wu-honeycomb) !important;
  background-size: auto, var(--wu-honeycomb-size) !important;
  background-attachment: fixed, fixed !important;
  color: var(--wu-text);
}

html.wu-theme nav {
  z-index: 20;
}

html.wu-theme .cta,
html.wu-theme .cta-btn {
  color: #0a0b0f !important;
  background: var(--wu-accent) !important;
  border-color: transparent !important;
}

html.wu-theme .cta:hover,
html.wu-theme .cta-btn:hover {
  filter: brightness(1.05);
}
