/* 配色方案 CSS 变量 - 默认霓虹青主题 */
/* 这些变量会在运行时被 JavaScript 动态更新 */

:root {
  /* 主色调 */
  --primary-color: #00ffff;
  --primary: var(--primary-color);
  --primary-light: #80ffff;
  --primary-dark: #00cccc;
  
  /* 辅助色 */
  --secondary-color: #ff00ff;
  --accent-color: #ff71ce;
  --success-color: #05ffa1;
  --warning-color: #f59e0b;
  --error-color: #f43f5e;
  
  /* 霓虹色 */
  --neon-cyan: #00ffff;
  --neon-magenta: #ff00ff;
  --neon-purple: #b967ff;
  --neon-pink: #ff71ce;
  
  /* 背景色 */
  --bg-primary: #0a0a0f;
  --bg-secondary: #12121a;
  --bg-tertiary: #1a1a25;
  --bg-card: rgba(20, 20, 35, 0.6);
  --bg-hover: rgba(255, 255, 255, 0.1);
  
  /* 文字色 */
  --text-primary: #e2e8f0;
  --text-secondary: #94a3b8;
  --text-tertiary: #64748b;
  --text-muted: #64748b;
  
  /* 边框和发光 */
  --border-color: rgba(0, 255, 255, 0.2);
  --shadow-glow: 0 0 20px rgba(0, 255, 255, 0.5);
  --shadow-glow-magenta: 0 0 20px rgba(255, 0, 255, 0.5);
  --shadow-glow-purple: 0 0 20px rgba(185, 103, 255, 0.5);
  
  /* 毛玻璃 */
  --glass-bg: rgba(20, 20, 35, 0.6);
  --glass-border: 1px solid rgba(0, 255, 255, 0.2);

  /* 主色 RGB 分量（供 alpha 衍生变量使用） */
  --primary-rgb: 0, 255, 255;
  --secondary-rgb: 255, 0, 255;

  /* 主色 alpha 衍生变量 */
  --primary-alpha-5: rgba(var(--primary-rgb), 0.05);
  --primary-alpha-8: rgba(var(--primary-rgb), 0.08);
  --primary-alpha-10: rgba(var(--primary-rgb), 0.1);
  --primary-alpha-12: rgba(var(--primary-rgb), 0.12);
  --primary-alpha-15: rgba(var(--primary-rgb), 0.15);
  --primary-alpha-20: rgba(var(--primary-rgb), 0.2);
  --primary-alpha-30: rgba(var(--primary-rgb), 0.3);
  --primary-alpha-50: rgba(var(--primary-rgb), 0.5);

  /* 发光强度（文字默认 100%，旧版为 50%；边框/氛围默认 100%） */
  --text-glow-intensity: 1;
  --box-glow-intensity: 1;
  --ambient-glow-intensity: 1;

  /* 排名颜色 */
  --rank-gold: #fbbf24;
  --rank-silver: #94a3b8;
  --rank-bronze: #d97706;
}

/* 平滑过渡效果 */
html {
  transition: background-color 0.3s ease;
}

html.theme-transition,
html.theme-transition *,
html.theme-transition *::before,
html.theme-transition *::after {
  transition: background-color 0.3s ease, 
              border-color 0.3s ease, 
              color 0.3s ease,
              box-shadow 0.3s ease,
              text-shadow 0.3s ease !important;
}

/* 站点配色：themes.css 提供默认 token；首屏由 themeInitScript 同步用户所选方案 */

html {
  color: var(--text-primary);
  background-color: var(--bg-primary);
  color-scheme: dark;
}

html,
body {
  max-width: 100vw;
}

body {
  color: var(--text-primary);
  background-color: var(--bg-primary);
  min-height: 100vh;
}

/* 表单控件默认色常为纯黑，需显式继承主题文字色 */
button,
input,
textarea,
select {
  color: inherit;
  font-family: inherit;
}

* {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

/* Hunt 玩家端主题：将编辑器配色映射到详情/题图/题目页 */
.hunt-themed-page [class*='Card_card'] {
  --card-radius: calc(var(--hunt-radius-scale, 1) * 12px);
}

.hunt-themed-page [class*='Card_card']::before {
  border-top-left-radius: var(--card-radius);
}

.hunt-themed-page [class*='Card_card']::after {
  border-bottom-right-radius: var(--card-radius);
}

.hunt-themed-page[style*='--hunt-primary'] [class*='Card_card']::before {
  border-top-color: var(--hunt-primary, var(--primary-color));
  border-left-color: var(--hunt-primary, var(--primary-color));
}

.hunt-themed-page[style*='--hunt-accent'] [class*='Card_card']::after {
  border-bottom-color: var(--hunt-accent, var(--secondary-color));
  border-right-color: var(--hunt-accent, var(--secondary-color));
}

.hunt-themed-page[style*='--hunt-surface'] [class*='Card_card'] {
  background: var(--hunt-surface, rgba(18, 18, 26, 0.88)) !important;
}

.hunt-themed-page.hunt-themed-overlay [class*='Card_card'] {
  background: var(--hunt-surface, rgba(18, 18, 26, 0.88)) !important;
}

.hunt-themed-page [style*='--hunt-border-glow: 1'] [class*='Card_card'],
.hunt-themed-page[style*='--hunt-border'] [class*='Card_card'],
.hunt-themed-page.hunt-themed-overlay [class*='Card_card'] {
  border-color: var(--hunt-border, rgba(0, 255, 255, 0.2)) !important;
  box-shadow: 0 0 0 1px var(--hunt-border, rgba(0, 255, 255, 0.2)), 0 8px 32px rgba(0, 0, 0, 0.35);
}

.hunt-themed-page [style*='--hunt-border-glow: 1'] [class*='Card_card'] {
  box-shadow:
    0 0 0 1px var(--hunt-border, rgba(0, 255, 255, 0.2)),
    0 0 24px rgba(var(--primary-rgb), calc(var(--box-glow-intensity, 1) * 0.25)),
    0 8px 32px rgba(0, 0, 0, 0.35);
}

.hunt-themed-light [class*='Card_card'],
body[data-hunt-player-shell='light'] .hunt-themed-page [class*='Card_card'] {
  box-shadow:
    0 1px 2px rgba(61, 56, 50, 0.06),
    0 4px 20px rgba(61, 56, 50, 0.08);
}

body[data-hunt-player-shell='light'] .hunt-themed-page [class*='Card_card'][class*='clickable']:hover {
  box-shadow:
    0 4px 16px rgba(61, 56, 50, 0.12),
    0 0 20px rgba(var(--primary-rgb), calc(var(--box-glow-intensity, 1) * 0.18)) !important;
}

/* 浅色 Hunt 主题：徽章使用深色字与柔和底，避免霓虹浅色字看不清 */
.hunt-themed-light .hunt-ui-badge,
body[data-hunt-editor-shell='light'] .hunt-ui-badge {
  text-shadow: 0 0 calc(var(--text-glow-intensity, 1) * 8px)
    color-mix(in srgb, currentColor calc(var(--text-glow-intensity, 1) * 35%), transparent) !important;
}

.hunt-themed-light .hunt-ui-badge[data-variant='default'],
body[data-hunt-editor-shell='light'] .hunt-ui-badge[data-variant='default'] {
  background: color-mix(in srgb, var(--hunt-primary, #8b5a2b) 14%, #ffffff);
  color: color-mix(in srgb, var(--hunt-primary, #8b5a2b) 88%, #3d3832);
  border-color: color-mix(in srgb, var(--hunt-primary, #8b5a2b) 32%, transparent);
}

.hunt-themed-light .hunt-ui-badge[data-variant='primary'],
body[data-hunt-editor-shell='light'] .hunt-ui-badge[data-variant='primary'] {
  background: color-mix(in srgb, var(--hunt-primary, #8b5a2b) 22%, #ffffff);
  color: color-mix(in srgb, var(--hunt-primary, #8b5a2b) 92%, #3d3832);
  border-color: color-mix(in srgb, var(--hunt-primary, #8b5a2b) 40%, transparent);
}

.hunt-themed-light .hunt-ui-badge[data-variant='success'],
body[data-hunt-editor-shell='light'] .hunt-ui-badge[data-variant='success'] {
  background: #d1fae5;
  color: #047857;
  border-color: #6ee7b7;
}

.hunt-themed-light .hunt-ui-badge[data-variant='warning'],
body[data-hunt-editor-shell='light'] .hunt-ui-badge[data-variant='warning'] {
  background: #fef3c7;
  color: #b45309;
  border-color: #fcd34d;
}

.hunt-themed-light .hunt-ui-badge[data-variant='error'],
body[data-hunt-editor-shell='light'] .hunt-ui-badge[data-variant='error'] {
  background: #ffe4e6;
  color: #be123c;
  border-color: #fda4af;
}

.hunt-themed-light .hunt-ui-badge[data-variant='magenta'],
body[data-hunt-editor-shell='light'] .hunt-ui-badge[data-variant='magenta'] {
  background: #fae8ff;
  color: #a21caf;
  border-color: #e879f9;
}

.hunt-themed-light .hunt-ui-badge[data-variant='purple'],
body[data-hunt-editor-shell='light'] .hunt-ui-badge[data-variant='purple'] {
  background: #ede9fe;
  color: #6d28d9;
  border-color: #c4b5fd;
}

/* 谜题 / Hunt 列表：跟随站点个人配色方案（themeStore → themes.css） */
.site-list-page {
  color: var(--text-primary);
}

.site-list-page [class*='filterPanel'] {
  background: var(--glass-bg) !important;
  border-color: var(--primary-alpha-10, var(--border-color)) !important;
}

.site-list-page [class*='Card_card'] {
  background: var(--glass-bg) !important;
  border-color: var(--primary-alpha-15, var(--border-color)) !important;
}

.site-list-page [class*='Card_card'][class*='clickable']:hover,
.site-list-page [class*='card']:hover {
  border-color: rgba(var(--primary-rgb), 0.35) !important;
}

.site-list-page [class*='chipActive'] {
  color: var(--primary-color) !important;
  border-color: var(--primary-color) !important;
  background: var(--primary-alpha-12) !important;
}

.site-list-page [class*='chip']:not([class*='chipActive']):not([class*='chipCount']) {
  background: var(--bg-card, var(--glass-bg)) !important;
  color: var(--text-secondary) !important;
  border-color: var(--primary-alpha-15, var(--border-color)) !important;
}

.site-list-page [class*='Input_input'],
.site-list-page [class*='Select_select'] {
  background: var(--glass-bg, var(--bg-secondary)) !important;
  border-color: var(--border-color) !important;
  color: var(--text-primary) !important;
}

.site-list-page [class*='Input_input']::placeholder {
  color: var(--text-muted) !important;
}

/* Hunt 玩家端：表单、链接与页眉/footer 跟随投稿人配色 */
.hunt-themed-page {
  color: var(--hunt-text, inherit);
}

.hunt-themed-page input:not([type='checkbox']):not([type='radio']):not([type='range']),
.hunt-themed-page textarea,
.hunt-themed-page select {
  background: var(--hunt-input-bg, var(--bg-secondary)) !important;
  border-color: var(--hunt-border, var(--border-color)) !important;
  color: var(--hunt-text, var(--text-primary)) !important;
}

.hunt-themed-page input::placeholder,
.hunt-themed-page textarea::placeholder {
  color: var(--hunt-muted, var(--text-muted)) !important;
}

.hunt-themed-page [class*='textarea'] {
  background: var(--hunt-input-bg, var(--glass-bg)) !important;
  border-color: var(--hunt-border, var(--border-color)) !important;
  color: var(--hunt-text, var(--text-primary)) !important;
}

/* Select 下拉 portal 到 body，依赖 body[data-hunt-editor-shell] 上的 shell 变量 */
body[data-hunt-editor-shell] [class*='dropdown'] {
  background: var(--bg-primary, var(--bg-secondary)) !important;
  border-color: var(--hunt-border, var(--border-color)) !important;
}

body[data-hunt-editor-shell] [class*='option'] {
  color: var(--hunt-text, var(--text-primary)) !important;
}

body[data-hunt-editor-shell] [class*='option']:hover {
  background: var(--bg-tertiary, rgba(var(--primary-rgb), 0.08)) !important;
}

body[data-hunt-editor-shell] [class*='option'][class*='selected'] {
  color: var(--primary-color) !important;
  background: var(--primary-alpha-8, rgba(var(--primary-rgb), 0.12)) !important;
}

body[data-hunt-editor-shell] header,
body[data-hunt-player-shell] header {
  background: var(--glass-bg, rgba(10, 10, 15, 0.88)) !important;
  border-bottom-color: var(--border-color, rgba(0, 255, 255, 0.2)) !important;
  color: var(--text-primary, #e2e8f0);
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.25);
}

body[data-hunt-editor-shell='light'] header,
body[data-hunt-player-shell='light'] header {
  box-shadow: 0 1px 0 rgba(61, 56, 50, 0.1) !important;
}

body[data-hunt-editor-shell='light'] {
  background-image: none !important;
  background-color: var(--bg-primary, #f8fafc) !important;
}

/* 浅色编辑界面：表单控件与 Hunt 玩家端一致 */
body[data-hunt-editor-shell='light'] input:not([type='checkbox']):not([type='radio']):not([type='range']):not([type='color']),
body[data-hunt-editor-shell='light'] textarea,
body[data-hunt-editor-shell='light'] select {
  color-scheme: light;
  background: var(--hunt-input-bg, var(--bg-card, #fffefb)) !important;
  border-color: var(--border-color, rgba(61, 56, 50, 0.18)) !important;
  color: var(--text-primary, #3d3832) !important;
}

body[data-hunt-editor-shell='light'] input::placeholder,
body[data-hunt-editor-shell='light'] textarea::placeholder {
  color: var(--text-muted, #7a7268) !important;
}

body[data-hunt-editor-shell='light'] [class*='Input_input'],
body[data-hunt-editor-shell='light'] [class*='Input_numberInput'],
body[data-hunt-editor-shell='light'] [class*='UI_textarea'],
body[data-hunt-editor-shell='light'] [class*='Select_select'] {
  color-scheme: light;
  background: var(--hunt-input-bg, var(--bg-card, #fffefb)) !important;
  border-color: var(--border-color, rgba(61, 56, 50, 0.18)) !important;
  color: var(--text-primary, #3d3832) !important;
}

body[data-hunt-editor-shell='light'] [class*='Input_numberContainer'] {
  background: var(--hunt-input-bg, var(--bg-card, #fffefb)) !important;
  border-color: var(--border-color, rgba(61, 56, 50, 0.18)) !important;
}

body[data-hunt-editor-shell='light'] [class*='Input_numberSteppers'] {
  border-left-color: var(--border-color, rgba(61, 56, 50, 0.14)) !important;
  background: var(--bg-secondary, #f3f4f6) !important;
}

body[data-hunt-editor-shell='light'] [class*='Input_label'],
body[data-hunt-editor-shell='light'] [class*='Select_label'],
body[data-hunt-editor-shell='light'] [class*='UI_label'] {
  color: var(--text-secondary, #64748b) !important;
}

/* 浅色编辑界面：开关轨道/旋钮边框（原深色用半透明白边，纸感底上不可见） */
body[data-hunt-editor-shell='light'] [class*='toggleInline'] input[type='checkbox'] {
  border-color: var(--border-color, rgba(61, 56, 50, 0.28)) !important;
  background: var(--bg-secondary, #ebe3d6) !important;
  box-shadow: inset 0 1px 2px rgba(61, 56, 50, 0.06);
}

body[data-hunt-editor-shell='light'] [class*='toggleInline'] input[type='checkbox']::after {
  box-shadow: 0 1px 3px rgba(61, 56, 50, 0.18);
}

body[data-hunt-editor-shell='light'] [class*='toggleKnob'] {
  background: var(--bg-secondary, #ebe3d6) !important;
  border-color: var(--border-color, rgba(61, 56, 50, 0.32)) !important;
}

body[data-hunt-editor-shell='light'] [class*='toggleCardActive'] [class*='toggleKnob'] {
  background: color-mix(in srgb, var(--primary-color) 22%, var(--bg-secondary, #ebe3d6)) !important;
  border-color: color-mix(in srgb, var(--primary-color) 45%, var(--border-color, rgba(61, 56, 50, 0.32))) !important;
}

body[data-hunt-editor-shell='light'] [class*='toggleCardActive'] [class*='toggleKnob']::after {
  background: #fffefb !important;
  box-shadow: 0 1px 3px rgba(61, 56, 50, 0.18) !important;
}

body[data-hunt-editor-shell='light'] [class*='toggleInline'] input[type='checkbox']:checked {
  border-color: color-mix(in srgb, var(--primary-color) 45%, var(--border-color, rgba(61, 56, 50, 0.28))) !important;
  background: color-mix(in srgb, var(--primary-color) 22%, var(--bg-secondary, #ebe3d6)) !important;
  box-shadow:
    inset 0 1px 2px rgba(61, 56, 50, 0.06),
    0 0 0 1px color-mix(in srgb, var(--primary-color) 35%, transparent) !important;
}

body[data-hunt-editor-shell='light'] [class*='toggleInline'] input[type='checkbox']:checked::after {
  background: #fffefb !important;
  box-shadow: 0 1px 3px rgba(61, 56, 50, 0.18) !important;
}

body[data-hunt-editor-shell='light'] [class*='pillToggle'],
body[data-hunt-editor-shell='light'] [class*='depChip'],
body[data-hunt-editor-shell='light'] [class*='pill'] {
  border-color: var(--border-color, rgba(61, 56, 50, 0.18)) !important;
  background: var(--bg-secondary, #f3f4f6) !important;
}

body[data-hunt-editor-shell='light'] [class*='editorToneSwitch'] {
  border-color: var(--border-color, rgba(61, 56, 50, 0.16)) !important;
}

body[data-hunt-editor-shell] [class*='mainLayout'],
body[data-hunt-player-shell] [class*='mainLayout'] {
  background-color: transparent !important;
}

body[data-hunt-editor-shell] header a,
body[data-hunt-editor-shell] header button,
body[data-hunt-editor-shell] header span {
  color: inherit;
}

body[data-hunt-editor-shell] footer {
  background: var(--glass-bg, rgba(20, 20, 35, 0.6));
  border-top-color: var(--border-color, rgba(0, 255, 255, 0.2));
  color: var(--text-secondary, #94a3b8);
}

/* Hunt 编辑页 Card：角标圆角与主站一致，静态表单卡片不浮起 */
body[data-hunt-editor-shell] [class*='Card_card'] {
  --card-radius: calc(var(--hunt-radius-scale, 1) * 18px);
  box-shadow:
    0 4px 24px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

body[data-hunt-editor-shell] [class*='Card_card']::before {
  border-top-left-radius: var(--card-radius);
}

body[data-hunt-editor-shell] [class*='Card_card']::after {
  border-bottom-right-radius: var(--card-radius);
}

body[data-hunt-editor-shell] [class*='Card_card']:not([class*='clickable']):hover {
  border-color: var(--border-color, rgba(var(--primary-rgb), 0.2));
  transform: none;
}

body[data-hunt-editor-shell='light'] [class*='Card_card'] {
  box-shadow:
    0 1px 2px rgba(61, 56, 50, 0.06),
    0 4px 18px rgba(61, 56, 50, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.55);
}

body[data-hunt-editor-shell='light'] [class*='Card_card'][class*='clickable']:hover {
  box-shadow:
    0 4px 16px rgba(61, 56, 50, 0.12),
    0 0 20px rgba(var(--primary-rgb), calc(var(--box-glow-intensity, 1) * 0.18)),
    inset 0 1px 0 rgba(255, 255, 255, 0.55) !important;
}

body[data-hunt-editor-shell='light'] [class*='Card_card']::before,
body[data-hunt-editor-shell='light'] [class*='Card_card']::after {
  opacity: 0.75;
}

body[data-hunt-editor-shell='light'] [class*='Card_card'] [class*='Card_title'] {
  text-shadow: none;
}

/* 浅色 Hunt：按钮与徽章使用纸感主色，弱化霓虹 */
body[data-hunt-player-shell='light'] .hunt-themed-page [class*='Button_button'] {
  color: var(--hunt-text, var(--text-primary));
}

body[data-hunt-player-shell='light'] .hunt-themed-page [class*='Button_button'][class*='primary'] {
  color: #fffefb;
  background: linear-gradient(
    135deg,
    color-mix(in srgb, var(--hunt-primary, #8b5a2b) 88%, #3d3832),
    color-mix(in srgb, var(--hunt-accent, #2f6b5a) 75%, #3d3832)
  );
}

body[data-hunt-player-shell='light'] .hunt-themed-page [class*='Button_button'][class*='secondary'],
body[data-hunt-player-shell='light'] .hunt-themed-page [class*='Button_button'][class*='ghost'] {
  color: var(--hunt-muted, var(--text-secondary));
}

body[data-hunt-player-shell='light'] .hunt-themed-page [class*='Button_button'][class*='secondary']:hover,
body[data-hunt-player-shell='light'] .hunt-themed-page [class*='Button_button'][class*='ghost']:hover {
  color: var(--hunt-primary, var(--primary-color));
}

body[data-hunt-player-shell='light'] .hunt-themed-page [class*='Button_button']::before {
  background: linear-gradient(
    135deg,
    var(--hunt-primary, var(--primary-color)),
    var(--hunt-accent, var(--secondary-color))
  );
}

body[data-hunt-player-shell='light'] .hunt-themed-page [class*='Button_button']::after {
  background: linear-gradient(
    135deg,
    color-mix(in srgb, var(--hunt-primary, var(--primary-color)) 12%, transparent),
    color-mix(in srgb, var(--hunt-accent, var(--secondary-color)) 10%, transparent)
  );
}

body[data-hunt-player-shell='light'] .hunt-themed-page [class*='Button_button'][class*='primary']:hover {
  box-shadow: 0 2px 10px color-mix(in srgb, var(--hunt-primary, #8b5a2b) 28%, transparent) !important;
}

/* 浅色玩家壳：Switch 轨道与滑块高对比 */
body[data-hunt-player-shell='light'] .hunt-themed-page [class*='switch'][class*='checked'] {
  background: color-mix(
    in srgb,
    var(--hunt-primary, var(--primary-color)) 22%,
    var(--bg-secondary, #ebe3d6)
  ) !important;
  border-color: color-mix(
    in srgb,
    var(--hunt-primary, var(--primary-color)) 45%,
    var(--border-color, rgba(61, 56, 50, 0.28))
  ) !important;
}

body[data-hunt-player-shell='light'] .hunt-themed-page [class*='switch'][class*='checked'] [class*='switchHandle'] {
  background: #fffefb !important;
  border: 1px solid rgba(61, 56, 50, 0.12);
  box-shadow: 0 1px 3px rgba(61, 56, 50, 0.18) !important;
}

/* 浅色编辑界面：HuntEdit / PuzzleEditor 顶栏按钮（无需 .hunt-themed-page 包裹） */
body[data-hunt-editor-shell='light'] [class*='Button_button'] {
  color: var(--hunt-text, var(--text-primary));
}

body[data-hunt-editor-shell='light'] [class*='Button_button'][class*='primary'] {
  color: #fffefb;
  background: linear-gradient(
    135deg,
    color-mix(in srgb, var(--hunt-primary, #8b5a2b) 88%, #3d3832),
    color-mix(in srgb, var(--hunt-accent, #2f6b5a) 75%, #3d3832)
  );
}

body[data-hunt-editor-shell='light'] [class*='Button_button'][class*='secondary'],
body[data-hunt-editor-shell='light'] [class*='Button_button'][class*='ghost'] {
  color: var(--hunt-muted, var(--text-secondary));
}

body[data-hunt-editor-shell='light'] [class*='Button_button'][class*='secondary']:hover,
body[data-hunt-editor-shell='light'] [class*='Button_button'][class*='ghost']:hover {
  color: var(--hunt-primary, var(--primary-color));
}

body[data-hunt-editor-shell='light'] [class*='Button_button']::before {
  background: linear-gradient(
    135deg,
    var(--hunt-primary, var(--primary-color)),
    var(--hunt-accent, var(--secondary-color))
  );
}

body[data-hunt-editor-shell='light'] [class*='Button_button']::after {
  background: linear-gradient(
    135deg,
    color-mix(in srgb, var(--hunt-primary, var(--primary-color)) 12%, transparent),
    color-mix(in srgb, var(--hunt-accent, var(--secondary-color)) 10%, transparent)
  );
}

body[data-hunt-editor-shell='light'] [class*='Button_button'][class*='primary']:hover {
  box-shadow: 0 2px 10px color-mix(in srgb, var(--hunt-primary, #8b5a2b) 28%, transparent) !important;
}

.hunt-themed-light [class*='Button_button'],
body[data-hunt-player-shell='light'] .hunt-themed-page [class*='Button_button'],
body[data-hunt-editor-shell='light'] [class*='Button_button'] {
  text-shadow: 0 0 calc(var(--text-glow-intensity, 1) * 8px)
    color-mix(
      in srgb,
      var(--hunt-primary, var(--primary-color)) calc(var(--text-glow-intensity, 1) * 25%),
      transparent
    ) !important;
}

.hunt-themed-light [class*='Button_button']::before,
body[data-hunt-player-shell='light'] .hunt-themed-page [class*='Button_button']::before,
body[data-hunt-editor-shell='light'] [class*='Button_button']::before {
  opacity: 0.45;
}

.hunt-themed-light [class*='Button_button']::after,
body[data-hunt-player-shell='light'] .hunt-themed-page [class*='Button_button']::after,
body[data-hunt-editor-shell='light'] [class*='Button_button']::after {
  opacity: 0;
}

.hunt-themed-light [class*='Button_button'][class*='primary']:hover,
body[data-hunt-player-shell='light'] .hunt-themed-page [class*='Button_button'][class*='primary']:hover,
body[data-hunt-editor-shell='light'] [class*='Button_button'][class*='primary']:hover {
  box-shadow: 0 2px 8px color-mix(in srgb, var(--hunt-primary, #8b5a2b) 22%, transparent) !important;
  transform: translateY(-1px);
}

a {
  color: inherit;
  text-decoration: none;
}

@media (prefers-color-scheme: dark) {
  html {
    color-scheme: dark;
  }
}

html[data-theme='dark'] {
  color-scheme: dark;
}

html[data-theme='light'] {
  color-scheme: light;
}

/* 展示用富文本：剔除内联暗色后由容器兜底（仅深色主题；保留题面有意为之的亮色/彩色字） */
html[data-theme='dark'] [data-readable-rich] {
  color: var(--text-primary);
}

html[data-theme='dark'] [data-readable-rich] :where(p, li, div, span, td, th, h1, h2, h3, h4, blockquote, pre, code, font) {
  color: inherit;
}

