/* ===== 暗紫科技主题覆盖（与首页同色系、卡片加深保证可读） ===== */

/* ---- 全局滚动条统一：紫→洋红渐变 ----
   扫描全项目 HTML/CSS 收集到 43 个带独立滚动条的容器选择器
   WebKit 滚动条伪元素按容器独立匹配，每个都必须显式覆盖
------------------------------------------ */
html::-webkit-scrollbar, body::-webkit-scrollbar,
.jm-left::-webkit-scrollbar, .jm-right::-webkit-scrollbar,
.upload-tpl-body::-webkit-scrollbar, .up-select-list::-webkit-scrollbar,
.template-library::-webkit-scrollbar, .video-detail-body::-webkit-scrollbar,
.global-topbar-points-body::-webkit-scrollbar, .wx-tpl-scroll::-webkit-scrollbar,
.hc-left::-webkit-scrollbar, .hc-right::-webkit-scrollbar,
.hc-model-body::-webkit-scrollbar, .hc-dialog-body::-webkit-scrollbar,
.dh-left::-webkit-scrollbar, .dh-right::-webkit-scrollbar,
.drama-left::-webkit-scrollbar, .drama-right::-webkit-scrollbar,
.deepseek-body::-webkit-scrollbar, .copywriting-create-content::-webkit-scrollbar,
.example-modal-body::-webkit-scrollbar, .image-detail-body::-webkit-scrollbar,
.main::-webkit-scrollbar, .modal-right::-webkit-scrollbar,
.model-nav-track::-webkit-scrollbar, .model-panel::-webkit-scrollbar,
.page-body::-webkit-scrollbar, .phone-content::-webkit-scrollbar,
.play-modal-body::-webkit-scrollbar, .preview-body::-webkit-scrollbar,
.prompt-box::-webkit-scrollbar, .prompt-modal-textarea::-webkit-scrollbar,
.quick-template-list::-webkit-scrollbar, .sidebar::-webkit-scrollbar,
.tpl-detail-prompt::-webkit-scrollbar, .veo-body::-webkit-scrollbar,
.veo-main::-webkit-scrollbar, .vs-list::-webkit-scrollbar,
.home-view::-webkit-scrollbar, .center-scroll::-webkit-scrollbar,
.chat-scroll::-webkit-scrollbar, .chat-sidebar-list::-webkit-scrollbar,
.note-detail-content::-webkit-scrollbar, .avatar-preview-grid::-webkit-scrollbar,
#aiChatScroll::-webkit-scrollbar {
  width: 8px !important; height: 8px !important;
}

html::-webkit-scrollbar-track, body::-webkit-scrollbar-track,
.jm-left::-webkit-scrollbar-track, .jm-right::-webkit-scrollbar-track,
.upload-tpl-body::-webkit-scrollbar-track, .up-select-list::-webkit-scrollbar-track,
.template-library::-webkit-scrollbar-track, .video-detail-body::-webkit-scrollbar-track,
.global-topbar-points-body::-webkit-scrollbar-track, .wx-tpl-scroll::-webkit-scrollbar-track,
.hc-left::-webkit-scrollbar-track, .hc-right::-webkit-scrollbar-track,
.hc-model-body::-webkit-scrollbar-track, .hc-dialog-body::-webkit-scrollbar-track,
.dh-left::-webkit-scrollbar-track, .dh-right::-webkit-scrollbar-track,
.drama-left::-webkit-scrollbar-track, .drama-right::-webkit-scrollbar-track,
.deepseek-body::-webkit-scrollbar-track, .copywriting-create-content::-webkit-scrollbar-track,
.example-modal-body::-webkit-scrollbar-track, .image-detail-body::-webkit-scrollbar-track,
.main::-webkit-scrollbar-track, .modal-right::-webkit-scrollbar-track,
.model-nav-track::-webkit-scrollbar-track, .model-panel::-webkit-scrollbar-track,
.page-body::-webkit-scrollbar-track, .phone-content::-webkit-scrollbar-track,
.play-modal-body::-webkit-scrollbar-track, .preview-body::-webkit-scrollbar-track,
.prompt-box::-webkit-scrollbar-track, .prompt-modal-textarea::-webkit-scrollbar-track,
.quick-template-list::-webkit-scrollbar-track, .sidebar::-webkit-scrollbar-track,
.tpl-detail-prompt::-webkit-scrollbar-track, .veo-body::-webkit-scrollbar-track,
.veo-main::-webkit-scrollbar-track, .vs-list::-webkit-scrollbar-track,
.home-view::-webkit-scrollbar-track, .center-scroll::-webkit-scrollbar-track,
.chat-scroll::-webkit-scrollbar-track, .chat-sidebar-list::-webkit-scrollbar-track,
.note-detail-content::-webkit-scrollbar-track, .avatar-preview-grid::-webkit-scrollbar-track,
#aiChatScroll::-webkit-scrollbar-track {
  background: rgba(255,255,255,0.05) !important; border-radius: 8px !important;
}

html::-webkit-scrollbar-thumb, body::-webkit-scrollbar-thumb,
.jm-left::-webkit-scrollbar-thumb, .jm-right::-webkit-scrollbar-thumb,
.upload-tpl-body::-webkit-scrollbar-thumb, .up-select-list::-webkit-scrollbar-thumb,
.template-library::-webkit-scrollbar-thumb, .video-detail-body::-webkit-scrollbar-thumb,
.global-topbar-points-body::-webkit-scrollbar-thumb, .wx-tpl-scroll::-webkit-scrollbar-thumb,
.hc-left::-webkit-scrollbar-thumb, .hc-right::-webkit-scrollbar-thumb,
.hc-model-body::-webkit-scrollbar-thumb, .hc-dialog-body::-webkit-scrollbar-thumb,
.dh-left::-webkit-scrollbar-thumb, .dh-right::-webkit-scrollbar-thumb,
.drama-left::-webkit-scrollbar-thumb, .drama-right::-webkit-scrollbar-thumb,
.deepseek-body::-webkit-scrollbar-thumb, .copywriting-create-content::-webkit-scrollbar-thumb,
.example-modal-body::-webkit-scrollbar-thumb, .image-detail-body::-webkit-scrollbar-thumb,
.main::-webkit-scrollbar-thumb, .modal-right::-webkit-scrollbar-thumb,
.model-nav-track::-webkit-scrollbar-thumb, .model-panel::-webkit-scrollbar-thumb,
.page-body::-webkit-scrollbar-thumb, .phone-content::-webkit-scrollbar-thumb,
.play-modal-body::-webkit-scrollbar-thumb, .preview-body::-webkit-scrollbar-thumb,
.prompt-box::-webkit-scrollbar-thumb, .prompt-modal-textarea::-webkit-scrollbar-thumb,
.quick-template-list::-webkit-scrollbar-thumb, .sidebar::-webkit-scrollbar-thumb,
.tpl-detail-prompt::-webkit-scrollbar-thumb, .veo-body::-webkit-scrollbar-thumb,
.veo-main::-webkit-scrollbar-thumb, .vs-list::-webkit-scrollbar-thumb,
.home-view::-webkit-scrollbar-thumb, .center-scroll::-webkit-scrollbar-thumb,
.chat-scroll::-webkit-scrollbar-thumb, .chat-sidebar-list::-webkit-scrollbar-thumb,
.note-detail-content::-webkit-scrollbar-thumb, .avatar-preview-grid::-webkit-scrollbar-thumb,
#aiChatScroll::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #a855f7 0%, #ec4899 100%) !important;
  border-radius: 8px !important;
  border: 2px solid transparent !important;
  background-clip: padding-box !important;
}

html::-webkit-scrollbar-thumb:hover, body::-webkit-scrollbar-thumb:hover,
.jm-left::-webkit-scrollbar-thumb:hover, .jm-right::-webkit-scrollbar-thumb:hover,
.upload-tpl-body::-webkit-scrollbar-thumb:hover, .up-select-list::-webkit-scrollbar-thumb:hover,
.template-library::-webkit-scrollbar-thumb:hover, .video-detail-body::-webkit-scrollbar-thumb:hover,
.global-topbar-points-body::-webkit-scrollbar-thumb:hover, .wx-tpl-scroll::-webkit-scrollbar-thumb:hover,
.hc-left::-webkit-scrollbar-thumb:hover, .hc-right::-webkit-scrollbar-thumb:hover,
.hc-model-body::-webkit-scrollbar-thumb:hover, .hc-dialog-body::-webkit-scrollbar-thumb:hover,
.dh-left::-webkit-scrollbar-thumb:hover, .dh-right::-webkit-scrollbar-thumb:hover,
.drama-left::-webkit-scrollbar-thumb:hover, .drama-right::-webkit-scrollbar-thumb:hover,
.deepseek-body::-webkit-scrollbar-thumb:hover, .copywriting-create-content::-webkit-scrollbar-thumb:hover,
.example-modal-body::-webkit-scrollbar-thumb:hover, .image-detail-body::-webkit-scrollbar-thumb:hover,
.main::-webkit-scrollbar-thumb:hover, .modal-right::-webkit-scrollbar-thumb:hover,
.model-nav-track::-webkit-scrollbar-thumb:hover, .model-panel::-webkit-scrollbar-thumb:hover,
.page-body::-webkit-scrollbar-thumb:hover, .phone-content::-webkit-scrollbar-thumb:hover,
.play-modal-body::-webkit-scrollbar-thumb:hover, .preview-body::-webkit-scrollbar-thumb:hover,
.prompt-box::-webkit-scrollbar-thumb:hover, .prompt-modal-textarea::-webkit-scrollbar-thumb:hover,
.quick-template-list::-webkit-scrollbar-thumb:hover, .sidebar::-webkit-scrollbar-thumb:hover,
.tpl-detail-prompt::-webkit-scrollbar-thumb:hover, .veo-body::-webkit-scrollbar-thumb:hover,
.veo-main::-webkit-scrollbar-thumb:hover, .vs-list::-webkit-scrollbar-thumb:hover,
.home-view::-webkit-scrollbar-thumb:hover, .center-scroll::-webkit-scrollbar-thumb:hover,
.chat-scroll::-webkit-scrollbar-thumb:hover, .chat-sidebar-list::-webkit-scrollbar-thumb:hover,
.note-detail-content::-webkit-scrollbar-thumb:hover, .avatar-preview-grid::-webkit-scrollbar-thumb:hover,
#aiChatScroll::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, #c084fc 0%, #f472b6 100%) !important;
}

html::-webkit-scrollbar-thumb:active, body::-webkit-scrollbar-thumb:active,
.jm-left::-webkit-scrollbar-thumb:active, .jm-right::-webkit-scrollbar-thumb:active,
.upload-tpl-body::-webkit-scrollbar-thumb:active, .up-select-list::-webkit-scrollbar-thumb:active,
.template-library::-webkit-scrollbar-thumb:active, .video-detail-body::-webkit-scrollbar-thumb:active,
.global-topbar-points-body::-webkit-scrollbar-thumb:active, .wx-tpl-scroll::-webkit-scrollbar-thumb:active,
.hc-left::-webkit-scrollbar-thumb:active, .hc-right::-webkit-scrollbar-thumb:active,
.hc-model-body::-webkit-scrollbar-thumb:active, .hc-dialog-body::-webkit-scrollbar-thumb:active,
.dh-left::-webkit-scrollbar-thumb:active, .dh-right::-webkit-scrollbar-thumb:active,
.drama-left::-webkit-scrollbar-thumb:active, .drama-right::-webkit-scrollbar-thumb:active,
.deepseek-body::-webkit-scrollbar-thumb:active, .copywriting-create-content::-webkit-scrollbar-thumb:active,
.example-modal-body::-webkit-scrollbar-thumb:active, .image-detail-body::-webkit-scrollbar-thumb:active,
.main::-webkit-scrollbar-thumb:active, .modal-right::-webkit-scrollbar-thumb:active,
.model-nav-track::-webkit-scrollbar-thumb:active, .model-panel::-webkit-scrollbar-thumb:active,
.page-body::-webkit-scrollbar-thumb:active, .phone-content::-webkit-scrollbar-thumb:active,
.play-modal-body::-webkit-scrollbar-thumb:active, .preview-body::-webkit-scrollbar-thumb:active,
.prompt-box::-webkit-scrollbar-thumb:active, .prompt-modal-textarea::-webkit-scrollbar-thumb:active,
.quick-template-list::-webkit-scrollbar-thumb:active, .sidebar::-webkit-scrollbar-thumb:active,
.tpl-detail-prompt::-webkit-scrollbar-thumb:active, .veo-body::-webkit-scrollbar-thumb:active,
.veo-main::-webkit-scrollbar-thumb:active, .vs-list::-webkit-scrollbar-thumb:active,
.home-view::-webkit-scrollbar-thumb:active, .center-scroll::-webkit-scrollbar-thumb:active,
.chat-scroll::-webkit-scrollbar-thumb:active, .chat-sidebar-list::-webkit-scrollbar-thumb:active,
.note-detail-content::-webkit-scrollbar-thumb:active, .avatar-preview-grid::-webkit-scrollbar-thumb:active,
#aiChatScroll::-webkit-scrollbar-thumb:active {
  background: linear-gradient(180deg, #9333ea 0%, #db2777 100%) !important;
}

/* Firefox / Edge 兜底 */
html, body, .jm-left, .jm-right, .upload-tpl-body, .up-select-list,
.template-library, .video-detail-body, .global-topbar-points-body, .wx-tpl-scroll {
  scrollbar-color: #a855f7 rgba(255,255,255,0.05) !important; scrollbar-width: thin !important;
}

/* ===== 以下原有变量保持不变 ===== */
:root {
  --bg: #0b0716 !important;
  --bg-2: #16102a !important;
  --bg-3: #241a40 !important;
  --bg-4: #2f2352 !important;
  --purple: #a855f7 !important;
  --purple-glow: #c084fc !important;
  --pink: #ec4899 !important;
  --cyan: #06b6d4 !important;
  --text: #f5f3ff !important;
  --text-muted: #b8b0d0 !important;
  --glass-border: rgba(168, 85, 247, 0.22) !important;
  --primary: var(--purple) !important;
  --primary-dark: #7e22ce !important;
  --primary-light: rgba(168, 85, 247, 0.15) !important;
  --primary-gradient: linear-gradient(135deg, var(--purple) 0%, var(--pink) 100%) !important;
  --page: #0b0716 !important;
  --card: var(--bg-3) !important;
  --muted: var(--text-muted) !important;
  --line: var(--glass-border) !important;
  --soft: var(--bg-4) !important;
  --page-bg: #0b0716 !important;
  --page-bg-2: #16102a !important;
  --border: rgba(168, 85, 247, 0.22) !important;
}

/* 强制覆盖 data-theme light 模式 */
html[data-theme="light"] { color-scheme: dark !important; }
html[data-theme="light"],
[data-theme="light"] {
  --bg: #0b0716 !important;
  --bg-2: #16102a !important;
  --bg-3: #241a40 !important;
  --bg-4: #2f2352 !important;
  --text: #f5f3ff !important;
  --text-muted: #b8b0d0 !important;
  --page: #0b0716 !important;
  --card: #241a40 !important;
  --muted: #b8b0d0 !important;
  --line: rgba(168, 85, 247, 0.22) !important;
  --border: rgba(168, 85, 247, 0.22) !important;
}

html { color-scheme: dark; }
body {
  background: var(--bg) !important;
  color: var(--text) !important;
}

/* ===== 全局强力覆盖：所有常见白底容器 ===== */
.page-head, .jm-left, .jm-right, .jm-layout,
.card, .result-card, .result-head, .result-filter,
.fold-head, .fold-body, .dialog, .modal, .modal-body,
.drawer, .drawer-body, .panel, .panel-body, .box, .content,
.main-content, .container-inner, .section, .block, .list-item,
.table-wrap, .form-item, .form-group, .upload-box, .upload-zone,
.prompt-box, .chat-box, .message-box, .composer, .input-wrap,
.settings-row, .setting-row, .option-item, .tag-item, .chip-item,
.toolbar, .tabs, .tab-item, .tab-content, .tab-pane,
.sidebar, .sidebar-inner, .sidebar-menu, .menu-item, .sub-menu,
.pagination, .empty-state, .loading-wrap, .status-bar,
.info-box, .detail-box, .preview-box, .list-box, .grid-box,
.tile, .stat-card, .count-card, .feature-card, .tool-card,
.gpt-image .content, .tool-content, .result-content,
.work-content, .create-content, .edit-content, .view-content {
  background: transparent !important;
}

/* ===== 白底容器改为暗色玻璃态 ===== */
.page-head, .card, .result-card, .fold-head, .fold-body,
.dialog, .modal-content, .drawer-content, .panel, .box,
.upload-box, .upload-zone, .prompt-box, .composer,
.settings-row, .setting-row, .option-item, .tag-item, .chip-item,
.toolbar, .tab-item, .list-item, .table-wrap, .form-item,
.stat-card, .count-card, .feature-card, .tool-card, .tile {
  background-color: rgba(30, 20, 55, 0.6) !important;
  border-color: var(--glass-border) !important;
  color: var(--text) !important;
}

/* ===== 修复左侧栏 flex 压缩导致内容被裁 ===== */
.jm-left .card {
  flex-shrink: 0 !important;
  overflow: visible !important;
}
.jm-left {
  overflow-y: auto !important;
  overflow-x: hidden !important;
}

/* ===== 修复右侧结果区滚动 ===== */
.jm-right {
  overflow-y: auto !important;
  overflow-x: hidden !important;
}

/* ===== 更多白底元素暗色化（music_center 等页面） ===== */
.preset-tag, .tag-item, .pill, .chip, .tag-pill,
.mode-tab, .model-tab, .option-btn, .select-item,
.cw-result-card, .result-item, .grid-item, .work-card,
.lyrics-popup, .music-detail, .detail-modal, .preview-modal,
.aif-header, .aif-footer, .aif-body, #aiFabPanel,
.global-topbar-qr-box, .qr-box, .share-qr {
  background-color: rgba(30, 20, 55, 0.8) !important;
  border-color: var(--glass-border) !important;
  color: var(--text) !important;
}
.preset-tag:hover, .tag-item:hover, .pill:hover, .chip:hover,
.mode-tab:hover, .model-tab:hover, .option-btn:hover,
.select-item:hover {
  background-color: rgba(168, 85, 247, 0.2) !important;
  border-color: rgba(168, 85, 247, 0.4) !important;
  color: #fff !important;
}
.preset-tag.active, .tag-item.active, .pill.active, .chip.active,
.mode-tab.active, .model-tab.active, .option-btn.active,
.select-item.active {
  background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
  color: #fff !important;
  border-color: transparent !important;
}

/* 已选中的标签（selected-tag-item）暗色化 */
.selected-tag-item, .chosen-tag, .picked-tag,
.selected-item, .active-tag-item {
  background: rgba(168, 85, 247, 0.2) !important;
  border: 1px solid rgba(168, 85, 247, 0.4) !important;
  color: #f5f3ff !important;
}
.selected-tag-item .tag-close,
.chosen-tag .tag-close, .remove-tag-btn {
  color: #b8b0d0 !important;
  background: rgba(168, 85, 247, 0.15) !important;
}
.selected-tag-item .tag-close:hover,
.chosen-tag .tag-close:hover {
  color: #fff !important;
  background: rgba(239, 68, 68, 0.3) !important;
}
.selected-tags-wrapper, .selected-tags-container, .chosen-tags-box {
  background: transparent !important;
  border-color: rgba(168, 85, 247, 0.15) !important;
}

/* 弹窗遮罩暗色化 */
.mask, .overlay, .modal-mask,
.layui-layer-shade, .video-detail-mask {
  background-color: rgba(8, 5, 20, 0.75) !important;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

/* 关闭按钮/图标按钮暗色化 */
.close-btn, .modal-close, .detail-close,
.aif-close {
  color: var(--text-muted) !important;
  background: rgba(30, 20, 55, 0.6) !important;
}
.close-btn:hover, .modal-close:hover, .detail-close:hover,
.aif-close:hover {
  color: #fff !important;
  background: rgba(168, 85, 247, 0.2) !important;
}

/* 结果卡片暗色化（右侧作品列表） */
.cw-result-card, .result-grid .cw-result-card,
.work-card, .result-item-card {
  background: rgba(30, 20, 55, 0.65) !important;
  border: 1px solid var(--glass-border) !important;
  color: var(--text) !important;
}
.cw-result-card:hover, .work-card:hover {
  border-color: rgba(168, 85, 247, 0.45) !important;
  box-shadow: 0 8px 28px rgba(168, 85, 247, 0.15) !important;
}

/* AI 助手悬浮球面板 */
#aiFabPanel, .aif-container {
  background: rgba(22, 14, 45, 0.95) !important;
  border: 1px solid var(--glass-border) !important;
}
.aif-logo {
  background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
  color: #fff !important;
}
.aif-input, .aif-textarea, .aif-send {
  background: rgba(30, 20, 55, 0.6) !important;
  border-color: var(--glass-border) !important;
  color: var(--text) !important;
}
.aif-send {
  background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
  color: #fff !important;
}

/* 开关按钮暗色化 */
.wm-switch, .toggle-switch, .switch-btn {
  background: rgba(168, 85, 247, 0.2) !important;
}
.wm-switch.active, .toggle-switch.active, .switch-btn.active {
  background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
}
.wm-switch-dot, .toggle-switch-dot, .switch-dot {
  background: #fff !important;
  box-shadow: 0 1px 4px rgba(0,0,0,.3) !important;
}

/* 水印开关外层容器暗色化 */
.wm-user-toggle, .wm-toggle-wrap, .switch-wrap, .toggle-wrap,
.watermark-switch, .wm-user-bar {
  background: rgba(30, 20, 55, 0.6) !important;
  border-color: var(--glass-border) !important;
  color: var(--text) !important;
}
.wm-user-label, .switch-label, .toggle-label {
  color: var(--text-muted) !important;
}

/* 侧栏（side-rail）隐藏 */
.side-rail { display: none !important; }

/* ===== 文字颜色全局覆盖 ===== */
h1, h2, h3, h4, h5, h6,
.page-title, .card-title, .item-title, .title, .name, .label,
p, span, div, li, td, th,
strong, b {
  color: inherit;
}
body, html { color: var(--text) !important; }

/* ===== 次级文字 ===== */
.page-sub, .desc, .description, .subtitle, .sub-title,
.muted, .text-muted, .hint, .tip, .meta, .time, .date,
.info, .remark, .note, .secondary {
  color: var(--text-muted) !important;
}

/* 背景层 */
.workspace, .app-shell, .page-body, .jimeng-main, .center-scroll, .page-wrap { background: transparent !important; }
.page-body { z-index: 1; }
.page-shell {
  background-color: var(--bg) !important;
  background-image:
    linear-gradient(rgba(168, 85, 247, 0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(168, 85, 247, 0.05) 1px, transparent 1px) !important;
  background-size: 60px 60px !important;
}
.page-shell::before, .page-shell::after {
  content: ''; position: fixed; border-radius: 50%; filter: blur(100px); pointer-events: none; opacity: .15; z-index: 0;
}
.page-shell::before { width: 480px; height: 480px; background: var(--purple); top: -140px; right: -100px; animation: jmOrbFloat 14s ease-in-out infinite; }
.page-shell::after { width: 360px; height: 360px; background: var(--cyan); bottom: 10%; left: -80px; animation: jmOrbFloat 16s ease-in-out infinite reverse; }
@keyframes jmOrbFloat { 0%,100%{transform:translate(0,0) scale(1);} 50%{transform:translate(30px,-30px) scale(1.1);} }

/* 顶部栏 */
.global-topbar, .shell-topbar {
  background: rgba(11, 7, 22, 0.88) !important;
  border-color: var(--glass-border) !important;
}
.global-topbar *, .shell-topbar * { color: var(--text) !important; }
.global-topbar .global-topbar-item, .shell-topbar .st-back, .shell-topbar .st-tab { color: var(--text-muted) !important; border: 1px solid transparent; transition: all .3s ease; }
.global-topbar .global-topbar-site { color: #fff !important; font-weight: 600 !important; text-shadow: 0 0 10px rgba(168,85,247,.45); }
.global-topbar .global-topbar-item:hover, .global-topbar .global-topbar-item.open, .shell-topbar .st-back:hover, .shell-topbar .st-tab:hover {
  color: #fff !important; background: rgba(168,85,247,.12) !important;
  box-shadow: 0 0 24px rgba(168,85,247,.18) !important; border-color: rgba(168,85,247,.25) !important;
}
.global-topbar .global-topbar-item.primary {
  background: var(--primary-gradient) !important; color: #fff !important; border-color: transparent !important;
}
.global-topbar .global-topbar-item.primary:hover { box-shadow: 0 0 24px rgba(168,85,247,.35) !important; }
.global-topbar .global-topbar-item.primary, .shell-topbar .st-tab.st-works { background: var(--primary-gradient) !important; color: #fff !important; border-color: transparent !important; }
/* 顶栏图标统一染白；头像与二维码是真实图片，必须排除，
   否则 brightness(0) invert(1) 会把用户头像照片刷成纯白圆圈 */
.global-topbar img:not(.global-topbar-qr-box img):not(.global-topbar-avatar img):not(.gt-um-avatar img),
.shell-topbar img:not(.global-topbar-qr-box img):not(.global-topbar-avatar img):not(.gt-um-avatar img) { filter: brightness(0) invert(1); }
/* 兜底：头像必须是原图。上面靠 :not() 排除，但个别页面（如 jimeng_center.html）
   内联过旧版规则，这里用 !important 强制解除染色，与二维码框同一手法 */
.global-topbar-avatar img, .gt-um-avatar img { filter: none !important; }
.global-topbar-qr-box img, .global-topbar-qr-box canvas { filter: none !important; }
.side-rail, #tenantSidebar .side-rail { display: none !important; }

/* 页面头部 */
.page-head { background: var(--bg-2) !important; border-bottom-color: var(--glass-border) !important; color: var(--text) !important; }
.page-title { color: #fff !important; }
.page-sub, .page-help { color: var(--text-muted) !important; }
.page-help { background: var(--bg-3) !important; border: 1px solid var(--glass-border) !important; }
.page-help i { color: var(--purple-glow) !important; }
.page-title-icon { background: var(--primary-gradient) !important; color: #fff !important; }

/* 工作区 */
.jm-left { background: var(--bg-2) !important; border-right-color: var(--glass-border) !important; color: var(--text) !important; }
.jm-right { background: var(--bg) !important; color: var(--text) !important; }
.jm-left *, .jm-right *, .page-head * { color: inherit !important; }
.jm-left a, .jm-right a { color: var(--purple-glow) !important; }

/* 卡片 / 结果头部 */
.card, .result-card, .dialog, .template-item, .result-pager .pg-btn, .upload-box, .result-head {
  background: var(--bg-3) !important; border: 1px solid var(--glass-border) !important; color: var(--text) !important;
}
.result-head { border-bottom: 1px solid var(--glass-border) !important; }
.card:hover, .result-card.can-play:hover, .template-item:hover { border-color: rgba(168,85,247,.45) !important; background: var(--bg-4) !important; }
.card-head h3, .card-head p, .section-label, .param-label, .result-head h3, .template-title, .detail-section-head, .detail-info-label, .detail-info-value { color: var(--text) !important; }
.card-head h3 i, .section-label i, .result-head h3 i { color: var(--purple-glow) !important; }
.result-head h3, .result-head h3::after { color: var(--text) !important; }
.result-head h3 i { background: rgba(168,85,247,.15) !important; }
.result-count { color: var(--text-muted) !important; }
.result-filters { background: var(--bg-4) !important; border-radius: 7px; padding: 3px; }
.result-filter { color: var(--text-muted) !important; border-radius: 5px; padding: 5px 10px; cursor: pointer; }
.result-filter:hover { color: #fff !important; background: rgba(168,85,247,.12) !important; }
.result-filter.active { background: var(--primary-gradient) !important; color: #fff !important; box-shadow: none !important; }

/* 模型 / 模式 / 胶囊 */
.model-tab, .mode-item, .pill, .fold-head, .switch-row, .prompt-bar-btn {
  background: var(--bg-3) !important; border-color: var(--glass-border) !important; color: var(--text) !important;
}
.model-tab .t, .model-tab .s, .mode-item, .pill { color: inherit !important; }
.param-label { text-align: center !important; }
.pill { text-align: center !important; }
.settings-summary { justify-content: center !important; }
.model-tab .s, .hint, .param-desc, .section-label .hint { color: var(--text-muted) !important; }
.model-tab:hover, .mode-item:hover, .pill:hover, .fold-head:hover, .switch-row:hover, .prompt-bar-btn:hover { border-color: rgba(168,85,247,.45) !important; background: var(--bg-4) !important; color: #fff !important; }
.model-tab.active, .pill.active { border-color: var(--purple) !important; background: rgba(168,85,247,.15) !important; color: #fff !important; box-shadow: 0 0 0 2px rgba(168,85,247,.15); }
.model-tab.active .t, .model-tab.active .s { color: #fff !important; }
.mode-item.active { background: var(--primary-gradient) !important; color: #fff !important; border-color: transparent !important; }

/* 表单 */
textarea.prompt-textarea, input, select { background: var(--bg-4) !important; border-color: var(--glass-border) !important; color: var(--text) !important; }
textarea.prompt-textarea::placeholder { color: var(--text-muted) !important; }
textarea.prompt-textarea:focus { border-color: var(--purple) !important; box-shadow: 0 0 0 3px rgba(168,85,247,.12); }

/* 按钮 */
.generate-btn, .prompt-bar-ai, .d-btn.primary, .empty .empty-action, .detail-btn.primary, .template-use, .result-filter.active {
  background: var(--primary-gradient) !important; color: #fff !important; border-color: transparent !important;
}
.generate-btn { justify-content: flex-start !important; }
.generate-btn .gen-shortcut { margin-left: 8px !important; }
.generate-btn .cost-badge { margin-left: auto !important; }
.generate-btn #genText { font-size: 17px !important; font-weight: 700 !important; letter-spacing: .8px !important; text-shadow: 0 1px 2px rgba(0,0,0,.25); }
.generate-btn #genIcon { font-size: 20px !important; margin-right: 4px; filter: drop-shadow(0 1px 2px rgba(0,0,0,.2)); }
.refresh-btn, .d-btn.ghost, .result-pager .pg-btn { background: var(--bg-3) !important; color: var(--text) !important; border-color: var(--glass-border) !important; }
.refresh-btn:hover, .result-pager .pg-btn:hover:not(.active) { border-color: var(--purple) !important; color: #fff !important; background: var(--bg-4) !important; }
.result-pager .pg-btn.active { background: var(--purple) !important; color: #fff !important; }

/* 上传 */
.upload-box { background: var(--bg-3) !important; }
.upload-box .plus-icon { background: rgba(168,85,247,.15); color: var(--purple-glow); }
.upload-box.dragover { background: rgba(168,85,247,.10) !important; border-color: var(--purple) !important; }

/* 状态 */
.rc-status.success { color: #86efac !important; background: rgba(22,163,74,.12) !important; }
.rc-status.pending { color: #fde047 !important; background: rgba(217,119,6,.12) !important; }
.rc-status.failed { color: #fca5a5 !important; background: rgba(220,38,38,.12) !important; }

/* 配置摘要 / 生成摘要 */
.settings-summary { color: var(--text-muted) !important; }
.settings-summary::before { color: var(--text-muted) !important; }
.settings-summary span { background: var(--bg-4) !important; color: var(--text) !important; border-radius: 4px; padding: 3px 6px; }
.generate-summary-label { color: var(--text-muted) !important; }
.generate-summary-value { color: var(--text) !important; }
.cost-badge { color: #fff !important; background: rgba(255,255,255,.18) !important; border: 1px solid rgba(255,255,255,.35) !important; margin-left: auto !important; padding: 4px 10px !important; font-weight: 600; letter-spacing: .3px; }
.cost-num { color: #facc15 !important; font-weight: 700; }
.gen-shortcut { color: #fff !important; background: rgba(255,255,255,.18) !important; border: 1px solid rgba(255,255,255,.35) !important; padding: 3px 7px !important; font-weight: 500; }

/* 空状态 / 弹窗 / 遮罩 */
.empty { background: var(--bg-3) !important; border-color: var(--glass-border) !important; color: var(--text) !important; }
.empty h4, .empty p { color: inherit !important; }
.empty .empty-icon { background: linear-gradient(145deg, rgba(168,85,247,.18), rgba(236,72,153,.18)); color: #fff; }
.empty .empty-action.secondary { background: var(--bg-4) !important; color: var(--text) !important; border-color: var(--glass-border) !important; }
.mask { background: rgba(11,7,22,.65) !important; }
.dialog { background: var(--bg-2) !important; border: 1px solid var(--glass-border) !important; color: var(--text) !important; }
.video-mask { background: rgba(11,7,22,.86) !important; }

/* 结果卡片信息 */
.rc-info, .rc-title, .rc-meta, .rc-status, .template-title, .template-meta { color: inherit !important; }
.rc-retry { color: var(--purple-glow) !important; background: rgba(168,85,247,.08) !important; border-color: rgba(168,85,247,.25) !important; }
.rc-fail-box { background: rgba(11,7,22,.95) !important; color: #fca5a5 !important; border: 1px solid rgba(220,38,38,.4) !important; }

/* 滚动条 */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: rgba(168,85,247,.25); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: rgba(168,85,247,.45); }

.result-card, .rc-info, .rc-cover, .rc-blocked-cover, .rc-meta {
  background: var(--bg-3) !important; color: var(--text) !important; border-color: var(--glass-border) !important;
}
.result-card.can-play:hover .rc-cover { background: var(--bg-4) !important; }
.rc-cover { background: var(--bg-4) !important; }
.rc-cover .rc-empty-icon { color: var(--text-muted) !important; }
.rc-cover .rc-play i { background: rgba(255,255,255,.92) !important; color: var(--purple) !important; }
.rc-blocked-cover { background: rgba(11,7,22,.92) !important; color: #fca5a5 !important; }
.rc-blocked-cover i { color: #f87171 !important; }
.rc-title { color: var(--text) !important; }
.rc-tags { gap: 6px; margin-top: 6px; }
.rc-tag { background: var(--bg-4) !important; color: var(--text-muted) !important; }
.rc-meta { color: var(--text-muted) !important; }
.rc-del { color: var(--text-muted) !important; }
.rc-del:hover { color: #fca5a5 !important; background: rgba(220,38,38,.12) !important; }

/* 视频详情弹窗（暗紫主题） */
.video-detail {
  background: var(--bg-3) !important;
  border: 1px solid var(--glass-border) !important;
  box-shadow: 0 20px 60px rgba(0,0,0,.5), 0 0 0 1px rgba(168,85,247,.15) inset !important;
  color: var(--text) !important;
}
.video-detail-left { background: var(--bg-4) !important; }
.video-detail-left video { background: #0a0612 !important; }
.video-detail-state { color: var(--text-muted) !important; }
.video-detail-state i { color: var(--text-muted) !important; }
.video-detail-state i.ri-loader-4-line { color: var(--purple-glow) !important; }
.video-detail-state i.ri-error-warning-line { color: #fbbf24 !important; }
.video-detail-right {
  background: var(--bg-3) !important;
  border-left-color: var(--glass-border) !important;
}
.video-detail-head { border-bottom-color: var(--glass-border) !important; }
.video-detail-name { color: var(--text) !important; }
.video-detail-type { color: var(--text-muted) !important; }
.video-detail-action {
  background: var(--bg-4) !important;
  border-color: var(--glass-border) !important;
  color: var(--text-muted) !important;
}
.video-detail-action:hover {
  border-color: rgba(168,85,247,.45) !important;
  color: var(--purple-glow) !important;
  background: rgba(168,85,247,.12) !important;
}
.detail-section-head { color: var(--text) !important; }
.detail-copy { color: var(--purple-glow) !important; }
.detail-desc {
  background: var(--bg-4) !important;
  color: var(--text-muted) !important;
  border: 1px solid var(--glass-border) !important;
}
.detail-info-row { border-bottom-color: var(--glass-border) !important; }
.detail-info-label { color: var(--text-muted) !important; }
.detail-info-value { color: var(--text) !important; }
.detail-status.success { color: #34d399 !important; background: rgba(52,211,153,.12) !important; }
.detail-status.pending { color: var(--text-muted) !important; background: var(--bg-4) !important; }
.detail-status.failed { color: #fca5a5 !important; background: rgba(220,38,38,.12) !important; }
.detail-ref { border-color: var(--glass-border) !important; }
.video-detail-foot { border-top-color: var(--glass-border) !important; }
.detail-btn {
  background: var(--bg-4) !important;
  border-color: var(--glass-border) !important;
  color: var(--text) !important;
}
.detail-btn:hover {
  border-color: rgba(168,85,247,.45) !important;
  color: var(--purple-glow) !important;
  background: rgba(168,85,247,.12) !important;
}
.detail-btn.primary {
  background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
  border-color: transparent !important;
  color: #fff !important;
  box-shadow: 0 4px 16px rgba(168,85,247,.35) !important;
}
.detail-btn.primary:hover {
  box-shadow: 0 6px 24px rgba(168,85,247,.5) !important;
  filter: brightness(1.1) !important;
}
.video-detail-close {
  background: var(--bg-4) !important;
  border-color: var(--glass-border) !important;
  color: var(--text-muted) !important;
}
.video-detail-close:hover {
  border-color: rgba(239,68,68,.5) !important;
  color: #fca5a5 !important;
  background: rgba(220,38,38,.12) !important;
}
.video-detail-share {
  background: rgba(251,191,36,.1) !important;
  border: 1px solid rgba(251,191,36,.3) !important;
  color: #fbbf24 !important;
}
.video-detail-share:hover {
  background: rgba(251,191,36,.18) !important;
  color: #fcd34d !important;
}
.video-detail-share i, .video-detail-share strong { color: #fbbf24 !important; }
.video-detail-nav {
  border-color: rgba(168,85,247,.4) !important;
  background: rgba(15,10,30,.7) !important;
  color: #fff !important;
}
.video-detail-nav:hover { background: rgba(168,85,247,.5) !important; }
.video-detail-body::-webkit-scrollbar-thumb { background: rgba(168,85,247,.25) !important; }

/* 图片详情弹窗（暗紫主题，2026-09-29 补齐，对齐视频详情弹窗） */
.image-mask { background: rgba(11,7,22,.86) !important; }
.image-detail {
  background: var(--bg-3) !important;
  border: 1px solid var(--glass-border) !important;
  box-shadow: 0 20px 60px rgba(0,0,0,.5), 0 0 0 1px rgba(168,85,247,.15) inset !important;
  color: var(--text) !important;
}
.image-detail-left { background: var(--bg-4) !important; }
.image-detail-left > img { background: #0a0612 !important; }
.image-detail-media img { background: #0a0612 !important; }
.image-detail-state { color: var(--text-muted) !important; }
.image-detail-state i { color: var(--text-muted) !important; }
.image-detail-state i.ri-loader-4-line { color: var(--purple-glow) !important; }
.image-detail-state i.ri-error-warning-line { color: #fbbf24 !important; }
.image-detail-right {
  background: var(--bg-3) !important;
  border-left-color: var(--glass-border) !important;
}
.image-detail-head { border-bottom-color: var(--glass-border) !important; }
.image-detail-name { color: var(--text) !important; }
.image-detail-type { color: var(--text-muted) !important; }
.image-detail-avatar { background: var(--primary-gradient) !important; }
.image-detail-action {
  background: var(--bg-4) !important;
  border-color: var(--glass-border) !important;
  color: var(--text-muted) !important;
}
.image-detail-action:hover {
  border-color: rgba(168,85,247,.45) !important;
  color: var(--purple-glow) !important;
  background: rgba(168,85,247,.12) !important;
}
.image-detail-close {
  background: var(--bg-4) !important;
  border-color: var(--glass-border) !important;
  color: var(--text-muted) !important;
}
.image-detail-close:hover {
  border-color: rgba(239,68,68,.5) !important;
  color: #fca5a5 !important;
  background: rgba(220,38,38,.12) !important;
}
.image-detail-foot { border-top-color: var(--glass-border) !important; }
.image-detail-body::-webkit-scrollbar-thumb { background: rgba(168,85,247,.25) !important; }
/* 组图画廊 */
.group-main { background: #0a0612 !important; }
.group-thumb { background: var(--bg-4) !important; }
.group-thumb.active { border-color: var(--purple) !important; }
.group-thumb-pending { background: rgba(168,85,247,.08) !important; border-color: rgba(168,85,247,.3) !important; }
.group-thumb-failed { background: rgba(220,38,38,.1) !important; border-color: rgba(220,38,38,.35) !important; }
/* 违规状态徽标 */
.detail-status.blocked { color: #fca5a5 !important; background: rgba(220,38,38,.12) !important; }
/* 图片分享到平台条（金色，与视频详情分享条一致） */
.image-detail-share {
  background: rgba(251,191,36,.1) !important;
  border-top-color: rgba(251,191,36,.3) !important;
  color: #fbbf24 !important;
}
.image-detail-share:hover { background: rgba(251,191,36,.18) !important; color: #fcd34d !important; }
.image-detail-share i, .image-detail-share strong { color: #fbbf24 !important; }

/* layui layer 弹窗容器（暗紫主题） */
.layui-layer-page .layui-layer-content { background: var(--bg-3) !important; color: var(--text) !important; }
.layui-layer {
  background: var(--bg-3) !important;
  border: 1px solid var(--glass-border) !important;
  border-radius: 16px !important;
  box-shadow: 0 24px 64px rgba(0,0,0,.55), 0 0 0 1px rgba(168,85,247,.12) inset !important;
  overflow: hidden !important;
}
.layui-layer-shade { background: rgba(8,5,20,.75) !important; backdrop-filter: blur(4px); }
/* 弹窗右上角关闭 ×（R98）
   原来这里只有一行 filter: invert(1) hue-rotate(180deg) brightness(1.2)。两个问题叠在一起：
   1) 本主题下这个图标本来就是白的，再反相就成了黑的，落在深紫弹窗上等于看不见；
   2) layui 的 close2 是"外置圆钮"，position 在 right/top:-28px，也就是画在弹窗框外面，
      而上面 .layui-layer 被本主题设了 overflow:hidden —— 圆钮被裁掉，只剩角落上一块白，
      就是用户截图里那个"看不见 ×、只有个白点"的样子。
   所以除了去掉反相，还要把按钮收回弹窗内部并撑大点击区。 */
.layui-layer-setwin { z-index: 10; }
.layui-layer-setwin .layui-layer-close1,
.layui-layer-setwin .layui-layer-close2 {
  filter: none !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  position: absolute !important;
  right: 10px !important;
  top: 10px !important;
  width: 30px !important;
  height: 30px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, .10) !important;
  color: #e8e4f8 !important;
  font-size: 16px !important;
  line-height: 1 !important;
  opacity: 1 !important;
  cursor: pointer !important;
  transition: background .18s, color .18s;
}
.layui-layer-setwin .layui-layer-close1:hover,
.layui-layer-setwin .layui-layer-close2:hover {
  background: rgba(168, 85, 247, .34) !important;
  color: #ffffff !important;
}

/* layer 弹窗按钮区 */
.layui-layer-btn {
  border-top: 1px solid var(--glass-border);
  padding: 12px 16px !important;
  text-align: right !important;
}
.layui-layer-btn a {
  height: 34px !important;
  line-height: 32px !important;
  padding: 0 20px !important;
  border-radius: 8px !important;
  background: rgba(30,22,55,0.6) !important;
  border: 1px solid rgba(168,85,247,0.25) !important;
  color: #e8e4f8 !important;
  transition: all .25s !important;
}
.layui-layer-btn a:hover {
  background: rgba(168,85,247,0.18) !important;
  border-color: rgba(168,85,247,0.5) !important;
}
.layui-layer-btn .layui-layer-btn0 {
  background: linear-gradient(135deg,#7c3aed,#a855f7) !important;
  border-color: transparent !important;
  color: #fff !important;
}
.layui-layer-btn .layui-layer-btn0:hover {
  background: linear-gradient(135deg,#8b5cf6,#c084fc) !important;
  box-shadow: 0 4px 16px rgba(168,85,247,.35) !important;
}

/* 模板详情弹窗（暗紫主题） */
.template-detail { background: var(--bg-3) !important; color: var(--text) !important; }
.template-detail-media { background: var(--bg-4) !important; }
.template-detail-media img, .template-detail-media video { background: #0a0612 !important; }
.template-detail-title { color: var(--text) !important; }
.template-detail-label { color: var(--text-muted) !important; }
.template-detail-prompt {
  background: var(--bg-4) !important;
  border-color: var(--glass-border) !important;
  color: var(--text-muted) !important;
}
.template-copy { color: var(--purple-glow) !important; }
.template-detail-use {
  background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
  color: #fff !important;
  box-shadow: 0 4px 16px rgba(168,85,247,.35) !important;
}
.template-detail-use:hover {
  box-shadow: 0 6px 24px rgba(168,85,247,.5) !important;
  filter: brightness(1.1) !important;
}
.template-frames .template-frame-item {
  border-color: var(--glass-border) !important;
  background: var(--bg-4) !important;
}

/* 一键分享/上传模板弹窗（暗紫主题） */
.upload-tpl-overlay { background: rgba(8,5,20,.7) !important; backdrop-filter: blur(8px) !important; }
.upload-tpl-panel {
  background: var(--bg-3) !important;
  color: var(--text) !important;
  border: 1px solid var(--glass-border) !important;
  box-shadow: 0 30px 80px rgba(0,0,0,.55), 0 0 0 1px rgba(168,85,247,.12) inset !important;
}
.upload-tpl-head {
  background: linear-gradient(135deg, #7c3aed 0%, #a855f7 100%) !important;
}
.upload-tpl-head-icon { background: rgba(255,255,255,.18) !important; }
.upload-tpl-body::-webkit-scrollbar-thumb { background: rgba(168,85,247,.25) !important; }
.upload-tpl-label { color: var(--text) !important; }
.upload-tpl-label em {
  color: #fbbf24 !important;
  background: rgba(251,191,36,.12) !important;
}
.upload-tpl-label em.opt {
  color: var(--text-muted) !important;
  background: var(--bg-4) !important;
}
.upload-tpl-input, .upload-tpl-textarea {
  background: var(--bg-4) !important;
  border-color: var(--glass-border) !important;
  color: var(--text) !important;
}
.upload-tpl-input:focus, .upload-tpl-textarea:focus {
  background: var(--bg-3) !important;
  border-color: rgba(168,85,247,.55) !important;
  box-shadow: 0 0 0 3px rgba(168,85,247,.15) !important;
}
.upload-tpl-hint, .upload-tpl-count { color: var(--text-muted) !important; }
.upload-tpl-earn { color: #fbbf24 !important; }
.upload-tpl-earn strong { color: #fcd34d !important; }
.up-select-trigger {
  background: var(--bg-4) !important;
  border-color: var(--glass-border) !important;
  color: var(--text) !important;
}
.up-select-trigger:hover {
  background: var(--bg-3) !important;
  border-color: rgba(168,85,247,.45) !important;
}
.up-select-trigger i { color: var(--text-muted) !important; }
.upload-tpl-select.open .up-select-trigger {
  background: var(--bg-3) !important;
  border-color: rgba(168,85,247,.55) !important;
  box-shadow: 0 0 0 3px rgba(168,85,247,.15) !important;
}
.upload-tpl-select.open .up-select-trigger i { color: var(--purple-glow) !important; }
.up-select-placeholder { color: var(--text-muted) !important; }
.up-select-dropdown {
  background: var(--bg-3) !important;
  border-color: var(--glass-border) !important;
  box-shadow: 0 16px 40px rgba(0,0,0,.4) !important;
}
.up-select-list::-webkit-scrollbar-thumb { background: rgba(168,85,247,.25) !important; }
.up-select-item { color: var(--text) !important; }
.up-select-item:hover { background: rgba(168,85,247,.1) !important; }
.up-select-item.active {
  background: rgba(168,85,247,.18) !important;
  color: var(--purple-glow) !important;
}
.up-select-empty { color: var(--text-muted) !important; }
.upload-tpl-upload { background: var(--bg-4) !important; }
.upload-tpl-placeholder {
  background: linear-gradient(135deg, rgba(168,85,247,.08) 0%, rgba(124,58,237,.12) 100%) !important;
  border-color: rgba(168,85,247,.35) !important;
}
.upload-tpl-placeholder-icon {
  background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
  box-shadow: 0 6px 16px rgba(168,85,247,.35) !important;
}
.upload-tpl-placeholder-text { color: var(--text) !important; }
.upload-tpl-placeholder-sub { color: var(--text-muted) !important; }
.upload-tpl-preview { background: #0a0612 !important; }
.upload-tpl-tips {
  background: linear-gradient(135deg, rgba(168,85,247,.08), rgba(124,58,237,.1)) !important;
  color: var(--text-muted) !important;
  border: 1px solid var(--glass-border) !important;
}
.upload-tpl-tips i { color: var(--purple-glow) !important; }
.upload-tpl-footer {
  border-top-color: var(--glass-border) !important;
  background: var(--bg-3) !important;
}
.upload-tpl-submit {
  background: linear-gradient(135deg, #a855f7 0%, #7c3aed 100%) !important;
  box-shadow: 0 6px 22px rgba(168,85,247,.4) !important;
}
.upload-tpl-submit:hover {
  box-shadow: 0 10px 30px rgba(168,85,247,.55) !important;
  filter: brightness(1.08) !important;
}

/* 参考顶部导航 */
.jm-top-nav {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  padding: 12px 24px; flex-wrap: wrap;
  background: var(--bg-2) !important;
  border-bottom: 1px solid var(--glass-border);
}
.jm-top-nav a {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 8px 16px; border-radius: 100px;
  font-size: 13px; color: var(--text-muted); text-decoration: none;
  border: 1px solid transparent; transition: all .3s ease; white-space: nowrap;
}
.jm-top-nav a:hover { color: #fff; background: rgba(168,85,247,.12); border-color: rgba(168,85,247,.25); }
.jm-top-nav a.active { color: #fff; background: var(--primary-gradient); border-color: transparent; box-shadow: 0 4px 12px rgba(168,85,247,.2); }
.jm-top-nav .nav-dropdown { position: relative; }
.jm-top-nav .nav-dropdown::after {
  content: ''; position: absolute; top: 100%; left: 0; right: 0; height: 10px; z-index: 99;
}
.jm-top-nav .dropdown-panel {
  position: absolute; top: calc(100% + 8px); left: 50%; transform: translateX(-50%);
  min-width: 180px; padding: 8px; border-radius: 12px;
  background: var(--bg-2) !important; border: 1px solid var(--glass-border) !important;
  box-shadow: 0 16px 40px rgba(0,0,0,.35);
  opacity: 0; visibility: hidden; pointer-events: none; transition: .18s ease;
  z-index: 100;
}
.jm-top-nav .nav-dropdown:hover .dropdown-panel,
.jm-top-nav .nav-dropdown:hover::after { opacity: 1; visibility: visible; pointer-events: auto; }
.jm-top-nav .dropdown-panel:hover { opacity: 1; visibility: visible; pointer-events: auto; }
.jm-top-nav .dropdown-panel a {
  display: flex; align-items: center; gap: 8px; width: 100%; box-sizing: border-box;
  padding: 8px 12px; border-radius: 8px; margin: 2px 0;
  color: var(--text-muted); font-size: 13px; text-decoration: none; transition: .15s;
}
.jm-top-nav .dropdown-panel a:hover { color: #fff; background: rgba(168,85,247,.12); }

/* 把分类菜单嵌入顶部栏中间 —— 专业重排 */
.global-topbar {
  position: relative;
  padding: 0 24px !important;
  height: 64px !important;
  display: flex !important;
  align-items: center !important;
  background: linear-gradient(180deg, rgba(18,12,37,.95) 0%, rgba(11,7,22,.92) 100%) !important;
  backdrop-filter: blur(20px) saturate(1.3) !important;
  border-bottom: 1px solid rgba(168,85,247,.18) !important;
  box-shadow: 0 1px 0 rgba(255,255,255,.04) inset, 0 8px 30px rgba(0,0,0,.3) !important;
}
.global-topbar-left { height: 100%; display: flex; align-items: center; margin-left: 80px; }
.global-topbar-right { height: 100%; display: flex; align-items: center; }
.global-topbar-center {
  position: absolute;
  left: calc(50% - 100px);
  top: 50%;
  transform: translate(-50%, -50%);
  max-width: 60%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 5;
}
@media (max-width: 1200px) {
  .global-topbar-center { max-width: 50%; }
  .global-topbar-center .jm-nav-list { gap: 0; }
  .global-topbar-center .jm-top-nav a { padding: 7px 12px; font-size: 12px; }
  .global-topbar .global-topbar-text { display: none; }
}
.global-topbar-center .jm-top-nav {
  padding: 0; margin: 0; background: transparent !important; border: none !important;
  backdrop-filter: none; box-shadow: none;
}
.global-topbar-center .jm-nav-list {
  display: flex; align-items: center; gap: 2px; flex-wrap: nowrap;
  padding: 4px;
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.06);
  border-radius: 100px;
}
.global-topbar-center .jm-top-nav a {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 8px 16px; font-size: 13px; font-weight: 500; color: rgba(255,255,255,.7);
  border: 1px solid transparent; border-radius: 100px; white-space: nowrap; transition: all .25s ease;
}
.global-topbar-center .jm-top-nav a:hover {
  color: #fff; background: rgba(168,85,247,.15);
  border-color: rgba(168,85,247,.2);
}
.global-topbar-center .jm-top-nav a.active {
  color: #fff;
  background: linear-gradient(135deg, rgba(168,85,247,.9) 0%, rgba(236,72,153,.9) 100%);
  box-shadow: 0 4px 14px rgba(168,85,247,.35), 0 1px 0 rgba(255,255,255,.15) inset;
  border-color: transparent;
}
.global-topbar-center .jm-top-nav .dropdown-panel {
  top: calc(100% + 8px); left: 50%; transform: translateX(-50%) translateY(6px);
  min-width: 160px; padding: 8px;
  background: rgba(18, 12, 37, 0.95) !important; backdrop-filter: blur(20px);
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 12px;
  box-shadow: 0 20px 50px rgba(0,0,0,0.5);
  opacity: 0; visibility: hidden; pointer-events: none; transition: all .2s ease;
  z-index: 101;
}
.global-topbar-center .jm-top-nav .dropdown-panel::before {
  content: ''; position: absolute; top: -8px; left: 0; right: 0; height: 8px;
}
.global-topbar-center .jm-top-nav .nav-dropdown:hover .dropdown-panel,
.global-topbar-center .jm-top-nav .nav-dropdown.open .dropdown-panel {
  opacity: 1; visibility: visible; pointer-events: auto; transform: translateX(-50%) translateY(0);
}
.global-topbar-center .jm-top-nav .dropdown-panel a {
  display: flex; align-items: center; gap: 8px;
  padding: 10px 14px; font-size: 14px; color: var(--text-muted, rgba(255,255,255,.7));
  border-radius: 10px; border: 1px solid transparent;
  transition: all .25s ease; white-space: nowrap;
}
.global-topbar-center .jm-top-nav .dropdown-panel a:hover {
  color: #fff; background: rgba(168,85,247,.15); border-color: rgba(168,85,247,.25);
}
.global-topbar-center .jm-top-nav .dropdown-panel a.active {
  color: #fff; background: rgba(168,85,247,.22); border-color: rgba(168,85,247,.35);
}

/* 去除 AI 水印开关 暗色化 */
.wm-user-toggle {
  display: inline-flex !important;
  background: var(--bg-4) !important; border-color: var(--glass-border) !important;
}
.wm-user-toggle:hover { border-color: rgba(168,85,247,.35) !important; }
.wm-user-label { color: var(--text-muted) !important; }
.wm-switch { background: #52c41a !important; }
.wm-user-toggle.off .wm-switch { background: #475569 !important; }

/* 手机访问面板暗色化 */
.global-topbar-mobile-panel {
  background: linear-gradient(160deg, var(--bg-2) 0%, var(--bg-3) 100%) !important;
  border-color: var(--glass-border) !important;
  box-shadow: 0 28px 70px rgba(0,0,0,.4), 0 4px 12px rgba(0,0,0,.2) !important;
}
.global-topbar-mobile-title, .global-topbar-mobile-title i { color: #fff !important; }
.global-topbar-mobile-desc, .global-topbar-mobile-desc i { color: var(--text-muted) !important; }
.global-topbar-mobile-tab { background: var(--bg-4) !important; color: var(--text) !important; }
.global-topbar-mobile-tab:hover { background: var(--purple) !important; color: #fff !important; }
.global-topbar-mobile-tab.active { background: var(--primary-gradient) !important; color: #fff !important; box-shadow: 0 5px 14px rgba(168,85,247,.3) !important; }

/* 用户下拉菜单暗色化 */
.global-topbar-user-menu {
  background: var(--bg-2) !important; border-color: var(--glass-border) !important;
  box-shadow: 0 18px 48px rgba(0,0,0,.35) !important;
}
.gt-um-head { border-bottom: 1px solid var(--glass-border); }
.gt-um-name { color: #fff !important; }
.gt-um-phone { color: var(--text-muted) !important; }
.gt-um-divider { background: var(--glass-border) !important; }
.gt-um-item { color: var(--text) !important; }
.gt-um-item:hover { background: var(--bg-4) !important; color: #fff !important; }
.gt-um-item i, .gt-um-item .gt-um-val, .gt-um-item .gt-um-arrow { color: var(--text-muted) !important; }
.gt-um-item:hover i, .gt-um-item:hover .gt-um-val, .gt-um-item:hover .gt-um-arrow { color: #fff !important; }
.gt-um-item.danger { color: #fca5a5 !important; }
.gt-um-item.danger i { color: #f87171 !important; }
.gt-um-switch { background: var(--bg-4) !important; }
.gt-um-switch.on { background: var(--purple) !important; }

/* 顶部 logo / 站点名更清晰 */
.global-topbar-site {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 4px 14px 4px 5px; border-radius: 999px;
  background: rgba(255,255,255,0.05); border: 1px solid rgba(168,85,247,0.25);
  box-shadow: 0 4px 14px rgba(0,0,0,.2), inset 0 1px 0 rgba(255,255,255,.06);
  font-weight: 700; color: #fff !important; letter-spacing: .5px; text-shadow: 0 0 10px rgba(168,85,247,.55), 0 0 18px rgba(168,85,247,.3);
  background-image: none !important; -webkit-background-clip: initial !important; background-clip: initial !important; -webkit-text-fill-color: #fff !important;
}
.global-topbar-brand:hover .global-topbar-site { background-image: none !important; -webkit-text-fill-color: #fff !important; }
.global-topbar-site i, .global-topbar-site img:first-child {
  display: inline-flex; align-items: center; justify-content: center;
  width: 30px; height: 30px; border-radius: 10px;
  background: linear-gradient(135deg, #a855f7, #ec4899);
  color: #fff !important; font-size: 18px;
  box-shadow: 0 4px 12px rgba(168,85,247,.35);
}
.global-topbar-site img:first-child { padding: 4px; object-fit: contain; filter: brightness(0) invert(1); }

/* ===== 隐藏左侧边栏 + 调整主内容区 ===== */
#tenantSidebar { display: none !important; }
.page-body { margin-left: 0 !important; }
.shell-main { margin-left: 0 !important; }

/* ===== 顶部导航（顶部栏居中嵌入） ===== */
.jm-top-nav {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  padding: 12px 24px; flex-wrap: wrap;
  background: var(--bg-2) !important;
  border-bottom: 1px solid var(--glass-border);
}
.jm-top-nav a {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 8px 16px; border-radius: 100px;
  font-size: 13px; color: var(--text-muted); text-decoration: none;
  border: 1px solid transparent; transition: all .3s ease; white-space: nowrap;
}
.jm-top-nav a:hover { color: #fff; background: rgba(168,85,247,.12); border-color: rgba(168,85,247,.25); }
.jm-top-nav a.active { color: #fff; background: var(--primary-gradient); border-color: transparent; box-shadow: 0 4px 12px rgba(168,85,247,.2); }
.jm-top-nav .nav-dropdown { position: relative; }
.jm-top-nav .nav-dropdown::after {
  content: ''; position: absolute; top: 100%; left: 0; right: 0; height: 10px; z-index: 99;
}
.jm-top-nav .dropdown-panel {
  position: absolute; top: calc(100% + 8px); left: 50%; transform: translateX(-50%);
  min-width: 180px; padding: 8px; border-radius: 12px;
  background: var(--bg-2) !important; border: 1px solid var(--glass-border) !important;
  box-shadow: 0 16px 40px rgba(0,0,0,.35);
  opacity: 0; visibility: hidden; pointer-events: none; transition: .18s ease;
  z-index: 100;
}
.jm-top-nav .nav-dropdown:hover .dropdown-panel,
.jm-top-nav .nav-dropdown:hover::after { opacity: 1; visibility: visible; pointer-events: auto; }
.jm-top-nav .dropdown-panel:hover { opacity: 1; visibility: visible; pointer-events: auto; }
.jm-top-nav .dropdown-panel a {
  display: flex; align-items: center; gap: 8px; width: 100%; box-sizing: border-box;
  padding: 8px 12px; border-radius: 8px; margin: 2px 0;
  color: var(--text-muted); font-size: 13px; text-decoration: none; transition: .15s;
}
.jm-top-nav .dropdown-panel a:hover { color: #fff; background: rgba(168,85,247,.12); }

/* 把分类菜单嵌入顶部栏中间 —— 专业重排 */
.global-topbar {
  position: relative;
  padding: 0 24px !important;
  height: 64px !important;
  display: flex !important;
  align-items: center !important;
  background: linear-gradient(180deg, rgba(18,12,37,.95) 0%, rgba(11,7,22,.92) 100%) !important;
  backdrop-filter: blur(20px) saturate(1.3) !important;
  -webkit-backdrop-filter: blur(20px) saturate(1.3) !important;
  border-bottom: 1px solid rgba(168,85,247,.18) !important;
  box-shadow: 0 1px 0 rgba(255,255,255,.04) inset, 0 8px 30px rgba(0,0,0,.3) !important;
}
.global-topbar-left { height: 100%; display: flex; align-items: center; margin-left: 80px; }
.global-topbar-right { height: 100%; display: flex; align-items: center; }
.global-topbar-center {
  position: absolute;
  left: calc(50% - 100px);
  top: 50%;
  transform: translate(-50%, -50%);
  max-width: 60%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 5;
}
@media (max-width: 1200px) {
  .global-topbar-center { max-width: 50%; }
  .global-topbar-center .jm-nav-list { gap: 0; }
  .global-topbar-center .jm-top-nav a { padding: 7px 12px; font-size: 12px; }
  .global-topbar .global-topbar-text { display: none; }
}
.global-topbar-center .jm-top-nav {
  padding: 0; margin: 0; background: transparent !important; border: none !important;
  backdrop-filter: none; box-shadow: none;
}
.global-topbar-center .jm-nav-list {
  display: flex; align-items: center; gap: 2px; flex-wrap: nowrap;
  padding: 4px;
  background: rgba(255,255,255,.03);
  border: 1px solid rgba(255,255,255,.06);
  border-radius: 100px;
}
.global-topbar-center .jm-top-nav a {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 8px 16px; font-size: 13px; font-weight: 500; color: rgba(255,255,255,.7);
  border: 1px solid transparent; border-radius: 100px; white-space: nowrap; transition: all .25s ease;
}
.global-topbar-center .jm-top-nav a:hover {
  color: #fff; background: rgba(168,85,247,.15);
  border-color: rgba(168,85,247,.2);
}
.global-topbar-center .jm-top-nav a.active {
  color: #fff;
  background: linear-gradient(135deg, rgba(168,85,247,.9) 0%, rgba(236,72,153,.9) 100%);
  box-shadow: 0 4px 14px rgba(168,85,247,.35), 0 1px 0 rgba(255,255,255,.15) inset;
  border-color: transparent;
}
.global-topbar-center .jm-top-nav .dropdown-panel {
  top: calc(100% + 8px); left: 50%; transform: translateX(-50%) translateY(6px);
  min-width: 160px; padding: 8px;
  background: rgba(18, 12, 37, 0.95) !important; backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 12px;
  box-shadow: 0 20px 50px rgba(0,0,0,0.5);
  opacity: 0; visibility: hidden; pointer-events: none; transition: all .2s ease;
  z-index: 101;
}
.global-topbar-center .jm-top-nav .dropdown-panel::before {
  content: ''; position: absolute; top: -8px; left: 0; right: 0; height: 8px;
}
.global-topbar-center .jm-top-nav .nav-dropdown:hover .dropdown-panel,
.global-topbar-center .jm-top-nav .nav-dropdown.open .dropdown-panel {
  opacity: 1; visibility: visible; pointer-events: auto; transform: translateX(-50%) translateY(0);
}
.global-topbar-center .jm-top-nav .dropdown-panel a {
  display: flex; align-items: center; gap: 8px;
  padding: 10px 14px; font-size: 14px; color: var(--text-muted, rgba(255,255,255,.7));
  border-radius: 10px; border: 1px solid transparent;
  transition: all .25s ease; white-space: nowrap;
}
.global-topbar-center .jm-top-nav .dropdown-panel a:hover {
  color: #fff; background: rgba(168,85,247,.15); border-color: rgba(168,85,247,.25);
}
.global-topbar-center .jm-top-nav .dropdown-panel a.active {
  color: #fff; background: rgba(168,85,247,.22); border-color: rgba(168,85,247,.35);
}

/* ===== 页面头部暗色化 ===== */
.page-head {
  background: transparent !important;
  border-bottom: 1px solid var(--glass-border) !important;
}
.page-title { color: #fff !important; }
.page-sub { color: var(--text-muted) !important; }
.page-title-icon {
  background: linear-gradient(135deg, #a855f7, #ec4899) !important;
  box-shadow: 0 4px 14px rgba(168,85,247,.35) !important;
}
.page-help { color: var(--text-muted) !important; }
.page-help i { color: var(--purple-glow) !important; }

/* ===== 创作区左右面板暗色化 ===== */
.jm-left, .jm-right {
  background: transparent !important;
  border-color: var(--glass-border) !important;
}
.jm-layout { background: transparent !important; }

/* ===== 卡片暗色化 ===== */
.card {
  background: rgba(30, 20, 55, 0.65) !important;
  border: 1px solid var(--glass-border) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  box-shadow: 0 4px 16px rgba(0,0,0,.2) !important;
}
.card-head h3 { color: #fff !important; }
.card-head p { color: var(--text-muted) !important; }
.card-step {
  background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
  color: #fff !important;
}

/* ===== 表单元素暗色化 ===== */
.form-label { color: var(--text) !important; }
.form-input, .form-select, .form-textarea {
  background: rgba(15, 10, 30, 0.6) !important;
  border-color: var(--glass-border) !important;
  color: var(--text) !important;
}
.form-input:focus, .form-select:focus, .form-textarea:focus {
  border-color: rgba(168,85,247,.5) !important;
  box-shadow: 0 0 0 3px rgba(168,85,247,.12) !important;
}
.form-input::placeholder, .form-textarea::placeholder { color: var(--text-muted) !important; }

/* ===== 按钮通用暗色化 ===== */
.btn-primary {
  background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
  border-color: transparent !important;
  box-shadow: 0 4px 14px rgba(168,85,247,.35) !important;
  color: #fff !important;
}
.btn-primary:hover {
  box-shadow: 0 6px 20px rgba(168,85,247,.5) !important;
  filter: brightness(1.08);
}
.btn-default, .btn-ghost {
  background: rgba(30, 20, 55, 0.6) !important;
  border-color: var(--glass-border) !important;
  color: var(--text) !important;
}
.btn-default:hover, .btn-ghost:hover {
  background: rgba(168,85,247,.12) !important;
  border-color: rgba(168,85,247,.35) !important;
  color: var(--purple-glow) !important;
}

/* ===== 结果卡片暗色化 ===== */
.result-card {
  background: rgba(30, 20, 55, 0.6) !important;
  border: 1px solid var(--glass-border) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.result-card:hover {
  border-color: rgba(168,85,247,.4) !important;
  box-shadow: 0 8px 28px rgba(168,85,247,.15) !important;
}
.rc-info .rc-title { color: #fff !important; }
.rc-info .rc-desc { color: var(--text-muted) !important; }

/* ===== 结果头部 / 过滤器暗色化 ===== */
.result-head, .result-filter {
  background: transparent !important;
  border-color: var(--glass-border) !important;
}
.result-filter-item {
  background: rgba(30, 20, 55, 0.5) !important;
  border-color: var(--glass-border) !important;
  color: var(--text-muted) !important;
}
.result-filter-item.active {
  background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
  color: #fff !important;
  border-color: transparent !important;
}

/* ===== 分页暗色化 ===== */
.pagination button, .pagination .page-btn,
.cw-page-btn, .pg-btn, .page-btn, .pager-btn {
  background: rgba(30, 20, 55, 0.6) !important;
  border-color: var(--glass-border) !important;
  color: var(--text) !important;
}
.pagination button:hover, .pagination .page-btn:hover,
.cw-page-btn:hover, .pg-btn:hover, .page-btn:hover, .pager-btn:hover {
  background: rgba(168,85,247,.15) !important;
  border-color: rgba(168,85,247,.35) !important;
  color: var(--purple-glow) !important;
}
.pagination button.active, .pagination .page-btn.active,
.cw-page-btn.active, .pg-btn.active, .page-btn.active {
  background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
  color: #fff !important;
  border-color: transparent !important;
}

/* ===== 空状态暗色化 ===== */
.empty-state { color: var(--text-muted) !important; }
.empty-state-icon { color: var(--purple-glow) !important; }

/* 登录/未登录空状态大卡片 */
.login-empty, .empty-tip, .empty-card, .no-data-card,
.empty-placeholder, .empty-content, .login-empty-wrap {
  background: rgba(30, 20, 55, 0.5) !important;
  border: 1px solid rgba(168, 85, 247, 0.2) !important;
  color: #f5f3ff !important;
}
.login-empty h2, .login-empty h3, .empty-tip h3,
.empty-card h2, .empty-card h3 {
  color: #fff !important;
}
.login-empty p, .empty-tip p, .empty-card p {
  color: #b8b0d0 !important;
}
.login-empty-status, .empty-status, .status-tip {
  background: rgba(168, 85, 247, 0.15) !important;
  color: #c084fc !important;
}
.login-empty-btn, .empty-btn, .empty-action-btn {
  background: linear-gradient(135deg, #a855f7, #ec4899) !important;
  color: #fff !important;
  border-color: transparent !important;
}

/* 未登录案例卡片 - 暗色主题适配 */
.login-empty-case {
  background: rgba(30, 20, 55, 0.5) !important;
  border: 1px solid rgba(168, 85, 247, 0.2) !important;
  border-radius: 16px !important;
  color: #f5f3ff !important;
  overflow: hidden !important;
}
.login-empty-case:hover {
  border-color: rgba(168, 85, 247, 0.4) !important;
  box-shadow: 0 8px 32px rgba(168, 85, 247, 0.2) !important;
  transform: translateY(-2px) !important;
  transition: all 0.3s ease !important;
}
.login-empty-case-img {
  background: rgba(0, 0, 0, 0.3) !important;
}
.login-empty-case-title,
.login-empty-case .case-title,
.login-empty-case .login-empty-case-title,
.login-empty-case-info,
.login-empty-case span {
  color: #e9d5ff !important;
  background: transparent !important;
}
.login-empty-case .case-tag,
.login-empty-case .tag,
.login-empty-case .login-empty-case-tag {
  background: rgba(168, 85, 247, 0.3) !important;
  color: #e9d5ff !important;
  border: 1px solid rgba(168, 85, 247, 0.3) !important;
  backdrop-filter: blur(8px) !important;
}
.login-empty-case .login-empty-case-mask {
  background: linear-gradient(to top, rgba(30, 20, 55, 0.8) 0%, transparent 100%) !important;
}

/* 案例标题栏 */
.login-empty-cases-title {
  color: #f5f3ff !important;
}
.login-empty-cases-title span {
  color: #fff !important;
}
.login-empty-cases-title em {
  color: #a78bfa !important;
  font-style: normal !important;
}

/* 模式切换胶囊按钮 */
.mode-capsule, .mode-group, .tab-capsule, .capsule-group,
.switch-capsule, .segmented-control, .mode-bar {
  background: rgba(30, 20, 55, 0.6) !important;
  border: 1px solid rgba(168, 85, 247, 0.2) !important;
}
.mode-capsule button, .mode-capsule .capsule-item,
.capsule-group button, .segmented-control button,
.mode-bar .mode-item {
  background: transparent !important;
  color: #b8b0d0 !important;
}
.mode-capsule button.active, .mode-capsule .capsule-item.active,
.capsule-group button.active, .segmented-control button.active,
.mode-bar .mode-item.active {
  background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
  color: #fff !important;
  box-shadow: 0 2px 8px rgba(168, 85, 247, 0.3) !important;
}

/* ===== 滚动条全局暗色化 ===== */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb {
  background: rgba(168,85,247,.2) !important;
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: rgba(168,85,247,.35) !important;
}

/* ===== 模型 / 模式 / 胶囊按钮暗色化 ===== */
.model-tabs, .mode-tabs {
  background: rgba(15, 10, 30, 0.5) !important;
  border-color: var(--glass-border) !important;
}
.model-tab, .mode-tab {
  color: var(--text-muted) !important;
  border-color: transparent !important;
}
.model-tab:hover, .mode-tab:hover {
  background: rgba(168,85,247,.1) !important;
  color: var(--purple-glow) !important;
}
.model-tab.active, .mode-tab.active {
  background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
  color: #fff !important;
  box-shadow: 0 4px 12px rgba(168,85,247,.3) !important;
}

/* ===== 上传组件暗色化 ===== */
.upload-box, .upload-zone {
  background: rgba(15, 10, 30, 0.5) !important;
  border-color: var(--glass-border) !important;
  color: var(--text-muted) !important;
}
.upload-box:hover, .upload-zone:hover {
  border-color: rgba(168,85,247,.4) !important;
  background: rgba(168,85,247,.06) !important;
}
.upload-box-icon, .upload-zone-icon { color: var(--purple-glow) !important; }

/* ===== 状态标签暗色化 ===== */
.status-tag.success {
  background: rgba(34, 197, 94, 0.15) !important;
  color: #4ade80 !important;
  border-color: rgba(34, 197, 94, 0.3) !important;
}
.status-tag.pending, .status-tag.processing {
  background: rgba(168, 85, 247, 0.15) !important;
  color: #c084fc !important;
  border-color: rgba(168, 85, 247, 0.3) !important;
}
.status-tag.failed, .status-tag.error {
  background: rgba(239, 68, 68, 0.15) !important;
  color: #f87171 !important;
  border-color: rgba(239, 68, 68, 0.3) !important;
}

/* ===== 响应式：移动端汉堡菜单 ===== */
@media (max-width: 768px) {
  .global-topbar-center { display: none !important; }
  .global-topbar-left { margin-left: 10px !important; }
}


/* ===== 独立页面强制暗紫主题（覆盖 data-theme=light / 自带浅色模式） ===== */
/* 针对 copywriting_create 等有独立 .header + .sidebar 结构的页面 */

/* 顶部栏 */
[data-theme="light"] .header,
.header {
  background: linear-gradient(135deg, rgba(18, 12, 36, 0.95) 0%, rgba(30, 20, 55, 0.95) 100%) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border-bottom: 1px solid rgba(168, 85, 247, 0.18) !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3), 0 1px 0 rgba(168, 85, 247, 0.08) inset !important;
  color: #f5f3ff !important;
}
[data-theme="light"] #siteName,
.header #siteName, .logo-text, .brand-name {
  color: #fff !important;
}
[data-theme="light"] .logo-icon,
.logo-icon {
  background: linear-gradient(135deg, #a855f7 0%, #ec4899 100%) !important;
}

/* 顶部按钮 */
[data-theme="light"] .header-btn,
.header-btn, .nav-btn, .top-btn {
  color: #b8b0d0 !important;
  background: rgba(168, 85, 247, 0.08) !important;
  border-color: rgba(168, 85, 247, 0.15) !important;
}
[data-theme="light"] .header-btn:hover,
.header-btn:hover, .nav-btn:hover {
  color: #fff !important;
  background: rgba(168, 85, 247, 0.18) !important;
}

/* 积分按钮 */
[data-theme="light"] .header-points,
.header-points, .points-btn {
  background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
  color: #fff !important;
  border-color: transparent !important;
}

/* 用户按钮 */
[data-theme="light"] .user-btn,
.user-btn {
  color: #b8b0d0 !important;
  background: rgba(30, 20, 55, 0.6) !important;
  border-color: rgba(168, 85, 247, 0.15) !important;
}
[data-theme="light"] .user-btn:hover,
.user-btn:hover {
  color: #fff !important;
  background: rgba(168, 85, 247, 0.18) !important;
}

/* 侧边栏 */
[data-theme="light"] .sidebar,
.sidebar, .side-menu, .left-sidebar, .nav-sidebar {
  background: rgba(18, 12, 36, 0.9) !important;
  border-right: 1px solid rgba(168, 85, 247, 0.15) !important;
  color: #f5f3ff !important;
}
[data-theme="light"] .sidebar-section,
.sidebar-section, .sidebar-group {
  border-color: rgba(168, 85, 247, 0.1) !important;
}
[data-theme="light"] .sidebar-item,
.sidebar-item, .menu-item, .nav-item {
  color: #b8b0d0 !important;
}
[data-theme="light"] .sidebar-item:hover,
.sidebar-item:hover, .menu-item:hover {
  background: rgba(168, 85, 247, 0.12) !important;
  color: #fff !important;
}
[data-theme="light"] .sidebar-item.active,
.sidebar-item.active, .menu-item.active {
  background: linear-gradient(135deg, rgba(168,85,247,.25), rgba(124,58,237,.15)) !important;
  color: #c084fc !important;
  border-left: 3px solid #a855f7 !important;
}

/* 主内容区 */
[data-theme="light"] .main,
.main, .main-content, .content-main, .app-main {
  background: transparent !important;
}
[data-theme="light"] .copywriting-create-main,
[data-theme="light"] .copywriting-create-content,
.copywriting-create-main, .copywriting-create-content {
  background: transparent !important;
  color: #f5f3ff !important;
}

/* 页面标题 */
[data-theme="light"] .page-header,
.page-header, .page-title-bar {
  border-bottom-color: rgba(168, 85, 247, 0.15) !important;
  color: #f5f3ff !important;
}
[data-theme="light"] .page-header h1,
[data-theme="light"] .page-header h2,
.page-header h1, .page-header h2, .page-title {
  color: #fff !important;
}
.page-header p, .page-subtitle {
  color: #b8b0d0 !important;
}

/* 表单卡片 */
[data-theme="light"] .form-card,
[data-theme="light"] .setting-card,
[data-theme="light"] .result-section,
.form-card, .setting-card, .config-card, .option-card,
.result-section, .output-section, .panel-card {
  background: rgba(30, 20, 55, 0.6) !important;
  border: 1px solid rgba(168, 85, 247, 0.2) !important;
  color: #f5f3ff !important;
}
[data-theme="light"] .form-card h3,
[data-theme="light"] .setting-card h3,
.form-card h3, .setting-card h3, .card-title {
  color: #fff !important;
}
.form-card p, .setting-card p, .card-desc {
  color: #b8b0d0 !important;
}

/* 文本域 */
[data-theme="light"] .theme-textarea,
[data-theme="light"] textarea,
.theme-textarea, textarea, .form-textarea {
  background: rgba(15, 10, 30, 0.6) !important;
  border-color: rgba(168, 85, 247, 0.2) !important;
  color: #f5f3ff !important;
}
[data-theme="light"] .theme-textarea:focus,
[data-theme="light"] textarea:focus,
.theme-textarea:focus, textarea:focus {
  background: rgba(15, 10, 30, 0.8) !important;
  border-color: rgba(168, 85, 247, 0.5) !important;
  box-shadow: 0 0 0 3px rgba(168, 85, 247, 0.12) !important;
  color: #f5f3ff !important;
}
[data-theme="light"] .theme-textarea::placeholder,
[data-theme="light"] textarea::placeholder,
.theme-textarea::placeholder, textarea::placeholder {
  color: #6b6585 !important;
}

/* 按钮组 / 选项按钮 */
[data-theme="light"] .option-btn,
[data-theme="light"] .style-btn,
[data-theme="light"] .length-btn,
.option-btn, .style-btn, .length-btn, .type-btn,
.pill-btn, .tag-btn {
  background: rgba(30, 20, 55, 0.6) !important;
  border: 1px solid rgba(168, 85, 247, 0.2) !important;
  color: #b8b0d0 !important;
}
[data-theme="light"] .option-btn:hover,
.option-btn:hover, .style-btn:hover, .length-btn:hover {
  background: rgba(168, 85, 247, 0.15) !important;
  border-color: rgba(168, 85, 247, 0.4) !important;
  color: #fff !important;
}
[data-theme="light"] .option-btn.active,
.option-btn.active, .style-btn.active, .length-btn.active {
  background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
  color: #fff !important;
  border-color: transparent !important;
  box-shadow: 0 4px 12px rgba(168, 85, 247, 0.3) !important;
}

/* 主按钮 */
[data-theme="light"] .primary-btn,
[data-theme="light"] .submit-btn,
.primary-btn, .submit-btn, .generate-btn, .create-btn {
  background: linear-gradient(135deg, #a855f7, #ec4899) !important;
  color: #fff !important;
  border-color: transparent !important;
  box-shadow: 0 6px 20px rgba(168, 85, 247, 0.35) !important;
}
[data-theme="light"] .primary-btn:hover,
.primary-btn:hover, .submit-btn:hover {
  box-shadow: 0 8px 28px rgba(168, 85, 247, 0.5) !important;
  filter: brightness(1.08);
}

/* 次按钮 */
[data-theme="light"] .secondary-btn,
.secondary-btn, .outline-btn, .ghost-btn {
  background: rgba(30, 20, 55, 0.6) !important;
  border: 1px solid rgba(168, 85, 247, 0.25) !important;
  color: #b8b0d0 !important;
}
[data-theme="light"] .secondary-btn:hover,
.secondary-btn:hover {
  background: rgba(168, 85, 247, 0.15) !important;
  color: #fff !important;
}

/* 侧边栏底部联系卡片 */
[data-theme="light"] .sidebar-footer,
.sidebar-footer, .sidebar-contact, .contact-card {
  background: linear-gradient(135deg, rgba(168,85,247,.2), rgba(236,72,153,.15)) !important;
  border: 1px solid rgba(168, 85, 247, 0.25) !important;
  color: #f5f3ff !important;
}
[data-theme="light"] .sidebar-footer h4,
.sidebar-footer h4, .contact-card h4 {
  color: #fff !important;
}
[data-theme="light"] .sidebar-footer p,
.sidebar-footer p, .contact-card p {
  color: #b8b0d0 !important;
}

/* 标签 / 徽标 */
[data-theme="light"] .badge,
.badge, .tag, .label-tag {
  background: rgba(168, 85, 247, 0.15) !important;
  color: #c084fc !important;
  border-color: rgba(168, 85, 247, 0.3) !important;
}
.badge.hot, .tag.hot, .badge-new {
  background: linear-gradient(135deg, #f59e0b, #ef4444) !important;
  color: #fff !important;
}
.badge-new {
  background: linear-gradient(135deg, #10b981, #06b6d4) !important;
  color: #fff !important;
}

/* 输入框 */
[data-theme="light"] input[type="text"],
[data-theme="light"] input[type="number"],
[data-theme="light"] .form-input,
input[type="text"], input[type="number"], .form-input {
  background: rgba(15, 10, 30, 0.6) !important;
  border-color: rgba(168, 85, 247, 0.2) !important;
  color: #f5f3ff !important;
}
[data-theme="light"] input:focus,
input:focus, .form-input:focus {
  border-color: rgba(168, 85, 247, 0.5) !important;
  box-shadow: 0 0 0 3px rgba(168, 85, 247, 0.12) !important;
}

/* tooltip */
[data-theme="light"] .theme-tooltip,
.theme-tooltip, .tooltip, .tip-box {
  background: rgba(30, 20, 55, 0.95) !important;
  border: 1px solid rgba(168, 85, 247, 0.3) !important;
  color: #f5f3ff !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4) !important;
}

/* 分割线 */
[data-theme="light"] hr,
hr, .divider, .divider-line {
  border-color: rgba(168, 85, 247, 0.15) !important;
  background: rgba(168, 85, 247, 0.15) !important;
}


/* ===== 登录页 / 认证页 暗紫主题 ===== */

/* 整体背景 */
body:has(.visual-panel),
body:has(.form-panel),
body:has(.login-page) {
  background: #0b0716 !important;
  color: #f5f3ff !important;
}

/* 左侧视觉面板 - 从绿色改成紫色 */
.visual-panel {
  background: linear-gradient(135deg, #1a0f3d 0%, #0b0716 100%) !important;
}
.visual-panel::before {
  background: radial-gradient(circle at center, rgba(168, 85, 247, 0.3) 0%, transparent 70%) !important;
  opacity: 1 !important;
}
.visual-panel .grid {
  background-image:
    linear-gradient(rgba(168, 85, 247, 0.3) 1px, transparent 1px),
    linear-gradient(90deg, rgba(168, 85, 247, 0.3) 1px, transparent 1px) !important;
  box-shadow: 0 0 60px rgba(168, 85, 247, 0.3) inset !important;
}
.visual-panel .scan-line {
  background: conic-gradient(transparent 270deg, #a855f7) !important;
  opacity: 0.4 !important;
}
.visual-panel .dot {
  background: #fff !important;
  box-shadow: 0 0 12px rgba(168, 85, 247, 0.8) !important;
}
.visual-text {
  color: #fff !important;
  text-shadow: 0 2px 15px rgba(168, 85, 247, 0.5) !important;
}
.visual-text h1 {
  color: #fff !important;
}
.visual-text p {
  color: #c4b5fd !important;
}

/* 右侧表单面板 - 从白色改成暗紫玻璃 */
.form-panel {
  background: linear-gradient(180deg, rgba(22, 14, 45, 0.98) 0%, rgba(15, 10, 30, 0.98) 100%) !important;
  color: #f5f3ff !important;
  box-shadow: -20px 0 60px rgba(0, 0, 0, 0.4), 1px 0 0 rgba(168, 85, 247, 0.15) inset !important;
}

/* Logo 区 */
.logo-area .logo-icon {
  background: linear-gradient(135deg, #a855f7 0%, #ec4899 100%) !important;
  box-shadow: 0 8px 20px rgba(168, 85, 247, 0.4) !important;
  color: #fff !important;
}
.logo-text {
  color: #fff !important;
}

/* 欢迎文字 */
.welcome-msg h2, .welcome-msg h1,
.form-container h1, .form-container h2 {
  color: #fff !important;
}
.welcome-msg p, .form-container p, .form-tip {
  color: #b8b0d0 !important;
}

/* 输入框 */
.input-field {
  color: #f5f3ff !important;
  border-bottom-color: rgba(168, 85, 247, 0.3) !important;
}
.input-field:focus {
  border-bottom-color: #a855f7 !important;
}
.input-field::placeholder {
  color: #6b6585 !important;
}
.input-label {
  color: #9ca0b8 !important;
}
.input-field:focus + .input-label,
.input-field:not(:placeholder-shown) + .input-label {
  color: #c084fc !important;
}

/* 提交按钮 */
.submit-btn, .login-btn, .form-submit {
  background: linear-gradient(135deg, #a855f7 0%, #ec4899 100%) !important;
  color: #fff !important;
  box-shadow: 0 10px 25px rgba(168, 85, 247, 0.35) !important;
}
.submit-btn:hover, .login-btn:hover {
  box-shadow: 0 15px 35px rgba(168, 85, 247, 0.5) !important;
}

/* 其他链接 */
.form-footer, .form-links, .form-extra,
.forgot-password, .register-link, .agreement {
  color: #b8b0d0 !important;
}
.form-footer a, .form-links a, .forgot-password a, .register-link a {
  color: #c084fc !important;
}

/* Toast */
.toast {
  background: rgba(22, 14, 45, 0.95) !important;
  color: #fff !important;
  border: 1px solid rgba(168, 85, 247, 0.3) !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.4) !important;
}
.toast-icon { fill: #c084fc !important; }
.toast.error .toast-icon { fill: #f87171 !important; }

/* ===== 文档 / 协议页 暗紫主题 ===== */
.doc-page, .doc-container, .agreement-page, .policy-page,
.doc-content, .article-container, .prose-content,
.user-agreement-page, .privacy-policy-page {
  background: #0b0716 !important;
  color: #f5f3ff !important;
}
.doc-page h1, .doc-page h2, .doc-page h3, .doc-page h4,
.doc-content h1, .doc-content h2, .doc-content h3,
.article-container h1, .article-container h2,
.prose-content h1, .prose-content h2 {
  color: #fff !important;
}
.doc-page p, .doc-page li, .doc-content p, .doc-content li,
.article-container p, .prose-content p {
  color: #d4cce8 !important;
}
.doc-page a, .doc-content a, .article-container a {
  color: #c084fc !important;
}

/* 文档页头部 */
.doc-header, .doc-page-header, .article-header,
.doc-title-bar, .page-header-bar {
  background: linear-gradient(135deg, rgba(18, 12, 36, 0.95), rgba(30, 20, 55, 0.95)) !important;
  border-bottom: 1px solid rgba(168, 85, 247, 0.18) !important;
  color: #fff !important;
}

/* 文档内容卡片 */
.doc-body, .doc-main, .article-body, .prose-body,
.doc-content-wrap, .article-content {
  background: rgba(30, 20, 55, 0.5) !important;
  border: 1px solid rgba(168, 85, 247, 0.2) !important;
  color: #f5f3ff !important;
}


/* ====== 终极白底清除：覆盖所有可能的浅色容器 ====== */

/* 文档/协议页通用容器 */
.container, .doc-container, .agreement-container, .policy-container,
.wrapper, .page-wrap, .main-wrap {
  background: #0b0716 !important;
  color: #f5f3ff !important;
}
.notice, .warning, .info, .tip, .alert, .callout {
  background: rgba(30, 20, 55, 0.6) !important;
  border-color: rgba(168, 85, 247, 0.25) !important;
  color: #f5f3ff !important;
}
.notice strong, .warning strong, .info strong, .tip strong {
  color: #fff !important;
}
.highlight, .mark, .emphasis {
  background: rgba(168, 85, 247, 0.2) !important;
  color: #c084fc !important;
}

/* 数字人/特殊组件 */
.dh-tabs, .digital-tabs, .avatar-tabs,
.upgrade-btn, .upgrade-card, .vip-upgrade,
.cost-badge, .price-badge, .consume-badge,
.action-link, .link-btn, .text-btn {
  background-color: rgba(30, 20, 55, 0.55) !important;
  border-color: rgba(168, 85, 247, 0.2) !important;
  color: #f5f3ff !important;
}
.dh-tabs .tab-item.active,
.digital-tabs .tab-item.active {
  background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
  color: #fff !important;
}
.cost-badge { color: #c084fc !important; }
.action-link, .link-btn, .text-btn { color: #c084fc !important; background: transparent !important; border: none !important; }

/* 所有卡片/面板/容器类元素的强力兜底 */
.card, .panel, .box, .container-inner, .content-card,
.module, .section, .block, .widget, .tile, .unit,
.data-card, .info-card, .item-card, .list-card,
.config-card, .setting-item, .option-item, .form-item,
.input-group, .select-group, .radio-group, .checkbox-group,
.upload-area, .upload-box, .drop-zone, .dropzone,
.preview-box, .display-box, .info-box, .tip-box,
.status-card, .progress-card, .stat-card, .metric-card,
.step-card, .step-item, .timeline-item,
.tab-panel, .tab-content, .pane, .view, .page-content,
.main-content-inner, .content-inner, .content-wrap,
.work-area, .workspace, .studio, .editor-area,
.result-panel, .output-panel, .preview-panel,
.tool-panel, .control-panel, .settings-panel,
.sidebar-card, .side-card, .aside-card,
.menu-card, .nav-card, .category-card,
.template-card, .tpl-card, .theme-card,
.history-card, .record-card, .log-card,
.task-card, .job-card, .queue-card,
.pool-card, .gallery-card, .asset-card,
.user-card, .profile-card, .account-card,
.modal-body, .dialog-body, .popup-body,
.drawer-body, .offcanvas-body,
.toast-body, .notification-card,
.empty-card, .loading-card, .error-card,
.success-card, .warning-card, .info-card,
.vip-card, .balance-card, .points-card,
.member-card, .plan-card, .price-card,
.feature-card, .benefit-card, .intro-card,
.about-card, .faq-card, .help-card,
.doc-card, .guide-card, .tutorial-card {
  background-color: rgba(30, 20, 55, 0.55) !important;
  border-color: rgba(168, 85, 247, 0.18) !important;
  color: #f5f3ff !important;
}

/* 标题文字强制浅色 */
.card h1, .card h2, .card h3, .card h4, .card h5,
.panel h1, .panel h2, .panel h3, .panel h4,
.box h1, .box h2, .box h3,
.module h1, .module h2, .module h3,
.card-title, .panel-title, .box-title, .module-title,
.section-title, .item-title, .card-header, .panel-header {
  color: #fff !important;
}

/* 描述/副本文字 */
.card p, .panel p, .box p, .module p,
.card-desc, .panel-desc, .box-desc, .module-desc,
.card-subtitle, .panel-subtitle, .item-desc,
.desc, .description, .summary, .subtitle, .hint, .tip {
  color: #b8b0d0 !important;
}

/* 确保所有输入框/文本域/选择框深色 */
input[type="text"], input[type="number"], input[type="email"],
input[type="password"], input[type="tel"], input[type="url"],
input[type="search"], input[type="date"], input[type="time"],
select, textarea, .input, .form-control, .select-input,
.search-input, .filter-input, .query-input {
  background-color: rgba(15, 10, 30, 0.6) !important;
  border-color: rgba(168, 85, 247, 0.2) !important;
  color: #f5f3ff !important;
}
input:focus, select:focus, textarea:focus,
.input:focus, .form-control:focus {
  border-color: rgba(168, 85, 247, 0.5) !important;
  background-color: rgba(15, 10, 30, 0.8) !important;
  box-shadow: 0 0 0 3px rgba(168, 85, 247, 0.1) !important;
  color: #f5f3ff !important;
}
input::placeholder, textarea::placeholder,
.input::placeholder, .form-control::placeholder {
  color: #6b6585 !important;
}

/* select 下拉选项 */
select option {
  background: #1e1437 !important;
  color: #f5f3ff !important;
}

/* 表格 */
table, .table, .data-table, .grid-table {
  background: rgba(30, 20, 55, 0.4) !important;
  color: #f5f3ff !important;
  border-color: rgba(168, 85, 247, 0.15) !important;
}
thead, th, .table th, .table thead {
  background: rgba(30, 20, 55, 0.7) !important;
  color: #fff !important;
  border-color: rgba(168, 85, 247, 0.2) !important;
}
tbody tr, .table tbody tr, tr {
  background: transparent !important;
  border-color: rgba(168, 85, 247, 0.12) !important;
  color: #f5f3ff !important;
}
tbody tr:hover, .table tbody tr:hover, tr:hover {
  background: rgba(168, 85, 247, 0.08) !important;
}
td, .table td {
  background: transparent !important;
  color: #f5f3ff !important;
  border-color: rgba(168, 85, 247, 0.12) !important;
}

/* 进度条/滑块 */
.progress, .progress-bar, .slider, .range-bar {
  background: rgba(168, 85, 247, 0.15) !important;
}
.progress-fill, .progress-bar-fill, .slider-fill, .range-fill {
  background: linear-gradient(90deg, #a855f7, #ec4899) !important;
}

/* 面包屑/步骤条 */
.breadcrumb, .steps, .stepper {
  background: transparent !important;
  color: #b8b0d0 !important;
}
.breadcrumb a, .steps .step-item {
  color: #b8b0d0 !important;
}
.breadcrumb a:hover, .steps .step-item.active {
  color: #c084fc !important;
}

/* 徽章/数字角标 */
.badge, .count-badge, .num-badge, .corner-badge {
  background: rgba(168, 85, 247, 0.2) !important;
  color: #c084fc !important;
}

/* 确保页面级容器也不是白色 */
#app, #root, #main, #page, #content,
.app, .app-container, .app-wrapper,
.page, .page-container, .page-wrapper,
.main-container, .main-wrapper,
.content-container, .content-wrapper,
.body-content, .page-body, .app-body {
  background: transparent !important;
  color: #f5f3ff !important;
}

/* 强力兜底：所有带白色背景的元素统一改成深色（只针对明显的容器类） */
[style*="background: #fff"],
[style*="background: white"],
[style*="background-color: #fff"],
[style*="background-color: white"],
[style*="background:#fff"],
[style*="background-color:#fff"] {
  background-color: rgba(30, 20, 55, 0.6) !important;
}


/* ====== 更多页面特殊元素白底修复 ====== */

/* signin-config 页面 */
.back-btn, .btn-back, .return-btn {
  background: rgba(30, 20, 55, 0.6) !important;
  border-color: rgba(168, 85, 247, 0.25) !important;
  color: #b8b0d0 !important;
}
.hint-box, .tips-box, .tip-box, .hint-card {
  background: rgba(30, 20, 55, 0.6) !important;
  border-color: rgba(168, 85, 247, 0.25) !important;
  color: #f5f3ff !important;
}
.btn-reset, .reset-btn, .btn-secondary, .btn-default {
  background: rgba(30, 20, 55, 0.6) !important;
  border-color: rgba(168, 85, 247, 0.25) !important;
  color: #b8b0d0 !important;
}
.btn-reset:hover, .btn-secondary:hover, .btn-default:hover {
  background: rgba(168, 85, 247, 0.15) !important;
  color: #fff !important;
}

/* auth 页面 */
.dropdown-menu, .dropdown-panel, .menu-dropdown {
  background: rgba(22, 14, 45, 0.98) !important;
  border: 1px solid rgba(168, 85, 247, 0.25) !important;
  color: #f5f3ff !important;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.4) !important;
}
.dropdown-menu a, .dropdown-menu .menu-item,
.dropdown-panel a, .dropdown-panel .item {
  color: #b8b0d0 !important;
}
.dropdown-menu a:hover, .dropdown-menu .menu-item:hover,
.dropdown-panel a:hover {
  background: rgba(168, 85, 247, 0.12) !important;
  color: #fff !important;
}
.menu-group-title, .dropdown-title, .menu-title {
  color: #fff !important;
}
.quick-item, .quick-link, .shortcut-item {
  background: rgba(30, 20, 55, 0.5) !important;
  border-color: rgba(168, 85, 247, 0.2) !important;
  color: #f5f3ff !important;
}
.quick-item:hover, .quick-link:hover {
  background: rgba(168, 85, 247, 0.15) !important;
  border-color: rgba(168, 85, 247, 0.35) !important;
}
.site-info-item, .info-item, .site-item {
  background: rgba(30, 20, 55, 0.5) !important;
  border-color: rgba(168, 85, 247, 0.2) !important;
  color: #f5f3ff !important;
}
.url-card, .url-box, .link-card, .site-card {
  background: rgba(30, 20, 55, 0.5) !important;
  border-color: rgba(168, 85, 247, 0.2) !important;
  color: #f5f3ff !important;
}
.url-card:hover, .url-box:hover, .link-card:hover {
  border-color: rgba(168, 85, 247, 0.4) !important;
}
.url-copy-btn, .url-open-btn, .copy-btn, .open-btn,
.action-btn, .op-btn, .operate-btn {
  background: rgba(168, 85, 247, 0.15) !important;
  border-color: rgba(168, 85, 247, 0.3) !important;
  color: #c084fc !important;
}
.url-copy-btn:hover, .url-open-btn:hover,
.copy-btn:hover, .open-btn:hover {
  background: rgba(168, 85, 247, 0.25) !important;
  color: #fff !important;
}

/* use-doc 文档页 */
.toc, .toc-box, .table-of-contents, .sidebar-toc {
  background: rgba(30, 20, 55, 0.5) !important;
  border-color: rgba(168, 85, 247, 0.2) !important;
  color: #f5f3ff !important;
}
.toc a, .toc li, .toc-item {
  color: #b8b0d0 !important;
}
.toc a:hover, .toc .active, .toc-item.active {
  color: #c084fc !important;
}
h1, h2, h3, h4, h5, h6 {
  color: #fff !important;
}
.success, .success-box, .success-card, .alert-success {
  background: rgba(16, 185, 129, 0.12) !important;
  border-color: rgba(16, 185, 129, 0.3) !important;
  color: #6ee7b7 !important;
}
.feature-box, .feature-card, .feature-item {
  background: rgba(30, 20, 55, 0.5) !important;
  border-color: rgba(168, 85, 247, 0.2) !important;
  color: #f5f3ff !important;
}
.case-study, .case-card, .example-box, .demo-box {
  background: rgba(30, 20, 55, 0.5) !important;
  border-color: rgba(168, 85, 247, 0.2) !important;
  color: #f5f3ff !important;
}

/* product-note 页面 */
.platform-item, .platform-card, .product-item, .product-card {
  background: rgba(30, 20, 55, 0.5) !important;
  border-color: rgba(168, 85, 247, 0.2) !important;
  color: #f5f3ff !important;
}
.platform-item:hover, .product-item:hover {
  background: rgba(168, 85, 247, 0.12) !important;
  border-color: rgba(168, 85, 247, 0.35) !important;
}
.platform-item h3, .product-item h3,
.platform-card h3, .product-card h3 {
  color: #fff !important;
}
.platform-item p, .product-item p {
  color: #b8b0d0 !important;
}

/* 通用：所有可能的白底盒子强制深色 */
.content-box, .text-box, .title-box, .header-box,
.body-box, .footer-box, .main-box, .side-box,
.intro-box, .about-box, .contact-box, .faq-box,
.help-box, .guide-box, .tutorial-box, .steps-box,
.plan-box, .price-box, .vip-box, .member-box,
.balance-box, .points-box, .coin-box,
.history-box, .record-box, .log-box,
.upload-card, .file-card, .image-card, .video-card,
.audio-card, .asset-card, .media-card,
.thumb-card, .cover-card, .poster-card,
.template-item, .tpl-item, .theme-item,
.model-item, .engine-item, .version-item,
.style-item, .preset-item, .option-item,
.filter-item, .sort-item, .view-item,
.layout-item, .size-item, .ratio-item,
.duration-item, .quality-item, .resolution-item {
  background-color: rgba(30, 20, 55, 0.55) !important;
  border-color: rgba(168, 85, 247, 0.18) !important;
  color: #f5f3ff !important;
}


/* ====== 首页 / 工作台页面补充 ====== */

.filter-cat, .filter-category, .category-tag, .cat-item {
  background: rgba(30, 20, 55, 0.5) !important;
  border-color: rgba(168, 85, 247, 0.2) !important;
  color: #b8b0d0 !important;
}
.filter-cat.active, .filter-category.active, .cat-item.active {
  background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
  color: #fff !important;
  border-color: transparent !important;
}
.gallery-tags-bar, .filter-bar, .tags-bar, .toolbar-bar {
  background: rgba(30, 20, 55, 0.5) !important;
  border-color: rgba(168, 85, 247, 0.15) !important;
}
input[type="text"].search-input,
input.search-input,
input[type="text"].filter-input,
input.filter-input {
  background: rgba(15, 10, 30, 0.6) !important;
  border-color: rgba(168, 85, 247, 0.2) !important;
  color: #f5f3ff !important;
}

/* ====== 中心页更多元素 ====== */

.global-topbar-site, .site-name-tag, .topbar-site {
  background: rgba(168, 85, 247, 0.12) !important;
  color: #c084fc !important;
  border-color: rgba(168, 85, 247, 0.25) !important;
}
.jm-nav-list, .nav-list, .tab-nav, .jm-tabs {
  background: rgba(30, 20, 55, 0.5) !important;
  border-color: rgba(168, 85, 247, 0.15) !important;
}
.jm-nav-list a, .nav-list a, .tab-nav a {
  color: #b8b0d0 !important;
}
.jm-nav-list a.active, .nav-list a.active, .tab-nav a.active {
  color: #c084fc !important;
  border-bottom-color: #a855f7 !important;
}
.skeleton, .skeleton-item, .skeleton-card {
  background: rgba(30, 20, 55, 0.4) !important;
}
.skeleton::after, .skeleton-item::after {
  background: linear-gradient(90deg, transparent, rgba(168, 85, 247, 0.1), transparent) !important;
}
.gen-shortcut, .shortcut-tag, .quick-shortcut {
  background: rgba(30, 20, 55, 0.5) !important;
  border-color: rgba(168, 85, 247, 0.2) !important;
  color: #b8b0d0 !important;
}


/* ====== 全站标题栏 / 头部 统一 ====== */

/* 页面标题栏 / 结果区头部 */
.result-head, .result-header, .result-title-bar,
.section-head, .section-header, .panel-head, .panel-header,
.card-head, .card-header, .module-head, .module-header,
.page-title-bar, .content-header, .content-head,
.work-head, .work-header, .studio-head, .studio-header,
.list-head, .list-header, .gallery-head, .gallery-header,
.records-head, .records-header, .task-head, .task-header {
  background: linear-gradient(135deg, rgba(22, 14, 45, 0.9), rgba(30, 20, 55, 0.85)) !important;
  border-bottom: 1px solid rgba(168, 85, 247, 0.18) !important;
  color: #fff !important;
}
.result-head h2, .result-head h3, .result-header h2,
.section-head h2, .section-head h3,
.panel-head h2, .panel-head h3,
.card-head h2, .card-head h3, .card-header .title,
.module-head h2, .module-head h3,
.page-title-bar h1, .page-title-bar h2,
.content-header h1, .content-header h2,
.work-head h2, .work-head h3,
.list-head h2, .list-head h3,
.gallery-head h2, .gallery-head h3 {
  color: #fff !important;
}

/* 标题栏副标题 / 描述 */
.result-head p, .result-header p, .head-desc,
.header-subtitle, .title-sub, .head-tip {
  color: #b8b0d0 !important;
}

/* 标题栏右侧操作区 */
.result-head-right, .header-actions, .head-right,
.toolbar-right, .action-bar, .head-actions {
  color: #b8b0d0 !important;
}

/* ====== 全站按钮统一 ====== */

/* 主按钮 - 紫色渐变发光 */
.btn-primary, .btn-main, .btn-submit, .btn-generate,
.btn-create, .btn-start, .btn-confirm, .btn-ok,
button.primary, button.main, button.submit,
input[type="submit"], input[type="button"].primary,
.btn.btn-primary, .el-button--primary,
.ant-btn-primary, .van-button--primary,
.generate-btn, .create-btn, .submit-btn, .start-btn,
.confirm-btn, .ok-btn, .publish-btn, .save-btn {
  background: linear-gradient(135deg, #a855f7 0%, #ec4899 100%) !important;
  color: #fff !important;
  border-color: transparent !important;
  box-shadow: 0 4px 14px rgba(168, 85, 247, 0.35) !important;
  transition: all 0.25s ease !important;
}
.btn-primary:hover, .btn-main:hover, .btn-submit:hover,
.btn-generate:hover, .btn-create:hover, .btn-start:hover,
.primary:hover, .submit:hover,
.generate-btn:hover, .create-btn:hover, .submit-btn:hover,
.confirm-btn:hover, .save-btn:hover,
.el-button--primary:hover, .ant-btn-primary:hover {
  background: linear-gradient(135deg, #c084fc 0%, #f472b6 100%) !important;
  box-shadow: 0 6px 20px rgba(168, 85, 247, 0.5) !important;
  transform: translateY(-1px);
  color: #fff !important;
}

/* 次按钮 - 玻璃描边 */
.btn-default, .btn-secondary, .btn-outline, .btn-ghost,
.btn-cancel, .btn-close, .btn-back, .btn-reset,
button.secondary, button.default, button.outline,
.btn.btn-default, .el-button--default,
.ant-btn-default, .van-button--default,
.secondary-btn, .outline-btn, .ghost-btn,
.cancel-btn, .close-btn, .back-btn, .reset-btn {
  background: rgba(30, 20, 55, 0.6) !important;
  border: 1px solid rgba(168, 85, 247, 0.25) !important;
  color: #b8b0d0 !important;
  transition: all 0.2s ease !important;
}
.btn-default:hover, .btn-secondary:hover, .btn-outline:hover,
.btn-cancel:hover, .btn-back:hover, .btn-reset:hover,
.secondary:hover, .default:hover,
.secondary-btn:hover, .outline-btn:hover,
.cancel-btn:hover, .back-btn:hover,
.el-button--default:hover, .ant-btn-default:hover {
  background: rgba(168, 85, 247, 0.15) !important;
  border-color: rgba(168, 85, 247, 0.45) !important;
  color: #fff !important;
}

/* 文字按钮 / 链接按钮 */
.btn-link, .link-btn, .text-btn, .btn-text,
.el-button--text, .ant-btn-link {
  color: #c084fc !important;
  background: transparent !important;
  border-color: transparent !important;
}
.btn-link:hover, .link-btn:hover, .text-btn:hover,
.el-button--text:hover, .ant-btn-link:hover {
  color: #e9d5ff !important;
  background: rgba(168, 85, 247, 0.08) !important;
}

/* 危险按钮 */
.btn-danger, .btn-delete, .btn-remove, .btn-warning,
.el-button--danger, .ant-btn-dangerous,
.danger-btn, .delete-btn, .remove-btn {
  background: rgba(239, 68, 68, 0.15) !important;
  border: 1px solid rgba(239, 68, 68, 0.3) !important;
  color: #f87171 !important;
}
.btn-danger:hover, .btn-delete:hover,
.danger-btn:hover, .delete-btn:hover,
.el-button--danger:hover, .ant-btn-dangerous:hover {
  background: rgba(239, 68, 68, 0.25) !important;
  border-color: rgba(239, 68, 68, 0.5) !important;
  color: #fca5a5 !important;
}

/* 成功按钮 */
.btn-success, .success-btn, .ok-success,
.el-button--success, .ant-btn-success {
  background: rgba(16, 185, 129, 0.15) !important;
  border: 1px solid rgba(16, 185, 129, 0.3) !important;
  color: #34d399 !important;
}
.btn-success:hover, .success-btn:hover {
  background: rgba(16, 185, 129, 0.25) !important;
  border-color: rgba(16, 185, 129, 0.5) !important;
  color: #6ee7b7 !important;
}

/* 禁用状态 */
button:disabled, .btn:disabled,
button[disabled], .btn[disabled],
.btn-disabled, .disabled-btn {
  background: rgba(30, 20, 55, 0.4) !important;
  border-color: rgba(168, 85, 247, 0.1) !important;
  color: #6b6585 !important;
  cursor: not-allowed !important;
  box-shadow: none !important;
  opacity: 0.6 !important;
}

/* ====== 全站下拉菜单 / 下拉选择 统一 ====== */

select, .select, .form-select, .select-input,
.el-select__inner, .ant-select-selector,
.dropdown, .dropdown-menu, .select-dropdown {
  background: rgba(22, 14, 45, 0.95) !important;
  border-color: rgba(168, 85, 247, 0.25) !important;
  color: #f5f3ff !important;
}
select option, .select option,
.dropdown-item, .dropdown-menu li,
.select-option, .option-item {
  background: rgba(22, 14, 45, 0.95) !important;
  color: #b8b0d0 !important;
}
select option:hover, .dropdown-item:hover,
.select-option:hover, .option-item:hover,
.dropdown-menu li:hover {
  background: rgba(168, 85, 247, 0.15) !important;
  color: #fff !important;
}
select option:checked, .dropdown-item.active,
.select-option.selected, .option-item.active {
  background: rgba(168, 85, 247, 0.25) !important;
  color: #c084fc !important;
}

/* ====== 标签页 / Tab 统一 ====== */

.tabs, .tab-list, .tab-nav, .el-tabs__nav,
.ant-tabs-nav, .nav-tabs {
  border-bottom-color: rgba(168, 85, 247, 0.15) !important;
}
.tab-item, .tab, .el-tabs__item, .ant-tabs-tab,
.nav-tabs li, .nav-tabs a {
  color: #b8b0d0 !important;
  border-bottom-color: transparent !important;
}
.tab-item:hover, .tab:hover,
.el-tabs__item:hover, .ant-tabs-tab:hover {
  color: #c084fc !important;
}
.tab-item.active, .tab.active, .el-tabs__item.is-active,
.ant-tabs-tab-active, .nav-tabs li.active a,
.nav-tabs .active {
  color: #c084fc !important;
  border-bottom-color: #a855f7 !important;
  background: transparent !important;
}


/* ====== 第二轮：更多页面的按钮 / Tab / 输入框统一 ====== */

/* --- 生成按钮 / 主操作按钮 --- */
.gen-btn, .create-btn, .add-btn, .submit-btn, .send-btn,
.deepseek-send-btn, .deepseek-quick-btn,
.prompt-send-btn, .generate-action-btn {
  background: linear-gradient(135deg, #a855f7 0%, #ec4899 100%) !important;
  color: #fff !important;
  border-color: transparent !important;
  box-shadow: 0 4px 14px rgba(168, 85, 247, 0.35) !important;
  transition: all 0.25s ease !important;
}
.gen-btn:hover, .add-btn:hover, .send-btn:hover,
.deepseek-send-btn:hover, .deepseek-quick-btn:hover {
  background: linear-gradient(135deg, #c084fc 0%, #f472b6 100%) !important;
  box-shadow: 0 6px 20px rgba(168, 85, 247, 0.5) !important;
  transform: translateY(-1px);
  color: #fff !important;
}
.gen-btn:active, .add-btn:active, .send-btn:active {
  transform: translateY(0) !important;
}

/* 次按钮样式 */
.add-btn.secondary, .btn.secondary, .select-btn,
.upload-btn, .use-btn, .prompt-expand-btn,
.history-toggle-btn, .refresh-btn, .asset-refresh-btn,
.panel-close-btn, .close-btn, .create-folder-btn {
  background: rgba(30, 20, 55, 0.6) !important;
  border: 1px solid rgba(168, 85, 247, 0.25) !important;
  color: #b8b0d0 !important;
  transition: all 0.2s ease !important;
}
.add-btn.secondary:hover, .select-btn:hover,
.upload-btn:hover, .use-btn:hover,
.prompt-expand-btn:hover, .history-toggle-btn:hover,
.refresh-btn:hover, .asset-refresh-btn:hover,
.panel-close-btn:hover, .close-btn:hover,
.create-folder-btn:hover {
  background: rgba(168, 85, 247, 0.15) !important;
  border-color: rgba(168, 85, 247, 0.45) !important;
  color: #fff !important;
}

/* 确认 / 取消 按钮 */
.btn-confirm, .btn.btn-confirm,
.confirm-btn, .ok-btn, .btn-ok {
  background: linear-gradient(135deg, #a855f7 0%, #ec4899 100%) !important;
  color: #fff !important;
  border-color: transparent !important;
  box-shadow: 0 4px 12px rgba(168, 85, 247, 0.3) !important;
}
.btn-confirm:hover, .btn.btn-confirm:hover {
  background: linear-gradient(135deg, #c084fc 0%, #f472b6 100%) !important;
  box-shadow: 0 6px 18px rgba(168, 85, 247, 0.45) !important;
  color: #fff !important;
}
.btn-cancel, .btn.btn-cancel,
.cancel-btn, .btn-cancel {
  background: rgba(30, 20, 55, 0.6) !important;
  border: 1px solid rgba(168, 85, 247, 0.25) !important;
  color: #b8b0d0 !important;
}
.btn-cancel:hover, .btn.btn-cancel:hover {
  background: rgba(168, 85, 247, 0.15) !important;
  border-color: rgba(168, 85, 247, 0.45) !important;
  color: #fff !important;
}

/* --- Tab / 标签页按钮 --- */
.tab-btn, .right-tab-btn, .asset-tab,
.nav-tab-btn, .switch-tab-btn {
  background: rgba(30, 20, 55, 0.5) !important;
  border: 1px solid rgba(168, 85, 247, 0.15) !important;
  color: #b8b0d0 !important;
  transition: all 0.2s ease !important;
}
.tab-btn:hover, .right-tab-btn:hover, .asset-tab:hover {
  background: rgba(168, 85, 247, 0.12) !important;
  color: #c084fc !important;
}
.tab-btn.active, .right-tab-btn.active,
.asset-tab.active, .tab-btn.is-active {
  background: linear-gradient(135deg, rgba(168, 85, 247, 0.25), rgba(236, 72, 153, 0.2)) !important;
  border-color: rgba(168, 85, 247, 0.5) !important;
  color: #fff !important;
  box-shadow: 0 2px 10px rgba(168, 85, 247, 0.2) !important;
}

/* tabs 容器 */
.tabs, .tabs-flex, .asset-tabs, .tab-list {
  border-bottom-color: rgba(168, 85, 247, 0.12) !important;
  background: transparent !important;
}

/* --- 输入框 / 文本域 --- */
.prompt-textarea, .prompt-modal-textarea,
.deepseek-input, .chat-input, .input-field,
.textarea-field, .gen-input, .form-input {
  background: rgba(15, 10, 30, 0.6) !important;
  border: 1px solid rgba(168, 85, 247, 0.2) !important;
  color: #f5f3ff !important;
  transition: border-color 0.2s ease !important;
}
.prompt-textarea:focus, .deepseek-input:focus,
.chat-input:focus, .input-field:focus,
.textarea-field:focus, .gen-input:focus,
.form-input:focus {
  border-color: rgba(168, 85, 247, 0.5) !important;
  box-shadow: 0 0 0 3px rgba(168, 85, 247, 0.1) !important;
  outline: none !important;
}
.prompt-textarea::placeholder, .deepseek-input::placeholder,
.chat-input::placeholder, .input-field::placeholder,
.textarea-field::placeholder, .gen-input::placeholder {
  color: rgba(184, 176, 208, 0.5) !important;
}

/* --- 选项框 / 尺寸选择 / 模板选择 --- */
.option-btn, .size-btn, .ratio-btn, .template-item,
.model-option, .version-option, .style-option,
.option-card, .choice-item, .pick-item {
  background: rgba(30, 20, 55, 0.5) !important;
  border: 1px solid rgba(168, 85, 247, 0.18) !important;
  color: #b8b0d0 !important;
  transition: all 0.2s ease !important;
}
.option-btn:hover, .size-btn:hover, .ratio-btn:hover,
.template-item:hover, .model-option:hover,
.version-option:hover, .style-option:hover,
.option-card:hover, .choice-item:hover {
  background: rgba(168, 85, 247, 0.12) !important;
  border-color: rgba(168, 85, 247, 0.35) !important;
  color: #fff !important;
}
.option-btn.active, .size-btn.active, .ratio-btn.active,
.template-item.active, .model-option.active,
.version-option.active, .style-option.active,
.option-card.active, .choice-item.active,
.option-btn.selected, .size-btn.selected {
  background: linear-gradient(135deg, rgba(168, 85, 247, 0.2), rgba(236, 72, 153, 0.15)) !important;
  border-color: rgba(168, 85, 247, 0.6) !important;
  color: #fff !important;
  box-shadow: 0 2px 12px rgba(168, 85, 247, 0.2) !important;
}

/* --- 升级卡片 / 促销卡片 --- */
.upgrade-card, .vip-card, .promo-card, .banner-card {
  background: linear-gradient(135deg, rgba(168, 85, 247, 0.15), rgba(236, 72, 153, 0.1)) !important;
  border: 1px solid rgba(168, 85, 247, 0.3) !important;
  color: #fff !important;
}

/* --- 上传区域 / 拖拽上传 --- */
.upload-area, .upload-box, .drop-zone,
.upload-placeholder, .uploader-box,
.drop-upload-area {
  background: rgba(30, 20, 55, 0.4) !important;
  border: 2px dashed rgba(168, 85, 247, 0.25) !important;
  color: #b8b0d0 !important;
  transition: all 0.25s ease !important;
}
.upload-area:hover, .upload-box:hover, .drop-zone:hover,
.upload-placeholder:hover, .uploader-box:hover {
  background: rgba(168, 85, 247, 0.08) !important;
  border-color: rgba(168, 85, 247, 0.45) !important;
  color: #c084fc !important;
}
.upload-area.dragover, .drop-zone.dragover {
  background: rgba(168, 85, 247, 0.15) !important;
  border-color: rgba(168, 85, 247, 0.6) !important;
}

/* --- 头像 / 用户相关 --- */
.user-btn, .header-btn, .header-recharge-btn,
.upgrade-btn, .recharge-btn {
  background: rgba(168, 85, 247, 0.15) !important;
  border-color: rgba(168, 85, 247, 0.3) !important;
  color: #c084fc !important;
}
.user-btn:hover, .header-btn:hover,
.header-recharge-btn:hover, .upgrade-btn:hover,
.recharge-btn:hover {
  background: rgba(168, 85, 247, 0.25) !important;
  color: #fff !important;
}

/* --- 下拉菜单（头像下拉等） --- */
.dropdown-menu, .user-dropdown, .admin-dropdown,
.dropdown-panel, .user-menu {
  background: rgba(22, 14, 45, 0.95) !important;
  border: 1px solid rgba(168, 85, 247, 0.2) !important;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.4) !important;
  backdrop-filter: blur(12px) !important;
}
.dropdown-menu a, .user-dropdown a,
.dropdown-menu .item, .user-menu .item,
.dropdown-admin-btn, .dropdown-logout-btn {
  color: #b8b0d0 !important;
  background: transparent !important;
  border: none !important;
}
.dropdown-menu a:hover, .user-dropdown a:hover,
.dropdown-menu .item:hover, .user-menu .item:hover,
.dropdown-admin-btn:hover, .dropdown-logout-btn:hover {
  background: rgba(168, 85, 247, 0.12) !important;
  color: #fff !important;
}

/* --- 分页 --- */
.pagination .page-item, .pagination-item, .page-btn,
.pager-btn, .pager .item {
  background: rgba(30, 20, 55, 0.5) !important;
  border: 1px solid rgba(168, 85, 247, 0.18) !important;
  color: #b8b0d0 !important;
}
.pagination .page-item.active, .pagination-item.active,
.page-btn.active, .pager-btn.active {
  background: linear-gradient(135deg, #a855f7, #ec4899) !important;
  color: #fff !important;
  border-color: transparent !important;
}
.pagination .page-item:hover, .pagination-item:hover,
.page-btn:hover {
  border-color: rgba(168, 85, 247, 0.4) !important;
  color: #c084fc !important;
}

/* --- 徽章 / 标签（新品/热门/爆款等） --- */
.badge, .tag, .label-tag, .status-tag,
.new-tag, .hot-tag, .popular-tag,
.recommend-tag, .vip-tag {
  background: rgba(168, 85, 247, 0.15) !important;
  color: #c084fc !important;
  border-color: rgba(168, 85, 247, 0.3) !important;
}
.badge.hot, .tag.hot, .hot-tag, .popular-tag {
  background: rgba(236, 72, 153, 0.15) !important;
  color: #f472b6 !important;
  border-color: rgba(236, 72, 153, 0.3) !important;
}
.badge.new, .tag.new, .new-tag {
  background: rgba(34, 197, 94, 0.15) !important;
  color: #4ade80 !important;
  border-color: rgba(34, 197, 94, 0.3) !important;
}

/* --- 模态框 / 弹窗 --- */
.modal, .modal-content, .dialog, .popup,
.layui-layer, .layui-layer-content,
.modal-mask + .modal {
  background: rgba(22, 14, 45, 0.95) !important;
  border: 1px solid rgba(168, 85, 247, 0.2) !important;
  color: #f5f3ff !important;
  backdrop-filter: blur(16px) !important;
}
.modal-header, .modal-title, .dialog-header,
.layui-layer-title {
  background: rgba(30, 20, 55, 0.5) !important;
  border-bottom-color: rgba(168, 85, 247, 0.15) !important;
  color: #fff !important;
}

/* --- 进度条 --- */
.progress, .progress-bar, .bar, .loading-bar {
  background: rgba(168, 85, 247, 0.1) !important;
}
.progress-fill, .progress-inner,
.progress-bar .bar-inner, .bar-fill {
  background: linear-gradient(90deg, #a855f7, #ec4899) !important;
}

/* --- 提示 / Toast --- */
.toast, .message, .notification, .tip-box,
.alert, .notice-box {
  background: rgba(22, 14, 45, 0.95) !important;
  border: 1px solid rgba(168, 85, 247, 0.25) !important;
  color: #f5f3ff !important;
  backdrop-filter: blur(12px) !important;
}


/* ====== 第三轮：高优先级覆盖（解决内联样式 / 高优先级冲突） ====== */

/* Tab 激活态 - 最高优先级 */
.tab-btn.active,
button.tab-btn.active,
.right-tab-btn.active,
button.right-tab-btn.active,
.asset-tab.active,
button.asset-tab.active {
  background: linear-gradient(135deg, rgba(168, 85, 247, 0.28), rgba(236, 72, 153, 0.22)) !important;
  background-color: rgba(168, 85, 247, 0.25) !important;
  border-color: rgba(168, 85, 247, 0.55) !important;
  color: #fff !important;
  box-shadow: 0 2px 12px rgba(168, 85, 247, 0.25) !important;
}

/* 生成按钮 - 最高优先级 */
.gen-btn,
button.gen-btn,
.add-btn,
button.add-btn {
  background: linear-gradient(135deg, #a855f7 0%, #ec4899 100%) !important;
  background-color: #a855f7 !important;
  color: #fff !important;
  border: none !important;
  box-shadow: 0 4px 16px rgba(168, 85, 247, 0.35) !important;
}
.gen-btn:hover,
button.gen-btn:hover,
.add-btn:hover,
button.add-btn:hover {
  background: linear-gradient(135deg, #c084fc 0%, #f472b6 100%) !important;
  background-color: #c084fc !important;
  box-shadow: 0 6px 22px rgba(168, 85, 247, 0.5) !important;
  transform: translateY(-1px);
  color: #fff !important;
}

/* 所有可能是主按钮的元素 - 强力覆盖蓝色 */
button[style*="blue"],
button[style*="Blue"],
button[style*="BLUE"],
.btn[style*="blue"],
[class*="btn"][style*="blue"],
[class*="primary"][style*="blue"] {
  background: linear-gradient(135deg, #a855f7 0%, #ec4899 100%) !important;
  background-color: #a855f7 !important;
  border-color: transparent !important;
  color: #fff !important;
}

/* 所有蓝色边框的按钮 → 紫色边框 */
button[style*="border"][style*="blue"],
[class*="btn"][style*="border"][style*="blue"] {
  border-color: rgba(168, 85, 247, 0.4) !important;
}


/* ====== drama_center 短剧中心专属修复 ====== */

/* 左侧栏 */
.drama-left, .drama-sidebar, .left-panel, .left-sidebar {
  background: rgba(22, 14, 45, 0.85) !important;
  border-right: 1px solid rgba(168, 85, 247, 0.15) !important;
  color: #f5f3ff !important;
}

/* 步骤编号 / 序号 */
.step-num, .step-number, .index-num, .num-badge,
.card-step .num, .step-item .num {
  background: rgba(168, 85, 247, 0.15) !important;
  color: #c084fc !important;
  border-color: rgba(168, 85, 247, 0.3) !important;
}

/* 底部操作栏 */
.bottom-bar, .bottom-action, .footer-bar, .action-footer,
.gen-bottom-bar, .create-bottom-bar {
  background: rgba(22, 14, 45, 0.9) !important;
  border-top: 1px solid rgba(168, 85, 247, 0.18) !important;
  backdrop-filter: blur(12px) !important;
  color: #f5f3ff !important;
}

/* 空状态图标 */
.empty-icon, .empty-avatar, .placeholder-icon,
.no-data-icon, .null-icon {
  background: rgba(30, 20, 55, 0.5) !important;
  color: #6b5c8a !important;
  border-color: rgba(168, 85, 247, 0.15) !important;
}

/* 短剧卡片 */
.drama-card, .drama-item, .episode-card, .episode-item,
.scene-card, .scene-item, .role-card, .role-item,
.character-card, .character-item {
  background: rgba(30, 20, 55, 0.55) !important;
  border-color: rgba(168, 85, 247, 0.18) !important;
  color: #f5f3ff !important;
}
.drama-card:hover, .drama-item:hover,
.episode-card:hover, .scene-card:hover,
.role-card:hover, .character-card:hover {
  border-color: rgba(168, 85, 247, 0.35) !important;
  background: rgba(30, 20, 55, 0.7) !important;
}

/* 步骤卡片 */
.card-step, .step-card, .guide-card, .flow-card {
  background: rgba(30, 20, 55, 0.5) !important;
  border-color: rgba(168, 85, 247, 0.18) !important;
  color: #f5f3ff !important;
}

/* 字体卡片 / 动画卡片 / 花字卡片 */
.font-card, .anim-card, .flower-card, .effect-card,
.sticker-card, .filter-card {
  background: rgba(30, 20, 55, 0.55) !important;
  border-color: rgba(168, 85, 247, 0.18) !important;
  color: #f5f3ff !important;
}
.font-card:hover, .anim-card:hover, .flower-card:hover,
.effect-card:hover, .sticker-card:hover {
  border-color: rgba(168, 85, 247, 0.4) !important;
  background: rgba(168, 85, 247, 0.08) !important;
}

/* 快速模板卡片 */
.quick-tpl-card, .tpl-item, .template-item-card {
  background: rgba(30, 20, 55, 0.5) !important;
  border-color: rgba(168, 85, 247, 0.18) !important;
  color: #f5f3ff !important;
}
.quick-tpl-card:hover, .tpl-item:hover {
  border-color: rgba(168, 85, 247, 0.4) !important;
}


/* ====== bb-btn / d-btn 系列按钮统一 ====== */

/* 主按钮 */
.bb-btn-primary, .bb-btn.bb-btn-primary,
button.bb-btn-primary, button.bb-btn.bb-btn-primary {
  background: linear-gradient(135deg, #a855f7 0%, #ec4899 100%) !important;
  background-color: #a855f7 !important;
  color: #fff !important;
  border: none !important;
  box-shadow: 0 4px 14px rgba(168, 85, 247, 0.35) !important;
  transition: all 0.25s ease !important;
}
.bb-btn-primary:hover, .bb-btn.bb-btn-primary:hover {
  background: linear-gradient(135deg, #c084fc 0%, #f472b6 100%) !important;
  background-color: #c084fc !important;
  box-shadow: 0 6px 20px rgba(168, 85, 247, 0.5) !important;
  transform: translateY(-1px);
  color: #fff !important;
}

/* 次按钮 */
.bb-btn-default, .bb-btn.bb-btn-default,
.bb-btn-ghost, .bb-btn.bb-btn-ghost,
.bb-btn-outline, .bb-btn.bb-btn-outline {
  background: rgba(30, 20, 55, 0.6) !important;
  border: 1px solid rgba(168, 85, 247, 0.25) !important;
  color: #b8b0d0 !important;
  transition: all 0.2s ease !important;
}
.bb-btn-default:hover, .bb-btn-ghost:hover, .bb-btn-outline:hover {
  background: rgba(168, 85, 247, 0.15) !important;
  border-color: rgba(168, 85, 247, 0.45) !important;
  color: #fff !important;
}

/* d-btn 系列 */
.d-btn.primary, .d-btn.d-btn-primary,
button.d-btn.primary {
  background: linear-gradient(135deg, #a855f7 0%, #ec4899 100%) !important;
  background-color: #a855f7 !important;
  color: #fff !important;
  border: none !important;
  box-shadow: 0 4px 14px rgba(168, 85, 247, 0.35) !important;
}
.d-btn.primary:hover, .d-btn.d-btn-primary:hover {
  background: linear-gradient(135deg, #c084fc 0%, #f472b6 100%) !important;
  box-shadow: 0 6px 20px rgba(168, 85, 247, 0.5) !important;
  color: #fff !important;
}
.d-btn.ghost, .d-btn.d-btn-ghost,
.d-btn.default, .d-btn.d-btn-default,
.d-btn.secondary, .d-btn.d-btn-secondary {
  background: rgba(30, 20, 55, 0.6) !important;
  border: 1px solid rgba(168, 85, 247, 0.25) !important;
  color: #b8b0d0 !important;
}
.d-btn.ghost:hover, .d-btn.default:hover, .d-btn.secondary:hover {
  background: rgba(168, 85, 247, 0.15) !important;
  border-color: rgba(168, 85, 247, 0.45) !important;
  color: #fff !important;
}

/* 生成状态文字（原来是蓝色） */
.gen-text, .gen-status-text, .generating-text {
  color: #c084fc !important;
}

/* 快捷分类/题材标签 */
.qt-genre, .genre-tag, .topic-tag, .category-pill,
.qt-tag, .quick-tag, .prompt-bar-btn {
  background: rgba(30, 20, 55, 0.5) !important;
  border: 1px solid rgba(168, 85, 247, 0.18) !important;
  color: #b8b0d0 !important;
  transition: all 0.2s ease !important;
}
.qt-genre:hover, .genre-tag:hover, .topic-tag:hover,
.category-pill:hover, .qt-tag:hover, .prompt-bar-btn:hover {
  background: rgba(168, 85, 247, 0.12) !important;
  border-color: rgba(168, 85, 247, 0.35) !important;
  color: #c084fc !important;
}
.qt-genre.active, .genre-tag.active, .topic-tag.active,
.category-pill.active, .qt-tag.active {
  background: linear-gradient(135deg, rgba(168, 85, 247, 0.25), rgba(236, 72, 153, 0.18)) !important;
  border-color: rgba(168, 85, 247, 0.5) !important;
  color: #fff !important;
}


/* ====== text_to_image_center 文生图专属修复 ====== */

/* 模型选择卡片 */
.model-select-card, .model-card, .model-option-card {
  background: rgba(30, 20, 55, 0.55) !important;
  border-color: rgba(168, 85, 247, 0.18) !important;
  color: #f5f3ff !important;
}
.model-select-card:hover, .model-card:hover {
  border-color: rgba(168, 85, 247, 0.4) !important;
  background: rgba(30, 20, 55, 0.7) !important;
}
.model-select-card.active, .model-card.active,
.model-option-card.active, .model-select-card.selected {
  background: linear-gradient(135deg, rgba(168, 85, 247, 0.2), rgba(236, 72, 153, 0.15)) !important;
  border-color: rgba(168, 85, 247, 0.5) !important;
  color: #fff !important;
}

/* 模型标签 */
.model-select-tag, .model-tag, .model-badge,
.model-label-tag, .model-version-tag {
  background: rgba(168, 85, 247, 0.18) !important;
  color: #c084fc !important;
  border-color: rgba(168, 85, 247, 0.3) !important;
}

/* 当前播放条 / 预览条 */
.current-play-bar, .play-bar, .preview-bar,
.player-bar, .now-playing-bar {
  background: rgba(30, 20, 55, 0.6) !important;
  border-color: rgba(168, 85, 247, 0.18) !important;
  color: #f5f3ff !important;
}
.current-play-emoji, .play-emoji, .bar-emoji,
.play-icon-circle {
  background: rgba(168, 85, 247, 0.15) !important;
  border-color: rgba(168, 85, 247, 0.25) !important;
  color: #c084fc !important;
}
.current-play-switch, .play-switch, .switch-btn {
  background: rgba(168, 85, 247, 0.18) !important;
  color: #c084fc !important;
  border-color: rgba(168, 85, 247, 0.3) !important;
}

/* 快捷操作项 */
.play-shortcut-item, .shortcut-item, .quick-item,
.quick-action-item, .tool-shortcut-item {
  background: rgba(30, 20, 55, 0.5) !important;
  border-color: rgba(168, 85, 247, 0.15) !important;
  color: #b8b0d0 !important;
}
.play-shortcut-item:hover, .shortcut-item:hover, .quick-item:hover {
  background: rgba(168, 85, 247, 0.12) !important;
  border-color: rgba(168, 85, 247, 0.35) !important;
  color: #c084fc !important;
}
.play-shortcut-item.active, .shortcut-item.active, .quick-item.active {
  background: linear-gradient(135deg, rgba(168, 85, 247, 0.25), rgba(236, 72, 153, 0.18)) !important;
  border-color: rgba(168, 85, 247, 0.5) !important;
  color: #fff !important;
}

/* 引导提示 / 黄色提示条 */
.guide-tip, .tip-bar, .hint-bar, .notice-tip,
.info-tip, .warn-tip, .alert-tip, .guide-notice {
  background: rgba(168, 85, 247, 0.08) !important;
  border: 1px solid rgba(168, 85, 247, 0.25) !important;
  color: #d8b4fe !important;
}

/* 加号图标 / 添加按钮 */
.plus-icon, .add-icon, .icon-plus, .upload-plus {
  background: rgba(168, 85, 247, 0.15) !important;
  color: #c084fc !important;
  border-color: rgba(168, 85, 247, 0.25) !important;
}

/* 结果数量徽章 */
.result-count, .count-badge, .num-badge,
.total-count, .record-count {
  background: rgba(168, 85, 247, 0.18) !important;
  color: #c084fc !important;
  border-color: rgba(168, 85, 247, 0.3) !important;
}

/* 开关圆点（白底修复） */
.wm-switch-dot, .switch-dot, .toggle-dot,
.switch-thumb, .toggle-thumb {
  background: #c084fc !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3) !important;
}
.wm-switch, .switch-track, .toggle-track {
  background: rgba(30, 20, 55, 0.8) !important;
  border-color: rgba(168, 85, 247, 0.25) !important;
}
.wm-switch.active, .switch-track.active, .toggle-track.active {
  background: rgba(168, 85, 247, 0.4) !important;
}


/* ====== 全站顶栏统一风格（100% 对齐 home-purple-v2 胶囊风格） ====== */

/* --- 顶栏主体 --- */
body #globalTopbar .global-topbar,
body .global-topbar,
.shell-topbar {
    background: rgba(5, 2, 10, 0.7) !important;
    background-image: none !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    box-shadow: none !important;
    border-bottom: 1px solid rgba(168, 85, 247, 0.22) !important;
    height: 72px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
body #globalTopbar .global-topbar-inner,
body .global-topbar-inner {
    height: 72px !important;
}

/* --- 左侧 Logo / 品牌区 --- */
body #globalTopbar .global-topbar-left,
body #globalTopbar .global-topbar-right,
body #globalTopbar .global-topbar-center {
    height: 72px !important;
    display: flex !important;
    align-items: center !important;
}
body #globalTopbar .global-topbar-brand {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}
body #globalTopbar .global-topbar-logo {
    width: 42px !important;
    height: 42px !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #a855f7, #ec4899) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 0 30px rgba(168, 85, 247, 0.4) !important;
    overflow: hidden !important;
    padding: 0 !important;
}
body #globalTopbar .global-topbar-logo img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 12px !important;
}
body #globalTopbar .global-topbar-site,
body #globalTopbar .site-name {
    font-size: 20px !important;
    font-weight: 700 !important;
    background: linear-gradient(135deg, #fff 0%, #c084fc 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    border: none !important;
    padding: 0 !important;
}

/* --- 中间主导航 - 胶囊风格（核心） --- */
body #globalTopbar .jm-top-nav,
body #globalTopbar .global-topbar-center,
body #globalTopbar .top-nav {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    height: 72px !important;
}
body #globalTopbar .jm-top-nav > a,
body #globalTopbar .global-topbar-center > a,
body #globalTopbar .top-nav > a,
body #globalTopbar .nav-item > a,
body #globalTopbar .nav-dropdown-trigger {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 10px 18px !important;
    height: auto !important;
    line-height: 1.4 !important;
    border-radius: 100px !important;
    font-size: 14px !important;
    color: #b8b0d0 !important;
    text-decoration: none !important;
    border: 1px solid transparent !important;
    transition: all 0.3s ease !important;
    white-space: nowrap !important;
    background: transparent !important;
    font-weight: 400 !important;
    position: static !important;
    box-shadow: none !important;
}
body #globalTopbar .jm-top-nav > a:hover,
body #globalTopbar .global-topbar-center > a:hover,
body #globalTopbar .top-nav > a:hover,
body #globalTopbar .nav-item > a:hover,
body #globalTopbar .nav-dropdown-trigger:hover,
body #globalTopbar .nav-dropdown:hover .nav-dropdown-trigger {
    color: #fff !important;
    background: rgba(168, 85, 247, 0.12) !important;
    box-shadow: 0 0 24px rgba(168, 85, 247, 0.18) !important;
    border-color: rgba(168, 85, 247, 0.25) !important;
}
body #globalTopbar .jm-top-nav > a.active,
body #globalTopbar .global-topbar-center > a.active,
body #globalTopbar .top-nav > a.active,
body #globalTopbar .nav-item > a.active {
    color: #fff !important;
    background: rgba(168, 85, 247, 0.2) !important;
    box-shadow: 0 0 24px rgba(168, 85, 247, 0.22) !important;
    border-color: rgba(168, 85, 247, 0.35) !important;
    font-weight: 400 !important;
}
body #globalTopbar .jm-top-nav > a .icon,
body #globalTopbar .global-topbar-center > a .icon,
body #globalTopbar .top-nav > a i:first-child {
    font-size: 16px !important;
    line-height: 1 !important;
}
/* 移除旧的底部指示条 */
body #globalTopbar .jm-top-nav > a.active::after,
body #globalTopbar .global-topbar-center > a.active::after,
body #globalTopbar .top-nav > a.active::after {
    display: none !important;
}

/* --- 下拉菜单面板 --- */
body #globalTopbar .nav-dropdown .dropdown-panel,
body #globalTopbar .dropdown-panel,
body #globalTopbar .dropdown-menu,
body #globalTopbar .user-dropdown,
body #globalTopbar .topbar-dropdown,
body #globalTopbar .nav-dropdown-panel,
body #globalTopbar .user-dropdown-panel,
body #globalTopbar .global-topbar-dropdown,
body #globalTopbar .mobile-panel {
    position: absolute !important;
    top: calc(100% + 8px) !important;
    min-width: 160px !important;
    padding: 8px !important;
    background: rgba(18, 12, 37, 0.95) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 12px !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5) !important;
    color: #f5f3ff !important;
    z-index: 1000 !important;
}

/* --- 下拉菜单项 --- */
body #globalTopbar .dropdown-panel a,
body #globalTopbar .dropdown-menu a,
body #globalTopbar .nav-dropdown a,
body #globalTopbar .dropdown-item,
body #globalTopbar .user-dropdown-panel a,
body #globalTopbar .global-topbar-dropdown a,
body #globalTopbar .nav-dropdown-item {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 10px 14px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    color: #b8b0d0 !important;
    text-decoration: none !important;
    border: 1px solid transparent !important;
    transition: all 0.25s ease !important;
    white-space: nowrap !important;
    height: auto !important;
    line-height: 1.4 !important;
    background: transparent !important;
}
body #globalTopbar .dropdown-panel a:hover,
body #globalTopbar .dropdown-menu a:hover,
body #globalTopbar .nav-dropdown a:hover,
body #globalTopbar .dropdown-item:hover,
body #globalTopbar .user-dropdown-panel a:hover,
body #globalTopbar .global-topbar-dropdown a:hover,
body #globalTopbar .nav-dropdown-item:hover {
    color: #fff !important;
    background: rgba(168, 85, 247, 0.15) !important;
    border-color: rgba(168, 85, 247, 0.25) !important;
}
body #globalTopbar .dropdown-panel a.active,
body #globalTopbar .dropdown-item.active,
body #globalTopbar .nav-dropdown-item.active {
    color: #fff !important;
    background: rgba(168, 85, 247, 0.22) !important;
    border-color: rgba(168, 85, 247, 0.35) !important;
}

/* --- 下拉面板标题 --- */
body #globalTopbar .dropdown-title,
body #globalTopbar .panel-title,
body #globalTopbar .dropdown-header {
    color: #f5f3ff !important;
    font-weight: 600 !important;
    border-bottom: 1px solid rgba(168, 85, 247, 0.15) !important;
}

/* --- 右侧菜单项 --- */
body #globalTopbar .global-topbar-right,
body #globalTopbar .topbar-right {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    height: 72px !important;
}
body #globalTopbar .global-topbar-right .global-topbar-item,
body #globalTopbar .topbar-right .topbar-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 0 14px !important;
    height: 72px !important;
    color: #b8b0d0 !important;
    transition: all 0.25s ease !important;
    background: transparent !important;
    border: none !important;
}
body #globalTopbar .global-topbar-right .global-topbar-item:hover,
body #globalTopbar .topbar-right .topbar-item:hover {
    color: #fff !important;
    background: rgba(168, 85, 247, 0.12) !important;
}

/* --- 积分 / 点数 --- */
body #globalTopbar .points,
body #globalTopbar .credits,
body #globalTopbar .user-points,
body #globalTopbar .global-topbar-item.points,
body #globalTopbar .global-topbar-item.credits,
body #globalTopbar .points-balance,
body #globalTopbar .credits-value {
    color: #f5f3ff !important;
    font-weight: 500 !important;
}
body #globalTopbar .points i,
body #globalTopbar .credits i,
body #globalTopbar .user-points i {
    color: #fbbf24 !important;
}
body #globalTopbar .points-label,
body #globalTopbar .credits-label {
    color: #9a90b5 !important;
}

/* --- 充值按钮 --- */
body #globalTopbar .recharge-btn,
body #globalTopbar .top-up-btn,
body #globalTopbar .global-topbar-item.recharge {
    color: #c084fc !important;
    font-weight: 600 !important;
}
body #globalTopbar .recharge-btn:hover,
body #globalTopbar .top-up-btn:hover {
    color: #fff !important;
    background: linear-gradient(135deg, rgba(168, 85, 247, 0.25), rgba(236, 72, 153, 0.2)) !important;
}

/* --- 用户头像 --- */
body #globalTopbar .user-avatar,
body #globalTopbar .avatar,
body #globalTopbar .global-topbar-avatar,
body #globalTopbar .avatar-img {
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    border: 2px solid rgba(168, 85, 247, 0.4) !important;
    box-shadow: 0 0 0 1px rgba(168, 85, 247, 0.2) !important;
    object-fit: cover !important;
}

/* --- 用户名 --- */
body #globalTopbar .user-name,
body #globalTopbar .username,
body #globalTopbar .global-topbar-username {
    color: #f5f3ff !important;
    font-weight: 500 !important;
}

/* --- 手机访问下拉面板 --- */
body #globalTopbar .global-topbar-mobile-panel,
body #globalTopbar .mobile-dropdown-panel {
    background: rgba(18, 12, 37, 0.95) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5) !important;
    border-radius: 12px !important;
    color: #f5f3ff !important;
    padding: 8px !important;
}
body #globalTopbar .global-topbar-mobile-title {
    color: #f5f3ff !important;
    border-bottom: 1px solid rgba(168, 85, 247, 0.15) !important;
}
body #globalTopbar .global-topbar-mobile-tab {
    background: rgba(30, 20, 55, 0.5) !important;
    color: #b8b0d0 !important;
    border: 1px solid rgba(168, 85, 247, 0.15) !important;
    border-radius: 10px !important;
    transition: all 0.25s ease !important;
}
body #globalTopbar .global-topbar-mobile-tab.active {
    background: linear-gradient(135deg, #a855f7, #ec4899) !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: 0 4px 14px rgba(168, 85, 247, 0.35) !important;
}

/* --- 移动端响应式 --- */
@media (max-width: 768px) {
    body #globalTopbar .global-topbar {
        height: 60px !important;
    }
    body #globalTopbar .global-topbar-inner {
        height: 60px !important;
    }
    body #globalTopbar .global-topbar-left,
    body #globalTopbar .global-topbar-right,
    body #globalTopbar .global-topbar-center {
        height: 60px !important;
    }
    body #globalTopbar .jm-top-nav > a {
        padding: 8px 14px !important;
        font-size: 13px !important;
    }
    body #globalTopbar .jm-top-nav > a .icon {
        font-size: 15px !important;
    }
    body #globalTopbar .global-topbar-item {
        height: 60px !important;
    }
    body #globalTopbar .global-topbar-logo {
        width: 36px !important;
        height: 36px !important;
    }
    body #globalTopbar .global-topbar-site {
        font-size: 17px !important;
    }
}

/* ====== text_to_image_center 文生图专属修复 ====== */

/* 模型选择卡片 */
.model-select-card, .model-card, .model-option-card {
  background: rgba(30, 20, 55, 0.55) !important;
  border-color: rgba(168, 85, 247, 0.18) !important;
  color: #f5f3ff !important;
}
.model-select-card:hover, .model-card:hover {
  border-color: rgba(168, 85, 247, 0.4) !important;
  background: rgba(30, 20, 55, 0.7) !important;
}
.model-select-card.active, .model-card.active,
.model-option-card.active, .model-select-card.selected {
  background: linear-gradient(135deg, rgba(168, 85, 247, 0.2), rgba(236, 72, 153, 0.15)) !important;
  border-color: rgba(168, 85, 247, 0.5) !important;
  color: #fff !important;
}

/* 模型标签 */
.model-select-tag, .model-tag, .model-badge,
.model-label-tag, .model-version-tag {
  background: rgba(168, 85, 247, 0.18) !important;
  color: #c084fc !important;
  border-color: rgba(168, 85, 247, 0.3) !important;
}

/* 当前播放条 / 预览条 */
.current-play-bar, .play-bar, .preview-bar,
.player-bar, .now-playing-bar {
  background: rgba(30, 20, 55, 0.6) !important;
  border-color: rgba(168, 85, 247, 0.18) !important;
  color: #f5f3ff !important;
}
.current-play-emoji, .play-emoji, .bar-emoji,
.play-icon-circle {
  background: rgba(168, 85, 247, 0.15) !important;
  border-color: rgba(168, 85, 247, 0.25) !important;
  color: #c084fc !important;
}
.current-play-switch, .play-switch, .switch-btn {
  background: rgba(168, 85, 247, 0.18) !important;
  color: #c084fc !important;
  border-color: rgba(168, 85, 247, 0.3) !important;
}

/* 快捷操作项 */
.play-shortcut-item, .shortcut-item, .quick-item,
.quick-action-item, .tool-shortcut-item {
  background: rgba(30, 20, 55, 0.5) !important;
  border-color: rgba(168, 85, 247, 0.15) !important;
  color: #b8b0d0 !important;
}
.play-shortcut-item:hover, .shortcut-item:hover, .quick-item:hover {
  background: rgba(168, 85, 247, 0.12) !important;
  border-color: rgba(168, 85, 247, 0.35) !important;
  color: #c084fc !important;
}
.play-shortcut-item.active, .shortcut-item.active, .quick-item.active {
  background: linear-gradient(135deg, rgba(168, 85, 247, 0.25), rgba(236, 72, 153, 0.18)) !important;
  border-color: rgba(168, 85, 247, 0.5) !important;
  color: #fff !important;
}

/* 引导提示 / 黄色提示条 */
.guide-tip, .tip-bar, .hint-bar, .notice-tip,
.info-tip, .warn-tip, .alert-tip, .guide-notice {
  background: rgba(168, 85, 247, 0.08) !important;
  border: 1px solid rgba(168, 85, 247, 0.25) !important;
  color: #d8b4fe !important;
}

/* 加号图标 / 添加按钮 */
.plus-icon, .add-icon, .icon-plus, .upload-plus {
  background: rgba(168, 85, 247, 0.15) !important;
  color: #c084fc !important;
  border-color: rgba(168, 85, 247, 0.25) !important;
}

/* 结果数量徽章 */
.result-count, .count-badge, .num-badge,
.total-count, .record-count {
  background: rgba(168, 85, 247, 0.18) !important;
  color: #c084fc !important;
  border-color: rgba(168, 85, 247, 0.3) !important;
}

/* 开关圆点（白底修复） */
.wm-switch-dot, .switch-dot, .toggle-dot,
.switch-thumb, .toggle-thumb {
  background: #c084fc !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3) !important;
}
.wm-switch, .switch-track, .toggle-track {
  background: rgba(30, 20, 55, 0.8) !important;
  border-color: rgba(168, 85, 247, 0.25) !important;
}
.wm-switch.active, .switch-track.active, .toggle-track.active {
  background: rgba(168, 85, 247, 0.4) !important;
}



/* ====== 顶栏导航胶囊 - 最终强制覆盖（最高优先级） ====== */
html body #globalTopbar .global-topbar .jm-top-nav > a,
html body #globalTopbar .global-topbar .jm-top-nav a,
html body #globalTopbar .global-topbar .jm-top-nav .nav-dropdown-trigger,
html body #globalTopbar .global-topbar .global-topbar-center > a,
html body #globalTopbar .global-topbar .global-topbar-center a,
html body #globalTopbar .global-topbar .top-nav > a,
html body #globalTopbar .global-topbar .top-nav a {
    padding: 10px 18px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    height: auto !important;
    line-height: 1.4 !important;
    border-radius: 100px !important;
    border: 1px solid transparent !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 14px !important;
    color: #b8b0d0 !important;
    background: transparent !important;
    transition: all 0.3s ease !important;
    box-shadow: none !important;
    position: static !important;
    white-space: nowrap !important;
}
html body #globalTopbar .global-topbar .jm-top-nav > a:hover,
html body #globalTopbar .global-topbar .jm-top-nav a:hover,
html body #globalTopbar .global-topbar .jm-top-nav .nav-dropdown-trigger:hover,
html body #globalTopbar .global-topbar .nav-dropdown:hover .nav-dropdown-trigger {
    color: #fff !important;
    background: rgba(168, 85, 247, 0.12) !important;
    box-shadow: 0 0 24px rgba(168, 85, 247, 0.18) !important;
    border-color: rgba(168, 85, 247, 0.25) !important;
}
html body #globalTopbar .global-topbar .jm-top-nav > a.active,
html body #globalTopbar .global-topbar .jm-top-nav a.active,
html body #globalTopbar .global-topbar .global-topbar-center > a.active,
html body #globalTopbar .global-topbar .global-topbar-center a.active {
    color: #fff !important;
    background: rgba(168, 85, 247, 0.2) !important;
    box-shadow: 0 0 24px rgba(168, 85, 247, 0.22) !important;
    border-color: rgba(168, 85, 247, 0.35) !important;
}
/* 移除底部指示条 */
html body #globalTopbar .global-topbar .jm-top-nav > a.active::after,
html body #globalTopbar .global-topbar .jm-top-nav a.active::after,
html body #globalTopbar .global-topbar .global-topbar-center > a.active::after,
html body #globalTopbar .global-topbar .global-topbar-center a.active::after {
    display: none !important;
}

/* 下拉菜单项 - 最终强制覆盖 */
html body #globalTopbar .global-topbar .dropdown-panel a,
html body #globalTopbar .global-topbar .dropdown-menu a,
html body #globalTopbar .global-topbar .nav-dropdown-item,
html body #globalTopbar .global-topbar .dropdown-item {
    padding: 10px 14px !important;
    border-radius: 10px !important;
    border: 1px solid transparent !important;
    height: auto !important;
    line-height: 1.4 !important;
    color: #b8b0d0 !important;
    background: transparent !important;
    transition: all 0.25s ease !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}
html body #globalTopbar .global-topbar .dropdown-panel a:hover,
html body #globalTopbar .global-topbar .dropdown-menu a:hover,
html body #globalTopbar .global-topbar .nav-dropdown-item:hover,
html body #globalTopbar .global-topbar .dropdown-item:hover {
    color: #fff !important;
    background: rgba(168, 85, 247, 0.15) !important;
    border-color: rgba(168, 85, 247, 0.25) !important;
}
html body #globalTopbar .global-topbar .dropdown-panel a.active,
html body #globalTopbar .global-topbar .nav-dropdown-item.active {
    color: #fff !important;
    background: rgba(168, 85, 247, 0.22) !important;
    border-color: rgba(168, 85, 247, 0.35) !important;
}

/* 顶栏容器 flex 居中 - 最终强制 */
html body #globalTopbar .global-topbar .jm-top-nav,
html body #globalTopbar .global-topbar .global-topbar-center,
html body #globalTopbar .global-topbar .top-nav {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    height: 72px !important;
}



/* ====== 独立 .header 头部统一风格（对齐 home-purple-v2 胶囊风格） ====== */

/* 头部主体 */
body .header,
body header.header,
body .site-header,
body .top-header {
    background: rgba(5, 2, 10, 0.7) !important;
    background-image: none !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    box-shadow: none !important;
    border-bottom: 1px solid rgba(168, 85, 247, 0.22) !important;
    height: 72px !important;
    padding: 0 !important;
}

/* Logo 区域 */
body .header .logo,
body .header .header-logo,
body .site-header .logo {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    text-decoration: none !important;
}
body .header .logo-icon,
body .header .header-logo-icon,
body .site-header .logo-icon {
    width: 42px !important;
    height: 42px !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #a855f7, #ec4899) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-shadow: 0 0 30px rgba(168, 85, 247, 0.4) !important;
    overflow: hidden !important;
    padding: 0 !important;
}
body .header .logo-icon img,
body .header .header-logo-icon img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border-radius: 12px !important;
}
body .header #siteName,
body .header .site-name,
body .header .logo span,
body .site-header .site-name {
    font-size: 20px !important;
    font-weight: 700 !important;
    background: linear-gradient(135deg, #fff 0%, #c084fc 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    color: transparent !important;
}

/* 右侧按钮/图标 */
body .header .header-right,
body .site-header .header-right {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    height: 72px !important;
}
body .header .header-btn,
body .site-header .header-btn,
body .header .header-icon-btn {
    width: 40px !important;
    height: 40px !important;
    border-radius: 100px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #b8b0d0 !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    font-size: 18px !important;
}
body .header .header-btn:hover,
body .site-header .header-btn:hover {
    color: #fff !important;
    background: rgba(168, 85, 247, 0.12) !important;
    border-color: rgba(168, 85, 247, 0.25) !important;
    box-shadow: 0 0 24px rgba(168, 85, 247, 0.18) !important;
}

/* 积分显示 */
body .header .header-points,
body .site-header .header-points {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 0 14px !important;
    height: 40px !important;
    border-radius: 100px !important;
    color: #f5f3ff !important;
    font-weight: 500 !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    transition: all 0.3s ease !important;
}
body .header .header-points:hover {
    background: rgba(168, 85, 247, 0.12) !important;
    border-color: rgba(168, 85, 247, 0.25) !important;
}
body .header .header-points i {
    color: #fbbf24 !important;
}

/* 充值按钮 */
body .header .header-recharge-btn,
body .site-header .header-recharge-btn,
body .header .recharge-btn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 10px 18px !important;
    height: auto !important;
    border-radius: 100px !important;
    font-size: 14px !important;
    color: #fff !important;
    background: linear-gradient(135deg, #a855f7, #ec4899) !important;
    border: none !important;
    box-shadow: 0 4px 14px rgba(168, 85, 247, 0.35) !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    font-weight: 500 !important;
}
body .header .header-recharge-btn:hover,
body .site-header .header-recharge-btn:hover {
    background: linear-gradient(135deg, #c084fc, #f472b6) !important;
    box-shadow: 0 6px 20px rgba(168, 85, 247, 0.5) !important;
    transform: translateY(-1px) !important;
}

/* 用户头像 */
body .header .header-user,
body .site-header .header-user,
body .header .user-avatar-wrap {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 0 8px 0 14px !important;
    height: 72px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}
body .header .header-user:hover {
    background: rgba(168, 85, 247, 0.08) !important;
}
body .header .user-avatar,
body .site-header .user-avatar {
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    border: 2px solid rgba(168, 85, 247, 0.4) !important;
    box-shadow: 0 0 0 1px rgba(168, 85, 247, 0.2) !important;
    object-fit: cover !important;
}
body .header .user-name,
body .site-header .user-name {
    color: #f5f3ff !important;
    font-weight: 500 !important;
    font-size: 14px !important;
}

/* 移动端响应式 */
@media (max-width: 768px) {
    body .header {
        height: 60px !important;
    }
    body .header .header-right {
        height: 60px !important;
    }
    body .header .logo-icon {
        width: 36px !important;
        height: 36px !important;
    }
    body .header #siteName {
        font-size: 17px !important;
    }
    body .header .header-btn {
        width: 36px !important;
        height: 36px !important;
    }
    body .header .header-points {
        height: 36px !important;
        padding: 0 12px !important;
    }
    body .header .header-recharge-btn {
        padding: 8px 14px !important;
        font-size: 13px !important;
    }
}


/* ====== 隐藏主题切换按钮（默认紫金黑风格，不需要切换） ====== */
#themeToggleBtn,
.theme-toggle-btn,
.theme-switch-btn,
.theme-toggle,
.switch-theme-btn,
[class*="theme-toggle"],
[class*="themeToggle"],
[class*="ThemeToggle"],
[onclick*="toggleTheme"],
[onclick*="switchTheme"],
[onclick*="changeTheme"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* .header 结构中的主题按钮 */
body .header #themeToggleBtn,
body .header .theme-toggle-btn,
body .header .theme-btn {
    display: none !important;
}

/* #globalTopbar 结构中的主题按钮 */
body #globalTopbar .theme-toggle-btn,
body #globalTopbar #themeToggleBtn,
body #globalTopbar .topbar-item.theme-toggle {
    display: none !important;
}


/* ====== 顶栏通知按钮 - 统一胶囊风格 ====== */
body #globalTopbar .global-topbar-notification,
body #globalTopbar .global-topbar-item.global-topbar-notification {
    width: 40px !important;
    height: 40px !important;
    border-radius: 100px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    color: #b8b0d0 !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    font-size: 18px !important;
    position: relative !important;
    line-height: 1 !important;
}
body #globalTopbar .global-topbar-notification:hover {
    color: #fff !important;
    background: rgba(168, 85, 247, 0.12) !important;
    border-color: rgba(168, 85, 247, 0.25) !important;
    box-shadow: 0 0 24px rgba(168, 85, 247, 0.18) !important;
}
body #globalTopbar .global-topbar-notification i {
    font-size: 18px !important;
    line-height: 1 !important;
}


/* ====== 充值按钮 - 图片质感 Premium 风格（统一所有页面） ====== */

/* --- 1. home.html / .header 结构的充值按钮 --- */
body .header .header-recharge-btn,
body .header-recharge-btn {
    position: relative !important;
    padding: 0 20px 0 16px !important;
    height: 40px !important;
    border-radius: 100px !important;
    border: none !important;
    cursor: pointer !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #fff !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    letter-spacing: 0.3px !important;
    overflow: hidden !important;
    background:
        /* 顶部高光 */
        linear-gradient(180deg, rgba(255,255,255,0.35) 0%, rgba(255,255,255,0.08) 45%, rgba(255,255,255,0) 55%),
        /* 主渐变 - 金紫渐变 */
        linear-gradient(135deg, #f59e0b 0%, #ec4899 35%, #a855f7 70%, #6366f1 100%),
        /* 底层深色 */
        linear-gradient(135deg, #7c3aed, #ec4899) !important;
    box-shadow:
        /* 外发光 */
        0 0 24px rgba(236, 72, 153, 0.45),
        0 0 48px rgba(168, 85, 247, 0.25),
        /* 底部深色阴影 */
        0 6px 20px rgba(124, 58, 237, 0.4),
        /* 内阴影 - 底部暗部 */
        inset 0 -2px 4px rgba(0, 0, 0, 0.2),
        /* 内阴影 - 顶部亮部 */
        inset 0 1px 0 rgba(255, 255, 255, 0.3) !important;
    transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2) !important;
}

/* 光带动画 */
body .header .header-recharge-btn::before,
body .header-recharge-btn::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: -100% !important;
    width: 60% !important;
    height: 100% !important;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent) !important;
    transform: skewX(-15deg) !important;
    animation: recharge-shine 3.5s ease-in-out infinite !important;
    pointer-events: none !important;
}

@keyframes recharge-shine {
    0% { left: -100%; }
    60% { left: 120%; }
    100% { left: 120%; }
}

body .header .header-recharge-btn:hover,
body .header-recharge-btn:hover {
    transform: translateY(-1px) scale(1.02) !important;
    box-shadow:
        0 0 32px rgba(236, 72, 153, 0.6),
        0 0 64px rgba(168, 85, 247, 0.35),
        0 8px 28px rgba(124, 58, 237, 0.5),
        inset 0 -2px 4px rgba(0, 0, 0, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.35) !important;
}

body .header .header-recharge-btn:active,
body .header-recharge-btn:active {
    transform: translateY(0) scale(0.98) !important;
}

body .header .header-recharge-btn i,
body .header-recharge-btn i {
    font-size: 16px !important;
    color: #fef3c7 !important;
    text-shadow: 0 0 8px rgba(251, 191, 36, 0.6) !important;
    filter: drop-shadow(0 1px 1px rgba(0,0,0,0.2)) !important;
}

/* --- 2. globalTopbar 结构的充值按钮 --- */
body #globalTopbar .global-topbar-recharge-btn,
body #globalTopbar .global-topbar-item[data-entry="recharge"],
body #globalTopbar .global-topbar-recharge,
body #globalTopbar [data-entry="recharge"] {
    position: relative !important;
    height: 36px !important;
    padding: 0 18px 0 14px !important;
    border-radius: 100px !important;
    border: none !important;
    cursor: pointer !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #fff !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    letter-spacing: 0.2px !important;
    overflow: hidden !important;
    line-height: 36px !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.32) 0%, rgba(255,255,255,0.06) 45%, rgba(255,255,255,0) 55%),
        linear-gradient(135deg, #f59e0b 0%, #ec4899 35%, #a855f7 70%, #6366f1 100%),
        linear-gradient(135deg, #7c3aed, #ec4899) !important;
    box-shadow:
        0 0 20px rgba(236, 72, 153, 0.4),
        0 0 40px rgba(168, 85, 247, 0.22),
        0 5px 16px rgba(124, 58, 237, 0.35),
        inset 0 -2px 4px rgba(0, 0, 0, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.28) !important;
    transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2) !important;
}

body #globalTopbar .global-topbar-recharge-btn::before,
body #globalTopbar .global-topbar-item[data-entry="recharge"]::before,
body #globalTopbar [data-entry="recharge"]::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: -100% !important;
    width: 55% !important;
    height: 100% !important;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.35), transparent) !important;
    transform: skewX(-15deg) !important;
    animation: recharge-shine 3.5s ease-in-out infinite !important;
    pointer-events: none !important;
}

body #globalTopbar .global-topbar-recharge-btn:hover,
body #globalTopbar .global-topbar-item[data-entry="recharge"]:hover,
body #globalTopbar [data-entry="recharge"]:hover {
    transform: translateY(-1px) scale(1.02) !important;
    box-shadow:
        0 0 28px rgba(236, 72, 153, 0.55),
        0 0 56px rgba(168, 85, 247, 0.3),
        0 7px 22px rgba(124, 58, 237, 0.45),
        inset 0 -2px 4px rgba(0, 0, 0, 0.18),
        inset 0 1px 0 rgba(255, 255, 255, 0.32) !important;
    color: #fff !important;
}

body #globalTopbar .global-topbar-recharge-btn i,
body #globalTopbar .global-topbar-item[data-entry="recharge"] i,
body #globalTopbar [data-entry="recharge"] i {
    font-size: 15px !important;
    color: #fef3c7 !important;
    text-shadow: 0 0 6px rgba(251, 191, 36, 0.5) !important;
    filter: drop-shadow(0 1px 1px rgba(0,0,0,0.2)) !important;
}

body #globalTopbar .global-topbar-recharge-btn .global-topbar-text,
body #globalTopbar .global-topbar-item[data-entry="recharge"] .global-topbar-text,
body #globalTopbar [data-entry="recharge"] .global-topbar-text {
    color: #fff !important;
    font-weight: 600 !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2) !important;
}


/* ====== 头部布局统一：Logo 居左 + 菜单居中 + 操作靠右 ====== */

/* --- 1. globalTopbar 三栏布局（Logo左 + 菜单左对齐 + 操作右）--- */
html body #globalTopbar .global-topbar {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    position: relative !important;
}
html body #globalTopbar .global-topbar-left {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex: 0 0 auto !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
}
html body #globalTopbar .global-topbar-center {
    position: static !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: none !important;
    padding-left: 32px !important;
    pointer-events: auto !important;
}
html body #globalTopbar .global-topbar-right {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    flex: 0 0 auto !important;
    min-width: 0 !important;
    margin-left: auto !important;
}

/* 导航菜单不换行 */
html body #globalTopbar .jm-top-nav,
html body #globalTopbar .top-nav,
html body #globalTopbar .global-topbar-center nav {
    display: flex !important;
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
    align-items: center !important;
    overflow: visible !important;
}
html body #globalTopbar .jm-top-nav .jm-nav-list {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 2px !important;
}
html body #globalTopbar .jm-top-nav .jm-nav-list > a,
html body #globalTopbar .jm-top-nav .jm-nav-list > .nav-dropdown > a {
    padding-left: 10px !important;
    padding-right: 10px !important;
    font-size: 13px !important;
}

/* --- 2. .header 结构（由 video-hover-play.js 动态判断并注入布局）--- */
html body .header .header-left {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    min-width: 0 !important;
}
html body .header .header-right {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 12px !important;
    min-width: 0 !important;
}

/* 响应式：小屏幕下收起中间菜单 */
@media (max-width: 1100px) {
    html body #globalTopbar .global-topbar-center {
        display: none !important;
    }
}
@media (max-width: 768px) {
    html body #globalTopbar .global-topbar-right {
        gap: 6px !important;
    }
}

/* ====== 管理后台（index.html 等 tenant.css 页面）文字颜色调亮 ====== */

/* 统计卡片：数字 + 标签 */
html body .stat-card .value,
html body .stat-card .num,
html body .stat-info .num {
    color: #ffffff !important;
}
html body .stat-card .label,
html body .stat-card .stat-label,
html body .stat-info .label {
    color: #c9c2e0 !important;
}

/* 卡片标题 / 区块标题 */
html body .card-title,
html body .section-title,
html body .panel-title {
    color: #f0edff !important;
}

/* 快速入口标签 */
html body .quick-item .q-label,
html body .quick-item .label {
    color: #d8d3ec !important;
}

/* 站点信息：标签 + 值 */
html body .site-info-label,
html body .info-item .label,
html body .info-row .label {
    color: #b8b0d4 !important;
}
html body .site-info-value,
html body .info-item .value,
html body .info-row .value {
    color: #ece8fa !important;
}

/* 侧边栏菜单 */
html body .menu-item {
    color: #c5bfe0 !important;
}
html body .menu-item:hover {
    color: #9b59b6 !important;
}
html body .menu-item.active {
    color: #9b59b6 !important;
}
html body .menu-group-title {
    color: #c5bfe0 !important;
}
html body .menu-group-title:hover {
    color: #9b59b6 !important;
}
html body .menu-group.open .menu-group-title {
    color: #833471 !important;
}

/* 头部：Logo 文字 + 折叠按钮 + 用户区 */
html body .header-logo,
html body .header #tenantName {
    color: #f0edff !important;
}
html body .toggle-btn i {
    color: #c5bfe0 !important;
}
html body .toggle-btn:hover i {
    color: #291749 !important;
}
html body .user-dropdown .name {
    color: #a89fc8 !important;
}
html body .user-dropdown .arrow {
    color: #a89fc8 !important;
}

/* 用户下拉菜单 */
html body .dropdown-menu .dropdown-item {
    color: #d0cae4 !important;
}
html body .dropdown-menu .dropdown-item:hover {
    color: #ffffff !important;
}

/* 表单 */
html body .form-row label,
html body .style-item label {
    color: #d0cae4 !important;
}
html body .form-hint {
    color: #a89fc8 !important;
}
html body .switch-text {
    color: #d0cae4 !important;
}

/* 表格 */
html body th {
    color: #d0cae4 !important;
}
html body td {
    color: #e0dcf2 !important;
}

/* Tab 标签页 */
html body .tab-item {
    color: #b8b0d4 !important;
}
html body .tab-item:hover {
    color: #ffffff !important;
}
html body .tab-item.active {
    color: #a78bfa !important;
}

/* URL 卡片 */
html body .url-card-title {
    color: #d0cae4 !important;
}
html body .url-text {
    color: #b8b0d4 !important;
}

/* 分页 */
html body .pagination span {
    color: #a89fc8 !important;
}
html body .page-btn {
    color: #c5bfe0 !important;
}
html body .page-btn:hover {
    color: #ffffff !important;
}

/* 配置提示 / 步骤 */
html body .cfg-tip {
    color: #c0b9da !important;
}
html body .cfg-step {
    color: #d0cae4 !important;
}
html body .cfg-btn-ghost {
    color: #d0cae4 !important;
}

/* 系统公告 */
html body .sys-notice-title {
    color: #ece8fa !important;
}
html body .sys-notice-time {
    color: #a89fc8 !important;
}
html body .sys-notice-content {
    color: #c0b9da !important;
}

/* 分类 Tab */
html body .voice-cat-tab {
    color: #c0b9da !important;
}

/* 工具箱移动按钮 */
html body .toolbox-move-btn {
    color: #b8b0d4 !important;
}

/* 通用辅助文字 */
html body .text-muted,
html body .muted,
html body .hint,
html body .tip,
html body .meta,
html body .desc,
html body .description {
    color: #b8b0d4 !important;
}

/* 占位文字 */
html body input::placeholder,
html body textarea::placeholder {
    color: #8a82a8 !important;
}

/* ====== 高特异性覆盖：tenant.css 后加载导致的白底问题 ====== */
/* 说明：tenant.css 在 purple-dark-theme.css 之后加载，同特异性 !important 会胜出，
   这里加 html body 前缀提升特异性，强制所有输入控件暗色化 */
html body input[type="text"],
html body input[type="number"],
html body input[type="password"],
html body input[type="email"],
html body input[type="tel"],
html body input[type="url"],
html body input[type="search"],
html body input[type="date"],
html body input[type="time"],
html body input:not([type]),
html body select,
html body textarea {
    background-color: rgba(20, 14, 40, 0.75) !important;
    border: 1px solid rgba(168, 85, 247, 0.25) !important;
    color: #f0edff !important;
}
html body input:focus,
html body select:focus,
html body textarea:focus {
    background-color: rgba(28, 20, 52, 0.9) !important;
    border-color: rgba(168, 85, 247, 0.55) !important;
    box-shadow: 0 0 0 3px rgba(168, 85, 247, 0.12) !important;
    color: #ffffff !important;
}
html body input:disabled,
html body textarea:disabled {
    background-color: rgba(30, 24, 52, 0.5) !important;
    color: #8a82a8 !important;
}

/* 状态徽章：正常 / 停用 */
html body .status.active,
html body .status.success,
html body .status.enabled {
    background: rgba(34, 197, 94, 0.16) !important;
    color: #4ade80 !important;
    border: 1px solid rgba(34, 197, 94, 0.3) !important;
}
html body .status.inactive,
html body .status.disabled,
html body .status.banned,
html body .status.error {
    background: rgba(148, 163, 184, 0.14) !important;
    color: #cbd5e1 !important;
    border: 1px solid rgba(148, 163, 184, 0.28) !important;
}
html body .status.pending,
html body .status.warning {
    background: rgba(251, 191, 36, 0.15) !important;
    color: #fcd34d !important;
    border: 1px solid rgba(251, 191, 36, 0.3) !important;
}

/* 搜索区容器（避免白底卡片感） */
html body .search-box,
html body .search-bar,
html body .filter-bar,
html body .toolbar {
    background: transparent !important;
}

/* ============================================================
   CreationWorkbench 公共组件（cw-*）暗色化补齐
   creation-workbench.css 在本文件之后加载，这里统一用
   html body 前缀 + !important 覆盖其浅色变量与硬编码白底
   ============================================================ */

/* —— 覆盖 cw-* 主题变量 —— */
html body {
  --cw-primary: #a855f7 !important;
  --cw-primary-dark: #c084fc !important;
  --cw-primary-light: rgba(168, 85, 247, 0.16) !important;
  --cw-page: #0b0716 !important;
  --cw-card: rgba(30, 20, 55, 0.8) !important;
  --cw-text: #f5f3ff !important;
  --cw-muted: #b8b0d0 !important;
  --cw-subtle: #9a92b8 !important;
  --cw-line: rgba(168, 85, 247, 0.22) !important;
  --cw-line-soft: rgba(168, 85, 247, 0.14) !important;
  --cw-soft: rgba(168, 85, 247, 0.1) !important;
  --cw-hover-border: rgba(168, 85, 247, 0.5) !important;
  --cw-hover-bg: rgba(168, 85, 247, 0.12) !important;
  --cw-success: #4ade80 !important;
  --cw-success-bg: rgba(34, 197, 94, 0.16) !important;
  --cw-warning: #fbbf24 !important;
  --cw-warning-bg: rgba(245, 158, 11, 0.16) !important;
  --cw-danger: #f87171 !important;
  --cw-danger-bg: rgba(239, 68, 68, 0.14) !important;
}

/* —— 页面骨架 / 头部 / 布局 —— */
html body .cw-page { background: var(--cw-page) !important; color: var(--cw-text) !important; }
html body .cw-page-head { background: rgba(20, 14, 42, 0.9) !important; border-bottom-color: var(--cw-line) !important; }
html body .cw-page-title { color: var(--cw-text) !important; }
html body .cw-page-subtitle { color: var(--cw-muted) !important; }
html body .cw-page-title-icon { background: linear-gradient(135deg, #a855f7, #7c3aed) !important; }
html body .cw-page-help { background: rgba(168, 85, 247, 0.1) !important; color: var(--cw-muted) !important; }
html body .cw-page-help i { color: var(--cw-muted) !important; }
html body .cw-form,
html body .cw-results { background: var(--cw-page) !important; }
html body .cw-form { border-right-color: var(--cw-line) !important; }

/* —— 卡片容器 —— */
html body .cw-card { background: var(--cw-card) !important; border-color: var(--cw-line) !important; }
html body .cw-card-title { color: var(--cw-text) !important; }
html body .cw-card-desc { color: var(--cw-subtle) !important; }
html body .cw-step { background: var(--cw-primary) !important; }
html body .cw-step.optional { background: rgba(168, 85, 247, 0.3) !important; color: var(--cw-muted) !important; }
html body .cw-guide-badge { background: var(--cw-primary-light) !important; color: #c084fc !important; }

/* —— 参数 / 选项 —— */
html body .cw-param-label { color: var(--cw-muted) !important; }
html body .cw-option { background: rgba(30, 20, 55, 0.6) !important; border-color: var(--cw-line) !important; color: var(--cw-muted) !important; }
html body .cw-option:hover { background: rgba(168, 85, 247, 0.14) !important; border-color: var(--cw-hover-border) !important; color: #c084fc !important; }
html body .cw-option.active { background: rgba(168, 85, 247, 0.2) !important; border-color: #a855f7 !important; color: #c084fc !important; }
html body .cw-summary { color: var(--cw-subtle) !important; }
html body .cw-summary span { background: rgba(168, 85, 247, 0.14) !important; color: var(--cw-muted) !important; }

/* —— 结果区头部（粘性条） —— */
html body .cw-results-head { background: rgba(11, 7, 22, 0.92) !important; border-bottom-color: var(--cw-line) !important; }
html body .cw-results-title { color: var(--cw-text) !important; }
html body .cw-results-title i { color: var(--cw-muted) !important; }
html body .cw-results-meta { color: var(--cw-subtle) !important; }
html body .cw-filters { background: rgba(168, 85, 247, 0.12) !important; }
html body .cw-filter { color: var(--cw-muted) !important; }
html body .cw-filter.active { background: rgba(30, 20, 55, 0.95) !important; color: #c084fc !important; box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important; }
html body .cw-refresh { background: rgba(30, 20, 55, 0.8) !important; border-color: var(--cw-line) !important; color: var(--cw-muted) !important; }
html body .cw-refresh:hover { border-color: #a855f7 !important; color: #c084fc !important; }

/* —— 结果卡片 / 封面 —— */
html body .cw-result-card { background: var(--cw-card) !important; border-color: var(--cw-line) !important; }
html body .cw-cover { background: rgba(25, 18, 46, 0.9) !important; }
html body .cw-cover.pending { background: linear-gradient(135deg, rgba(124, 58, 237, 0.25), rgba(30, 20, 55, 0.9)) !important; }
html body .cw-status.pending { background: rgba(168, 85, 247, 0.18) !important; color: #c084fc !important; }
html body .cw-blocked-cover { background: rgba(30, 15, 25, 0.95) !important; color: var(--cw-muted) !important; }
html body .cw-blocked-cover span { color: #b0a8c8 !important; }
html body .cw-card-info { border-top-color: var(--cw-line-soft) !important; }
html body .cw-card-tag { background: rgba(168, 85, 247, 0.14) !important; color: var(--cw-muted) !important; }

/* —— 骨架屏（加载占位白块） —— */
html body .cw-skeleton { background: rgba(168, 85, 247, 0.14) !important; }
html body .cw-skeleton::after { background: linear-gradient(90deg, transparent, rgba(192, 132, 252, 0.25), transparent) !important; }

/* —— 进度条 —— */
html body .cw-progress { background: rgba(0, 0, 0, 0.3) !important; }
html body .cw-progress-text { color: #c084fc !important; }

/* —— 分页器 —— */
html body .cw-pager { border-top-color: var(--cw-line-soft) !important; }
html body .cw-page-btn { background: rgba(30, 20, 55, 0.8) !important; border-color: var(--cw-line) !important; color: var(--cw-muted) !important; }
html body .cw-page-btn:hover { border-color: #a855f7 !important; color: #c084fc !important; }
html body .cw-page-btn.active { background: linear-gradient(135deg, #a855f7, #7c3aed) !important; border-color: transparent !important; color: #fff !important; }
html body .cw-page-btn:disabled { background: rgba(20, 14, 40, 0.6) !important; color: #6f6890 !important; }
html body .cw-page-ellipsis { color: var(--cw-subtle) !important; }

/* —— 空态 / 错误态 —— */
html body .cw-empty { color: var(--cw-subtle) !important; }
html body .cw-empty i { color: rgba(168, 85, 247, 0.5) !important; }
html body .cw-empty h4 { color: var(--cw-text) !important; }

/* 浅色弹窗表单豁免 2026-09-27（u4b 提权：选择器升至 (0,2,3)!important，
   压过本文件 4143 行 html body input[type=...] 的 (0,1,3)!important 暗色规则）
   2026-10-05：.global-topbar-points-modal 积分弹窗改紫晶暗色（见文件末尾 17 块），已移出豁免 */
/* 这些弹层均为设计好的浅色表面，不套暗色全局 input/select/textarea 规则。
   .layui-layer 含自定义深色层（视频详情等），保持原低优先级规则，不在提权列表。
   2026-10-05：.recharge-modal-overlay 充值弹窗改暗色（见文件末尾 18 块），已移出豁免 */
html body .recharge-agreement-overlay input[type="text"],
html body .recharge-agreement-overlay input[type="number"],
html body .recharge-agreement-overlay input[type="password"],
html body .recharge-agreement-overlay input[type="email"],
html body .recharge-agreement-overlay input[type="tel"],
html body .recharge-agreement-overlay input[type="url"],
html body .recharge-agreement-overlay input[type="search"],
html body .recharge-agreement-overlay input[type="date"],
html body .recharge-agreement-overlay input[type="time"],
html body .recharge-agreement-overlay input:not([type]),
html body .recharge-agreement-overlay select,
html body .recharge-agreement-overlay textarea,
html body .ai-auth-overlay input[type="text"],
html body .ai-auth-overlay input[type="number"],
html body .ai-auth-overlay input[type="password"],
html body .ai-auth-overlay input[type="email"],
html body .ai-auth-overlay input[type="tel"],
html body .ai-auth-overlay input[type="url"],
html body .ai-auth-overlay input[type="search"],
html body .ai-auth-overlay input[type="date"],
html body .ai-auth-overlay input[type="time"],
html body .ai-auth-overlay input:not([type]),
html body .ai-auth-overlay select,
html body .ai-auth-overlay textarea {
  background: #fff !important;
  color: #18181b !important;
  border: 1px solid #e4e4e7 !important;
}
html body .recharge-agreement-overlay input:focus,
html body .recharge-agreement-overlay select:focus,
html body .recharge-agreement-overlay textarea:focus,
html body .ai-auth-overlay input:focus,
html body .ai-auth-overlay select:focus,
html body .ai-auth-overlay textarea:focus {
  background: #fff !important;
  border-color: #a855f7 !important;
  box-shadow: 0 0 0 3px rgba(168,85,247,.15) !important;
  color: #18181b !important;
}
/* u4c：协议复选框/单选恢复原生外观——323 行通用 input 规则 (0,0,1)!important 会把它们染暗；
   提权到 (0,2,2)!important，恢复原生外观，选中态由元素内联 accent-color:#a855f7 保证品牌紫。 */
html body .auth-modal-overlay input[type="checkbox"],
html body .auth-modal-overlay input[type="radio"],
html body .ai-auth-overlay input[type="checkbox"],
html body .ai-auth-overlay input[type="radio"] {
  -webkit-appearance: auto !important;
  appearance: auto !important;
  background-color: #ffffff !important;
  background-image: none !important;
  border-color: #d1d5db !important;
}
/* u4c：页面根 color-scheme:dark（本文件 45 行）会让原生 checkbox/单选/滚动条按深色方案渲染，
   浅色弹窗作用域强制 light，确保原生控件外观与浅底协调。 */
html body .recharge-agreement-overlay,
html body .ai-auth-overlay,
html body .bind-phone-modal.layui-layer {
  color-scheme: light !important;
}

html body .recharge-agreement-overlay input::placeholder,
html body .recharge-agreement-overlay textarea::placeholder,
html body .ai-auth-overlay input::placeholder,
html body .ai-auth-overlay textarea::placeholder { color: #9ca3af !important; }
html body .recharge-agreement-overlay input:disabled,
html body .recharge-agreement-overlay textarea:disabled,
html body .ai-auth-overlay input:disabled,
html body .ai-auth-overlay textarea:disabled {
  background: #f4f4f5 !important;
  color: #9ca3af !important;
  border-color: #e4e4e7 !important;
}

/* 登录/认证弹窗“获取验证码”钮：auth-modal 已改深色（见文件末尾 20261005 块），仅保留 ai-auth 兜底 */
html body .ai-auth-overlay .ai-auth-code-btn {
  background: #f5edff !important;
  border: 1px solid #e9d5ff !important;
  color: #9333ea !important;
}
html body .ai-auth-overlay .ai-auth-code-btn:hover {
  background: #f3e8ff !important;
  border-color: #d8b4fe !important;
  color: #7e22ce !important;
}
html body .ai-auth-overlay .ai-auth-code-btn:disabled {
  background: #f4f5f9 !important;
  border-color: #e7eaf1 !important;
  color: #9ca3af !important;
}

/* .layui-layer 维持原规则（含深色自定义层，不做提权） */
.layui-layer input, .layui-layer select, .layui-layer textarea {
  background: #fff !important;
  color: #18181b !important;
  border-color: #e4e4e7 !important;
}

/* 浅色弹窗标题豁免 2026-09-27 */
/* 上方全局 h1-h6{color:#fff!important} 会把浅色弹层里的标题染白（浅底白字不可见）。
   下列作用域均为设计好的浅色表面，标题恢复深色；.layui-layer 含自定义深色层（如视频详情），不在此列。 */
/* 2026-10-05：.global-topbar-points-modal 已改暗色，移出标题豁免 */
/* 2026-10-05：.global-topbar-points-modal / .recharge-modal-overlay 已改暗色，移出标题豁免 */
.recharge-agreement-overlay h1, .recharge-agreement-overlay h2, .recharge-agreement-overlay h3, .recharge-agreement-overlay h4, .recharge-agreement-overlay h5, .recharge-agreement-overlay h6,
.points-modal-overlay h1, .points-modal-overlay h2, .points-modal-overlay h3, .points-modal-overlay h4, .points-modal-overlay h5, .points-modal-overlay h6,
/* 2026-10-11：.ai-auth-overlay 从本豁免清单移出——它的弹窗主体早已改暗（见文件内
   「AI 授权/登录弹窗」块），继续豁免会让标题「欢迎来到 ××」变成深字压深底几乎看不见 */
.gt-wm-overlay h1, .gt-wm-overlay h2, .gt-wm-overlay h3, .gt-wm-overlay h4, .gt-wm-overlay h5, .gt-wm-overlay h6,
.gt-article-overlay h1, .gt-article-overlay h2, .gt-article-overlay h3, .gt-article-overlay h4, .gt-article-overlay h5, .gt-article-overlay h6,
.bind-phone-modal h1, .bind-phone-modal h2, .bind-phone-modal h3, .bind-phone-modal h4, .bind-phone-modal h5, .bind-phone-modal h6 {
  color: #18181b !important;
}

/* =====================================================================
   2026-09-27 暗色一致性修复（u3 批次）
   全站栏目登录态实测后追加：修复浅底白字/深底深字、浅色碎片、
   按钮/文本框对比度问题。仅样式补丁，不动功能。
   回滚：删除本注释起到文件末尾的整块，或用 20260927-darkfix 备份恢复。
   ===================================================================== */

/* —— 文章/协议页标题（privacy-policy / use-doc / user-agreement / page / page-designer 文章注入标题） —— */
html body #articleTitle.article-title,
html body .article-title { color: #f5f3ff !important; }

/* —— works.html 作品页：白色头部/筛选胶囊/失败占位 —— */
html body .works-header {
  background: rgba(22,16,42,.82) !important;
  border-bottom: 1px solid rgba(168,85,247,.18) !important;
  color: #f5f3ff !important;
}
html body .works-count { color: #b8b0d0 !important; }
html body .center-scroll::-webkit-scrollbar-thumb { background: rgba(168,85,247,.3) !important; }
html body .filter-chip {
  background: rgba(255,255,255,.06) !important;
  color: #b8b0d0 !important;
  border: 1px solid rgba(168,85,247,.22) !important;
}
html body .filter-chip.active {
  background: rgba(168,85,247,.22) !important;
  color: #fff !important;
  border-color: rgba(168,85,247,.55) !important;
}
html body .work-failed { background: rgba(30,22,55,.6) !important; color: #b8b0d0 !important; }
html body .work-failed i { color: #8b7fb0 !important; }
html body .work-failed-detail {
  background: rgba(255,255,255,.08) !important;
  color: #d6cfee !important;
  border: 1px solid rgba(168,85,247,.25) !important;
}
html body .work-cover.no-media { background: #1e1637 !important; }

/* —— mine.html 移动端底部导航（实测被某层脚本/样式染成 #333） —— */
html body .mobile-bottom-nav {
  background: #16102a !important;
  border-top: 1px solid rgba(168,85,247,.18) !important;
}
html body .bottom-nav-item,
html body .bottom-nav-item span,
html body .bottom-nav-item a { color: #b8b0d0 !important; }
html body .bottom-nav-item.active,
html body .bottom-nav-item.active span { color: #c084fc !important; }

/* —— kelingmix_center.html 可灵混搭：tab 与上传卡浅色碎片 —— */
html body .mix-tab {
  background: rgba(255,255,255,.05) !important;
  color: #b8b0d0 !important;
  border: 1px solid rgba(168,85,247,.22) !important;
}
html body .mix-tab.active {
  background: rgba(168,85,247,.18) !important;
  color: #c084fc !important;
  border-color: rgba(168,85,247,.5) !important;
}
html body .mix-card .mix-upload,
html body .mix-upload {
  background: rgba(255,255,255,.05) !important;
  color: #b8b0d0 !important;
  border: 1px solid rgba(168,85,247,.2) !important;
}
html body .mix-card .mix-upload.active,
html body .mix-upload.active {
  background: rgba(168,85,247,.14) !important;
  color: #c084fc !important;
}

/* —— comic_center.html 漫剧中心：创意模板/字幕颜色/比例/字体/音色选择器 —— */
html body .creative-btn {
  background: rgba(168,85,247,.14) !important;
  color: #c084fc !important;
  border: 1px solid rgba(168,85,247,.3) !important;
}
html body .color-item:hover { background: rgba(255,255,255,.05) !important; }
html body .color-item.active { background: rgba(168,85,247,.14) !important; }
html body .color-name { color: #b8b0d0 !important; }
html body .color-item.active .color-name { color: #c084fc !important; }
html body .preview-ratio-tabs { background: rgba(255,255,255,.05) !important; }
html body .pv-ratio { color: #b8b0d0 !important; }
html body .pv-ratio:hover { color: #d6cfee !important; }
html body .font-card {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(168,85,247,.18) !important;
}
html body .font-name { color: #b8b0d0 !important; }
html body .font-card.active .font-name { color: #c084fc !important; }
html body .slider-mark { color: #b8b0d0 !important; }
html body .voice-picker {
  background: rgba(30,20,55,.6) !important;
  border: 1px solid rgba(168,85,247,.22) !important;
}
/* 注意：.voice-select-dialog 浅色弹窗为刻意浅色，不在此处染暗（见文件尾部浅色弹窗豁免） */

/* —— product_note_center.html 商品笔记：20 个风格标签 —— */
html body .style-tag {
  background: rgba(255,255,255,.05) !important;
  color: #b8b0d0 !important;
  border: 1px solid rgba(168,85,247,.18) !important;
}
html body .style-tag.style-active,
html body .style-tag.active {
  background: rgba(168,85,247,.18) !important;
  color: #c084fc !important;
  border-color: rgba(168,85,247,.5) !important;
}

/* —— wanxiang_center.html 万相：30 秒红色角标（原浅红底白字） —— */
html body .mode-badge {
  color: #fb7185 !important;
  background: rgba(244,63,94,.14) !important;
}

/* —— drama_center.html 短剧中心：步骤条 + 底部费用栏 —— */
html body .step-item {
  background: rgba(30,20,55,.55) !important;
  border: 1px solid rgba(168,85,247,.18) !important;
}
html body .step-item .step-name { color: #b8b0d0 !important; }
html body .step-item.active .step-name { color: #c084fc !important; }
html body .step-item.done .step-name { color: #f5f3ff !important; }
html body .cost-estimate-num { color: #c084fc !important; }
html body .bb-btn-ghost {
  background: rgba(255,255,255,.08) !important;
  color: #d6cfee !important;
}
html body .bb-btn-outline {
  background: rgba(168,85,247,.14) !important;
  color: #c084fc !important;
}

/* —— hotcopy.html 爆款复刻：复刻记录卡片（dark 分支） —— */
html body .history-item {
  background: linear-gradient(135deg, rgba(255,255,255,.05), rgba(255,255,255,.02)) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
}
html body .history-item-prompt { color: rgba(245,243,255,.78) !important; }
html body .history-action-btn {
  color: rgba(245,243,255,.85) !important;
  background: linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.04)) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
}

/* —— hotcopy_center.html 复刻中心：链接提示/粘贴按钮 —— */
html body .hc-link-tip { color: #b8b0d0 !important; }
html body .hc-paste-btn {
  background: rgba(168,85,247,.14) !important;
  color: #c084fc !important;
}

/* —— auth.html 管理员登录页：右侧是刻意的白色半屏，恢复白底下的深色文字/输入框 —— */
html body #formSide { color: #1f2329 !important; }
html body #formSide h2 { color: #1a1a1a !important; }
html body #formSide input {
  background: #fff !important;
  color: #333 !important;
  border: 1px solid #e0e0e0 !important;
}
html body #formSide input:focus {
  border-color: #a855f7 !important;
  box-shadow: 0 0 0 3px rgba(168,85,247,.15) !important;
}
html body #formSide input::placeholder { color: #bbb !important; }
html body #formSide .back-link { color: #999 !important; }

/* —— ai-chat.html AI 对话：首页 homeView 原是浅色落地页，作用域内暗色适配（不影响创作态/对话态） —— */
html body .home-view {
  background-color: #0b0716 !important;
  background-image:
    radial-gradient(1200px 500px at 80% -10%, rgba(168,85,247,.14), transparent 60%),
    radial-gradient(900px 420px at 10% -20%, rgba(59,130,246,.10), transparent 55%) !important;
}
html body .home-view .hero-copy h1 {
  color: transparent !important;
  background: linear-gradient(135deg, #ffffff, #c084fc) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}
html body .home-view .hero-copy p { color: #b8b0d0 !important; }
html body .home-view .creation-hero .composer,
html body .home-view .composer {
  background: rgba(30,20,55,.85) !important;
  border-color: rgba(168,85,247,.28) !important;
  box-shadow: 0 24px 70px rgba(0,0,0,.45) !important;
}
html body .home-view .composer:focus-within {
  border-color: rgba(168,85,247,.55) !important;
  box-shadow: 0 0 0 3px rgba(168,85,247,.12), 0 24px 70px rgba(0,0,0,.5) !important;
}
html body .home-view .composer-model span { color: #9f97b8 !important; }
html body .home-view .model-switch { background: rgba(255,255,255,.06) !important; }
html body .home-view .ms-item { color: #b8b0d0 !important; }
html body .home-view .plus {
  background: rgba(255,255,255,.06) !important;
  color: #b8b0d0 !important;
  border-color: rgba(168,85,247,.2) !important;
}
html body .home-view textarea::placeholder { color: #8b7fb0 !important; }
html body .home-view .setting-row {
  background: rgba(255,255,255,.03) !important;
  border-top-color: rgba(168,85,247,.14) !important;
}
html body .home-view .business-tab {
  background: rgba(255,255,255,.05) !important;
  color: #b8b0d0 !important;
}
html body .home-view .business-tab.active {
  background: rgba(168,85,247,.18) !important;
  color: #c084fc !important;
  box-shadow: inset 0 0 0 1px rgba(168,85,247,.4) !important;
}
html body .home-view .inspiration-chip {
  background: rgba(255,255,255,.05) !important;
  border: 1px solid rgba(168,85,247,.15) !important;
  color: #b8b0d0 !important;
}
html body .home-view .section-heading h2,
html body .home-view .discover-head h2 { color: #f5f3ff !important; }
html body .home-view .gallery-tabs {
  background: rgba(30,20,55,.7) !important;
  border: 1px solid rgba(168,85,247,.18) !important;
}
html body .home-view .gallery-tag { color: #9f97b8 !important; }
html body .home-view .gallery-tag.active { color: #c084fc !important; }
html body .home-view .gallery-tag.active::after { background: #a855f7 !important; }
html body .home-view .gallery-more,
html body .home-view .gallery-sort {
  background: rgba(255,255,255,.06) !important;
  color: #b8b0d0 !important;
  border: 1px solid rgba(168,85,247,.18) !important;
}
html body .home-view .gallery-item {
  background: #1e1637 !important;
  border: 1px solid rgba(168,85,247,.14) !important;
}
html body .home-view .gallery-overlay {
  background: linear-gradient(180deg, rgba(30,22,55,0), rgba(20,14,38,.92)) !important;
  color: #f5f3ff !important;
  border-top: 0 !important;
}
html body .home-view .gallery-title { color: #f5f3ff !important; }
html body .home-view .gallery-meta { color: #b8b0d0 !important; opacity: 1 !important; }
html body .home-view .g-project { color: #b8b0d0 !important; }
html body .home-view .g-like { color: rgba(245,243,255,.85) !important; }
html body .home-view .g-cta {
  background: rgba(168,85,247,.2) !important;
  color: #c084fc !important;
  border: 1px solid rgba(168,85,247,.4) !important;
}
html body .home-view .gallery-item:hover .g-cta {
  background: linear-gradient(135deg, #a855f7, #7c3aed) !important;
  color: #fff !important;
  border-color: transparent !important;
}
html body .home-view .campaign-fallback { background: rgba(30,20,55,.6) !important; color: #b8b0d0 !important; }
html body .home-view .campaign-fallback strong { color: #f5f3ff !important; }
html body .home-view .campaign-fallback span { color: #b8b0d0 !important; }
html body .home-view .upload-tpl-btn {
  background: rgba(255,255,255,.05) !important;
  color: #b8b0d0 !important;
  border: 1px solid rgba(168,85,247,.18) !important;
}
html body .home-view .upload-tpl-btn:hover {
  background: rgba(168,85,247,.16) !important;
  color: #c084fc !important;
}
html body .home-view .gallery-loading,
html body .home-view .gallery-no-more,
html body .home-view .gallery-empty { color: #8b7fb0 !important; }
html body .home-view .gallery-placeholder {
  background: linear-gradient(135deg, #241a40, #1a1330) !important;
}
html body .home-view .gallery-placeholder-name { color: #b8b0d0 !important; }
html body .home-view .gallery-skeleton-card {
  background: rgba(30,20,55,.6) !important;
  border-color: rgba(168,85,247,.14) !important;
}
html body .home-view .gs-block,
html body .home-view .gs-line { background: rgba(255,255,255,.07) !important; }
html body .home-view .gs-cover { background: rgba(255,255,255,.05) !important; }
html body .home-view .example-chip {
  background: rgba(255,255,255,.05) !important;
  color: #b8b0d0 !important;
  border: 1px solid rgba(168,85,247,.16) !important;
}
html body .home-view .example-label { color: #8b7fb0 !important; }
html body .home-view .hot-word { background: rgba(255,255,255,.06) !important; color: #b8b0d0 !important; }
html body .home-view .hot-word.hot { background: rgba(255,102,51,.14) !important; color: #fb923c !important; }
html body .home-view .hot-label { color: #fb923c !important; }

/* =====================================================================
   2026-09-27 暗色一致性修复（u3 补丁2，同日复测后修正）
   1) comic_center 比例 tab 激活态恢复白字（补丁1 的非激活色把激活态压灰）
   2) hotcopy_center 左侧整组白色操作面板暗色化（卡片/模式胶囊/链接框/
      参数胶囊/解析结果），原浅灰提示字在白卡上 r≈2 阅读困难
   ===================================================================== */

/* —— comic_center：比例 tab 激活态白字 —— */
html body .pv-ratio.active { color: #fff !important; }

/* —— hotcopy_center：左侧白色操作面板整体适配暗色 —— */
html body .hc-left {
  background: #16102a !important;
  border-right: 1px solid rgba(168,85,247,.18) !important;
}
html body .hc-left::-webkit-scrollbar-thumb { background: rgba(168,85,247,.3) !important; }
html body .card {
  background: rgba(30,20,55,.6) !important;
  border: 1px solid rgba(168,85,247,.18) !important;
}
html body .card-head h3 { color: #f5f3ff !important; }
html body .card-head h3 i { color: #b8b0d0 !important; }
html body .card-head p { color: #9f97b8 !important; }
html body .hc-gen-card {
  background: rgba(22,16,42,.95) !important;
  border-color: rgba(168,85,247,.22) !important;
  box-shadow: 0 -8px 18px rgba(0,0,0,.35) !important;
}
html body .mode-capsule {
  background: rgba(255,255,255,.05) !important;
  border: 1px solid rgba(168,85,247,.2) !important;
}
html body .mode-item { color: #b8b0d0 !important; }
html body .mode-item:hover { color: #d6cfee !important; }
html body .mode-item.active {
  color: #c084fc !important;
  background: rgba(168,85,247,.18) !important;
  box-shadow: inset 0 0 0 1px rgba(168,85,247,.4) !important;
}
html body .hc-link-box {
  background: rgba(30,20,55,.6) !important;
  border: 1px solid rgba(168,85,247,.22) !important;
}
html body .hc-link-box:focus-within {
  border-color: rgba(168,85,247,.6) !important;
  box-shadow: 0 0 0 2px rgba(168,85,247,.15) !important;
}
html body .hc-textarea { color: #f5f3ff !important; }
html body .hc-textarea::placeholder { color: #8b7fb0 !important; }
html body .hc-link-tip { color: #9f97b8 !important; }
html body .hc-paste-btn {
  background: rgba(168,85,247,.16) !important;
  color: #c084fc !important;
}
html body .hc-paste-btn:hover { background: rgba(168,85,247,.28) !important; }
html body .param-label { color: #d6cfee !important; }
html body .pill {
  background: rgba(255,255,255,.05) !important;
  color: #b8b0d0 !important;
  border: 1px solid rgba(168,85,247,.2) !important;
}
html body .pill:hover { background: rgba(255,255,255,.09) !important; color: #d6cfee !important; border-color: rgba(168,85,247,.4) !important; }
html body .pill.active {
  background: rgba(168,85,247,.18) !important;
  color: #c084fc !important;
  border-color: rgba(168,85,247,.55) !important;
}
html body .hc-parsed {
  background: rgba(16,185,129,.1) !important;
  border: 1px solid rgba(16,185,129,.3) !important;
}
html body .hc-parsed-title { color: #f5f3ff !important; }
html body .hc-parsed-status { color: #34d399 !important; }

/* ============================================================
   v5pc1 登录态残余白块统一修复（2026-09-28）
   覆盖：分站登录页 / 使用文档·用户协议 / 爆款文案警告条 /
        高级编排全屏编辑器 / 页面装修编辑器外壳
   规则：底 #16102a/#241a40、字 #f5f3ff/#b8b0d0、边框紫色半透明；
        语义琥珀警告保留琥珀色；手机预览/节点彩色图标等内容区不动。
   ============================================================ */

/* 1. 分站管理员登录/入口页 auth.html、index.html */
.visual-side {
  background: linear-gradient(135deg, #a855f7 0%, #c084fc 45%, #ec4899 100%) !important;
}
.form-side {
  background: #16102a !important;
  color: #f5f3ff !important;
  box-shadow: none !important;
}
.form-header h2 { color: #f5f3ff !important; }
.tenant-info {
  background: #241a40 !important;
  border: 1px solid rgba(168, 85, 247, .22) !important;
}
.tenant-info .info-text .name,
.tenant-info .info-text .desc { color: #f5f3ff !important; }
.form-group label { color: #b8b0d0 !important; }
.form-group input {
  background: #0b0716 !important;
  border: 1px solid rgba(168, 85, 247, .30) !important;
  color: #f5f3ff !important;
}
.form-group input:focus { border-color: rgba(192, 132, 252, .65) !important; }
.form-group input::placeholder { color: #8f87a8 !important; }
.submit-btn { background: linear-gradient(135deg, #a855f7, #ec4899) !important; }
.toast {
  background: #241a40 !important;
  border: 1px solid rgba(168, 85, 247, .22) !important;
}
.toast span { color: #f5f3ff !important; }

/* 2. 使用文档 / 用户协议：接口注入到 .article-content 的富文本表格 */
.article-content .h2 {
  background: #241a40 !important;
  color: #f5f3ff !important;
  border-color: rgba(168, 85, 247, .22) !important;
}
.article-content .th {
  background: #2f2352 !important;
  color: #f5f3ff !important;
  border-color: rgba(168, 85, 247, .22) !important;
}
.article-content .td {
  color: #b8b0d0 !important;
  border-color: rgba(168, 85, 247, .14) !important;
}
.article-content .step-box {
  background: rgba(94, 234, 212, .10) !important;
  border-left-color: #5eead4 !important;
  color: #f5f3ff !important;
}
.footer { color: #8f87a8 !important; }

/* 3. 爆款文案工作台：琥珀色警告提示条（浅琥珀底 -> 暗琥珀） */
.hc-warn-tip {
  background: rgba(251, 191, 36, .10) !important;
  border: 1px solid rgba(251, 191, 36, .30) !important;
  color: #fcd34d !important;
}

/* 4. 高级编排 workflow-advanced.html：全屏节点编辑器 */
body:has(.workflow-editor) { background: #0b0716 !important; }
.workflow-editor { background: #0b0716 !important; color: #f5f3ff !important; }
.editor-toolbar {
  background: #16102a !important;
  border-bottom: 1px solid rgba(168, 85, 247, .22) !important;
}
.toolbar-left,
.toolbar-left .logo,
.node-library-header h3,
.properties-header h3,
.node-header .title { color: #f5f3ff !important; }
.btn-secondary {
  background: #2f2352 !important;
  color: #b8b0d0 !important;
  border: 1px solid rgba(168, 85, 247, .30) !important;
}
.node-library,
.properties-panel {
  background: #16102a !important;
  border-color: rgba(168, 85, 247, .22) !important;
}
.node-library-header,
.properties-header,
.node-header { border-color: rgba(168, 85, 247, .18) !important; }
.node-category,
.node-categories { color: #8f87a8 !important; }
.node-item {
  background: #241a40 !important;
  border: 1px solid rgba(168, 85, 247, .22) !important;
}
.node-item:hover {
  background: #2f2352 !important;
  border-color: rgba(168, 85, 247, .45) !important;
}
.node-item .info,
.node-item .info .name { color: #f5f3ff !important; }
.node-item .info .desc { color: #b8b0d0 !important; }
.canvas-area,
.canvas-container { background: #0b0716 !important; color: #b8b0d0 !important; }
.empty-canvas h3,
.empty-canvas p { color: #8f87a8 !important; }
.zoom-controls,
.execution-log {
  background: #241a40 !important;
  border: 1px solid rgba(168, 85, 247, .22) !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, .35) !important;
}
.zoom-btn { color: #b8b0d0 !important; }
.zoom-btn:hover { background: #2f2352 !important; }
.zoom-level { color: #b8b0d0 !important; }
.execution-log-header {
  color: #f5f3ff !important;
  border-color: rgba(168, 85, 247, .18) !important;
}
.execution-log-content,
.log-entry { color: #b8b0d0 !important; border-color: rgba(168, 85, 247, .12) !important; }
.workflow-node {
  background: #241a40 !important;
  border-color: rgba(168, 85, 247, .35) !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, .4) !important;
}
.node-config-item label,
.property-item label { color: #b8b0d0 !important; }
.properties-panel input,
.properties-panel select,
.properties-panel textarea,
.node-config-item input,
.node-config-item select,
.node-config-item textarea {
  background: #0b0716 !important;
  border: 1px solid rgba(168, 85, 247, .30) !important;
  color: #f5f3ff !important;
}
.port { border-color: #16102a !important; }
.status-indicator { border-color: #241a40 !important; }

/* 5. 页面装修 page-designer.html：仅染编辑器外壳，手机预览内容保持产品原样 */
body:has(.designer-header) { background: #0b0716 !important; }
.designer-header {
  background: #16102a !important;
  border-bottom: 1px solid rgba(168, 85, 247, .22) !important;
  color: #f5f3ff !important;
}
.header-actions { color: #f5f3ff !important; }
.header-actions .btn-reset {
  background: #241a40 !important;
  color: #b8b0d0 !important;
  border: 1px solid rgba(168, 85, 247, .30) !important;
}
.header-actions .btn-path {
  background: transparent !important;
  color: #c084fc !important;
  border: 1px solid rgba(168, 85, 247, .50) !important;
}
.comp-panel,
.props-panel {
  background: #16102a !important;
  border-color: rgba(168, 85, 247, .22) !important;
}
.comp-item {
  background: #241a40 !important;
  border: 1px solid rgba(168, 85, 247, .18) !important;
}
.comp-item:hover {
  background: #2f2352 !important;
  border-color: rgba(168, 85, 247, .45) !important;
}
.comp-preview { background: rgba(168, 85, 247, .12) !important; }
.comp-name { color: #f5f3ff !important; }
.comp-desc { color: #b8b0d0 !important; }
.comp-add,
.comp-add .ri-add-circle-line { color: #c084fc !important; }
.canvas-area { background: #0b0716 !important; }
.enable-toggle,
.enable-label { color: #b8b0d0 !important; }
.toggle-track { background: #2f2352 !important; }
.props-panel label,
.prop-group .label,
.prop-group label { color: #b8b0d0 !important; }
.props-panel input,
.props-panel select,
.props-panel textarea {
  background: #0b0716 !important;
  border: 1px solid rgba(168, 85, 247, .30) !important;
  color: #f5f3ff !important;
}
.image-upload-zone {
  /* [fix-hero-img-20260930] 只能用 background-color：background 简写 !important
     会把上传区内联 background-image:url(...) 强制重置为 none，导致已上传
     广告卡片/轮播图/媒体卡等图片不显示（弹窗用 CSS 背景图渲染）。 */
  background-color: rgba(168, 85, 247, .06) !important;
  border-color: rgba(168, 85, 247, .35) !important;
}
.add-item-btn {
  background: #241a40 !important;
  color: #c084fc !important;
  border: 1px dashed rgba(168, 85, 247, .40) !important;
}
.platform-tab.active {
  background: #2f2352 !important;
  color: #c084fc !important;
}
/* 装修编辑器弹窗（外壳，不含手机预览本体） */
.content-modal,
.path-modal,
.preview-modal {
  background: #16102a !important;
  color: #f5f3ff !important;
}
.path-item {
  background: #241a40 !important;
  border: 1px solid rgba(168, 85, 247, .22) !important;
  color: #b8b0d0 !important;
}
.preview-tabs .tab-item {
  background: #241a40 !important;
  color: #b8b0d0 !important;
}

/* ============================================================
 * 34.27-pc 内联蓝/浅蓝块残留清零（内容安全/审核/分销/投诉等页）
 * purple-dark 已覆盖类选择器；本节只补内联 style 漏网：
 *  - 顶部点数胶囊、内联蓝 .btn → 紫粉渐变
 *  - 内联蓝文字/链接/标签 → 亮紫
 *  - 浅蓝信息块（#eff6ff/#f0f9ff）→ 深紫雾面
 *  - 内联蓝左边框、蓝进度条 → 紫
 * 注：统计卡/快捷入口/站点信息里的多色分类图标（.icon.blue 等
 *     装饰彩色组）保持不动，属语义彩色。
 * ============================================================ */
.header [style*="#3b82f6"],
.header [style*="#3B82F6"] {
  background: linear-gradient(135deg, #a855f7 0%, #ec4899 100%) !important;
}
.btn[style*="#3b82f6"],
.btn[style*="#3B82F6"] {
  background: linear-gradient(135deg, #a855f7, #ec4899) !important;
  border-color: transparent !important;
  color: #fff !important;
}
[style*="color:#3b82f6"],
[style*="color: #3b82f6"],
[style*="color:#2563eb"],
[style*="color: #2563eb"] { color: #c084fc !important; }
[style*="background:#eff6ff"],
[style*="background: #eff6ff"],
[style*="background:#f0f9ff"],
[style*="background: #f0f9ff"] { background: rgba(168, 85, 247, .10) !important; }
[style*="border-left:3px solid #3b82f6"],
[style*="border-left: 3px solid #3b82f6"] { border-left-color: rgba(168, 85, 247, .45) !important; }
[style*="#3b82f6,#60a5fa"],
[style*="#3b82f6, #60a5fa"] { background: linear-gradient(90deg, #a855f7, #ec4899) !important; }

/* 34.27-pc 追加：右上角用户头像蓝渐变 → 紫 */
.user-dropdown .avatar {
  background: linear-gradient(135deg, #a855f7 0%, #7c3aed 100%) !important;
}

/* 34.27-pc 追加2：仪表盘"最新用户"内联蓝渐变兜底头像 → 紫 */
[style*="linear-gradient(135deg,#3b82f6,#2563eb)"],
[style*="linear-gradient(135deg, #3b82f6, #2563eb)"] {
  background: linear-gradient(135deg, #a855f7 0%, #7c3aed 100%) !important;
}

/* 34.27-pc 追加3：基础设置页白色占位/浅灰按钮 */
/* 无二维码时的白色虚框占位 → 深紫；内含二维码图片/画布时保持白底可扫 */
#appQrcodePreview:not(:has(img)):not(:has(canvas)) {
  background: rgba(168, 85, 247, .06) !important;
  border: 2px dashed rgba(168, 85, 247, .35) !important;
}
/* 行内"删除"未激活态 #f0f1f3 浅灰钮 → 深紫雾面（避免亮块）*/
.btn[style*="#f0f1f3"],
.btn[style*="#F0F1F3"] {
  background: rgba(168, 85, 247, .12) !important;
  color: #b8b0d0 !important;
}

/* ============================================================
 * 34.27-pc 追加4：JS 动态注入蓝二次清零
 * 来源：content-page.js / ban-manage.js / frontend-menu.js /
 *       home-dashboard.js / index.html 内联（#2E6CEC/#417FEF/
 *       #0ea5e9 及浅蓝底 #eff6ff/#eef3ff/#dbe7ff），含 jQuery
 *       .css() 写入的 rgb() 形式。
 * ============================================================ */
/* 内联/注入蓝按钮 → 紫粉渐变 */
.btn[style*="#2E6CEC"],
.btn[style*="#2e6cec"],
.btn[style*="rgb(46, 108, 236)"],
.btn[style*="rgb(46,108,236)"],
.btn[style*="#417FEF"],
.btn[style*="#417fef"],
.btn[style*="rgb(65, 127, 239)"],
[style*="background:#0ea5e9"],
[style*="background: #0ea5e9"],
[style*="background:#0EA5E9"] {
  background: linear-gradient(135deg, #a855f7, #ec4899) !important;
  border-color: transparent !important;
  color: #fff !important;
}
/* 注入蓝选中态（工单/申诉/封禁筛选 Tab、素材系统 Tab）*/
.banAppealTab.active,
.banTicketTab.active,
#comicMaterialTabSys {
  background: rgba(168, 85, 247, .20) !important;
  color: #c084fc !important;
}
/* 内联蓝文字/图标 → 亮紫 */
[style*="color:#417FEF"],
[style*="color: #417FEF"],
[style*="color:#417fef"],
[style*="color:#2E6CEC"],
[style*="color: #2E6CEC"],
[style*="color: rgb(46, 108, 236)"],
[style*="color:rgb(46,108,236)"],
[style*="color: rgb(65, 127, 239)"] { color: #c084fc !important; }
/* 浅蓝底块（各大小写/变体）→ 深紫雾面 */
[style*="background:#EFF6FF"],
[style*="background: #EFF6FF"],
[style*="#eff6ff;color"],
[style*="#EFF6FF;color"],
[style*="background:#eef3ff"],
[style*="background: #eef3ff"],
[style*="background:#EEF3FF"],
[style*="background:#dbe7ff"],
[style*="background: #dbe7ff"] { background: rgba(168, 85, 247, .10) !important; }
/* ban-manage.js 注入的工单快捷胶囊 */
.ticket-quick-item {
  background: rgba(168, 85, 247, .12) !important;
  color: #c084fc !important;
  border: 1px solid rgba(168, 85, 247, .30) !important;
}
.ticket-quick-item:hover {
  background: rgba(168, 85, 247, .22) !important;
  border-color: rgba(192, 132, 252, .55) !important;
}

/* 34.27-pc 追加5：PC首页模板·白色模板卡壳 → 深色（预览截图内容保持原样）*/
.template-option {
  background: #1a1330 !important;
  border-color: rgba(168, 85, 247, .25) !important;
}
.template-option:hover { border-color: rgba(192, 132, 252, .55) !important; }
/* JS 选中态：蓝边框/蓝底（rgb 形式）→ 紫 */
.template-option[style*="rgb(46, 108, 236)"],
.template-option[style*="rgb(46,108,236)"] {
  border-color: #a855f7 !important;
  box-shadow: 0 0 0 3px rgba(168, 85, 247, .25) !important;
}

/* 34.27-pc 追加6：删除二维码按钮的 rgb 形式浅灰底（jQuery 写入）→ 深紫雾面 */
.btn[style*="rgb(240, 241, 243)"],
.btn[style*="rgb(240,241,243)"] {
  background: rgba(168, 85, 247, .12) !important;
  color: #b8b0d0 !important;
}

/* ===== 34.28-text_to_image_center 修复：页面内联样式硬编码白底覆盖 ===== */

/* 弹窗对话框内的 info 区域（.d-info 有内联 background:#F8F8FC） */
.d-info,
.dialog .d-info {
  background: rgba(30, 20, 55, 0.7) !important;
  border: 1px solid rgba(168, 85, 247, 0.22) !important;
  color: var(--text-muted) !important;
}

/* 对话框内警告图标（.d-icon.warn 内联 background:#FDECEE） */
.d-icon.warn,
.dialog .d-icon.warn {
  background: rgba(220, 38, 38, 0.15) !important;
  color: #fca5a5 !important;
}

/* 玩法/快捷模板弹窗（.play-modal 内联 background:#FFFFFF） */
.play-modal,
.play-modal .play-modal-close {
  background: var(--bg-2) !important;
  border: 1px solid var(--glass-border) !important;
  color: var(--text) !important;
}
.play-modal-close {
  background: var(--bg-4) !important;
  border-color: var(--glass-border) !important;
  color: var(--text-muted) !important;
}
.play-modal-close:hover {
  border-color: rgba(239, 68, 68, .5) !important;
  color: #fca5a5 !important;
  background: rgba(220, 38, 38, .12) !important;
}

/* 玩法/快捷模板卡片（.play-card 内联 background:#FFFFFF，.play-card.active 内联 background:#F2F6FF） */
.play-card,
.play-card.active {
  background: var(--bg-3) !important;
  border: 1px solid var(--glass-border) !important;
  color: var(--text) !important;
}
.play-card:hover {
  border-color: rgba(168, 85, 247, .45) !important;
  background: var(--bg-4) !important;
}
.play-card.active {
  border-color: var(--purple) !important;
  background: rgba(168, 85, 247, 0.15) !important;
  box-shadow: 0 0 0 2px rgba(168, 85, 247, 0.15) !important;
}

/* 玩法卡片媒体区（.play-card-media 内联 background:#F5F6F8） */
.play-card-media {
  background: var(--bg-4) !important;
}

/* 玩法卡片类型徽章（.play-card-type-badge 内联 background:#FFF3E0） */
.play-card-type-badge,
.play-card-type-badge.multi {
  background: rgba(251, 191, 36, 0.12) !important;
  color: #fbbf24 !important;
}
.play-card-type-badge.single {
  background: rgba(168, 85, 247, 0.15) !important;
  color: #c084fc !important;
}

/* 当前玩法 emoji（.current-play-emoji 内联 background:#FFFFFF） */
.current-play-emoji {
  background: rgba(168, 85, 247, 0.15) !important;
  border-color: rgba(168, 85, 247, 0.25) !important;
}

/* 玩法分组标题前后分隔线（.play-group-label::before/::after 内联 background:#F0F1F2） */
.play-group-label::before,
.play-group-label::after {
  background: rgba(168, 85, 247, 0.22) !important;
}

/* 多提示词 AI 按钮和提示区 */
.multi-prompt-ai,
.multi-prompt-hint {
  background: rgba(168, 85, 247, 0.1) !important;
  border-color: rgba(168, 85, 247, 0.25) !important;
  color: var(--text) !important;
}

/* 指南提示（.guide-tip 内联 background:#FFF8EC） */
.guide-tip {
  background: rgba(251, 191, 36, 0.1) !important;
  border: 1px solid rgba(251, 191, 36, 0.25) !important;
  color: #fbbf24 !important;
}

/* ===== AI 授权/登录弹窗（硬编码浅灰白色全套覆盖） ===== */
.ai-auth-modal {
  background: var(--bg-2) !important;
  border: 1px solid var(--glass-border) !important;
  color: var(--text) !important;
  box-shadow: 0 20px 60px rgba(0, 0, 0, .5), 0 0 0 1px rgba(168, 85, 247, .15) inset !important;
}
.ai-auth-side {
  background: var(--bg-3) !important;
  border: 1px solid var(--glass-border) !important;
}
.ai-auth-tabs {
  background: var(--bg-3) !important;
  border: 1px solid var(--glass-border) !important;
}
.ai-auth-tab {
  background: transparent !important;
  color: var(--text-muted) !important;
  border: 1px solid transparent !important;
}
.ai-auth-tab:hover {
  color: #fff !important;
  background: rgba(168, 85, 247, 0.12) !important;
}
.ai-auth-tab.active {
  background: var(--primary-gradient) !important;
  color: #fff !important;
  border-color: transparent !important;
  box-shadow: 0 4px 12px rgba(168, 85, 247, .3) !important;
}
.ai-auth-qrcode {
  background: var(--bg-4) !important;
  border: 1px solid var(--glass-border) !important;
}
.ai-auth-input {
  background: var(--bg-4) !important;
  border: 1px solid var(--glass-border) !important;
  color: var(--text) !important;
}
.ai-auth-input:focus {
  border-color: var(--purple) !important;
  box-shadow: 0 0 0 3px rgba(168, 85, 247, 0.12) !important;
}
.ai-auth-captcha {
  background: var(--bg-3) !important;
  border: 1px solid var(--glass-border) !important;
}
.ai-auth-code-btn {
  background: rgba(168, 85, 247, 0.15) !important;
  border-color: rgba(168, 85, 247, 0.3) !important;
  color: var(--purple-glow) !important;
}
.ai-auth-code-btn:hover:not(:disabled) {
  background: rgba(168, 85, 247, 0.25) !important;
  color: #fff !important;
}
.ai-auth-code-btn:disabled {
  background: var(--bg-4) !important;
  border-color: var(--glass-border) !important;
  color: var(--text-muted) !important;
}
.ai-auth-bind-tip {
  background: rgba(168, 85, 247, 0.08) !important;
  border: 1px solid rgba(168, 85, 247, 0.22) !important;
  color: var(--text-muted) !important;
}
.ai-auth-bind-tip .ri-smartphone-line {
  background: rgba(168, 85, 247, 0.15) !important;
  color: var(--purple-glow) !important;
}
/* 上面这块漏掉的三处深字：ai-auth.js 里写死了 #1f2329 / #3a3f47 / #1f2937，
   暗底上几乎看不见（用户 2026-10-11 的截图里标题就是糊的） */
.ai-auth-title {
  color: var(--text) !important;
}
.ai-auth-label {
  color: var(--text-muted) !important;
}
.ai-auth-bind-tip strong {
  color: var(--text) !important;
}
.ai-auth-bind-tip span {
  color: var(--text-muted) !important;
}

/* ===== 全局 input 修复：硬编码 background:#FFFFFF ===== */
/* 通用 input 暗色化（覆盖页面内联 style） */
input[type="text"],
input[type="number"],
input[type="tel"],
input[type="email"],
input[type="password"],
input:not([type]),
.struct-input {
  background: var(--bg-4) !important;
  border-color: var(--glass-border) !important;
  color: var(--text) !important;
}
input[type="text"]::placeholder,
input[type="number"]::placeholder,
input[type="tel"]::placeholder,
input[type="email"]::placeholder,
input[type="password"]::placeholder,
input:not([type])::placeholder,
.struct-input::placeholder {
  color: var(--text-muted) !important;
}
input[type="text"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input:not([type]):focus,
.struct-input:focus {
  background: var(--bg-3) !important;
  border-color: var(--purple) !important;
  box-shadow: 0 0 0 3px rgba(168, 85, 247, 0.15) !important;
}

/* 通用 textarea 暗色化（覆盖内联 style） */
textarea {
  background: var(--bg-4) !important;
  border-color: var(--glass-border) !important;
  color: var(--text) !important;
}
textarea::placeholder {
  color: var(--text-muted) !important;
}
textarea:focus {
  background: var(--bg-3) !important;
  border-color: var(--purple) !important;
  box-shadow: 0 0 0 3px rgba(168, 85, 247, 0.15) !important;
}

/* ===== 快捷模板详情弹窗（硬编码白底覆盖） ===== */
.quick-play-detail,
.shortcut-detail {
  background: var(--bg-3) !important;
  border: 1px solid var(--glass-border) !important;
  color: var(--text) !important;
}

/* ===== 结果卡片内的 rc-cover pending 状态（硬编码浅蓝渐变） ===== */
.rc-cover.pending {
  background: var(--bg-4) !important;
}

/* ===== 错误弹窗（硬编码白底） ===== */
.error-dialog {
  background: var(--bg-3) !important;
  border: 1px solid var(--glass-border) !important;
  color: var(--text) !important;
}
.error-dialog-body {
  background: var(--bg-4) !important;
  color: var(--text-muted) !important;
}
.error-dialog-foot .v-btn,
.error-dialog-foot button {
  background: var(--bg-3) !important;
  border-color: var(--glass-border) !important;
  color: var(--text) !important;
}

/* ===== 图片详情弹窗：左侧容器白色（硬编码 background:#FFFFFF） ===== */
.image-detail-left .group-main,
.image-detail-left img,
.image-detail-media img {
  background: #0a0612 !important;
  border-radius: 8px;
}
.image-detail-left {
  background: var(--bg-4) !important;
}

/* ===== layui layer 内联样式修复 ===== */
.layui-layer-content {
  background: var(--bg-3) !important;
  color: var(--text) !important;
}

/* ===== 禁止白色背景的通用兜底 ===== */
[style*="background:#fff"],
[style*="background: #fff"],
[style*="background:#ffffff"],
[style*="background: #ffffff"],
[style*="background-color:#fff"],
[style*="background-color: #fff"],
[style*="background-color:#ffffff"],
[style*="background-color: #ffffff"] {
  background: var(--bg-3) !important;
}
[style*="background:#F7F8FA"],
[style*="background:#f7f8fa"],
[style*="background:#F5F6F8"],
[style*="background:#f5f6f8"],
[style*="background:#F2F6FF"],
[style*="background:#f2f6ff"],
[style*="background:#EEF4FF"],
[style*="background:#eef4ff"],
[style*="background:#F0F1F2"],
[style*="background:#f0f1f2"],
[style*="background:#F8F8FC"],
[style*="background:#f8f8fc"] {
  background: var(--bg-3) !important;
}

/* ===== 34.29 美化：AI优化按钮 / 模型标签 / 玩法弹窗文字 ===== */

/* —— 模型选择卡片：名称提亮、副标题次级化、标签紫粉渐变胶囊 —— */
.model-select-name {
  color: #ffffff !important;
  letter-spacing: .2px;
}
.model-select-card.active .model-select-name {
  color: #ffffff !important;
  text-shadow: 0 0 14px rgba(192, 132, 252, .45);
}
.model-select-cap {
  color: #b0a7d0 !important;
}
.model-select-tag {
  background: linear-gradient(135deg, rgba(168, 85, 247, .28) 0%, rgba(236, 72, 153, .22) 100%) !important;
  border: 1px solid rgba(192, 132, 252, .5) !important;
  color: #f0e4ff !important;
  font-weight: 600 !important;
  text-shadow: 0 0 8px rgba(192, 132, 252, .35);
  box-shadow: 0 2px 8px rgba(168, 85, 247, .18), inset 0 1px 0 rgba(255, 255, 255, .08) !important;
}
.model-select-card.active .model-select-tag {
  background: linear-gradient(135deg, rgba(168, 85, 247, .45) 0%, rgba(236, 72, 153, .38) 100%) !important;
  border-color: rgba(233, 213, 255, .65) !important;
  color: #ffffff !important;
}
/* 选中态右上角圆点改紫色发光 */
.model-select-card.active::after {
  border-color: #c084fc !important;
  background: #c084fc !important;
  box-shadow: 0 0 8px rgba(192, 132, 252, .8) !important;
}

/* —— AI优化 按钮：独立紫粉渐变 + 发光，悬浮微浮起 —— */
.multi-prompt-ai {
  display: inline-flex !important;
  align-items: center;
  gap: 3px;
  padding: 3px 11px !important;
  border-radius: 999px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: .5px;
  color: #ffffff !important;
  background: linear-gradient(135deg, #8b5cf6 0%, #d946ef 100%) !important;
  border: 1px solid rgba(255, 255, 255, .18) !important;
  box-shadow: 0 2px 10px rgba(168, 85, 247, .38), inset 0 1px 0 rgba(255, 255, 255, .2) !important;
  cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
  white-space: nowrap;
}
.multi-prompt-ai i {
  color: #ffffff !important;
  font-size: 12px;
  filter: drop-shadow(0 0 4px rgba(255, 255, 255, .55));
}
.multi-prompt-ai:hover {
  filter: brightness(1.08);
  transform: translateY(-1px);
  background: linear-gradient(135deg, #a855f7 0%, #ec4899 100%) !important;
  box-shadow: 0 5px 18px rgba(217, 70, 239, .5), inset 0 1px 0 rgba(255, 255, 255, .28) !important;
}
.multi-prompt-ai:active {
  transform: translateY(0);
  box-shadow: 0 2px 8px rgba(168, 85, 247, .4) !important;
}

/* —— 玩法选择弹窗：标题/分组/卡片文字层级提亮 —— */
.play-modal-head {
  border-bottom-color: rgba(168, 85, 247, .22) !important;
}
.play-modal-title {
  color: #ffffff !important;
  font-weight: 700 !important;
  letter-spacing: .5px;
  text-shadow: 0 0 18px rgba(168, 85, 247, .35);
}
.play-modal-sub {
  color: #a99fc9 !important;
}
.play-group-label {
  color: #d8d2f0 !important;
  font-weight: 600 !important;
  letter-spacing: .3px;
}
.play-group-label i {
  color: #c084fc !important;
  filter: drop-shadow(0 0 6px rgba(192, 132, 252, .5));
}

/* 玩法卡片名称/描述（覆盖页面内联近黑色 #1F2329 / 灰 #8F959E） */
.play-card-name {
  color: #efeaff !important;
  font-weight: 600 !important;
  letter-spacing: .3px;
  transition: color .15s ease;
}
.play-card:hover .play-card-name {
  color: #ffffff !important;
}
.play-card.active .play-card-name {
  color: #e9d5ff !important;
  text-shadow: 0 0 12px rgba(192, 132, 252, .6);
}
.play-card-desc {
  color: #a99fc9 !important;
  transition: color .15s ease;
}
.play-card:hover .play-card-desc {
  color: #c8c0e4 !important;
}
.play-card.active .play-card-desc {
  color: #c4b5e8 !important;
}
/* 玩法卡片悬浮时紫色柔光边 */
.play-card:hover {
  box-shadow: 0 6px 20px rgba(168, 85, 247, .18) !important;
}
.play-card.active {
  box-shadow: 0 0 0 2px rgba(168, 85, 247, .2), 0 6px 22px rgba(168, 85, 247, .22) !important;
}
/* 弹窗滚动条与弹窗内文字默认色 */
.play-modal-body::-webkit-scrollbar-thumb {
  background: rgba(168, 85, 247, .28) !important;
}
/* ===========================================================
   终极暗色化覆盖 v20261003wc —— 表单控件 & 交互元素全面暗化
   覆盖：原生 input/select/textarea + hover/focus/option + 内联 style
   优先级策略：全部 !important，放在文件最后（后加载）
=========================================================== */

/* 1) 所有原生表单控件（排除 checkbox/radio/file/hidden/button/submit/reset）*/
input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]),
select, textarea, optgroup {
  background: #1a1035 !important;
  background-color: #1a1035 !important;
  border: 1px solid rgba(168, 85, 247, 0.35) !important;
  border-color: rgba(168, 85, 247, 0.35) !important;
  color: #f0edff !important;
  color-scheme: dark !important;
}

/* 2) hover 状态 */
input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):hover,
select:hover, textarea:hover {
  background: #241746 !important;
  background-color: #241746 !important;
  border-color: rgba(168, 85, 247, 0.55) !important;
}

/* 3) focus 状态（紫色描边 + 柔光）*/
input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):focus,
select:focus, textarea:focus {
  background: #241746 !important;
  background-color: #241746 !important;
  border-color: #a855f7 !important;
  box-shadow: 0 0 0 3px rgba(168, 85, 247, 0.18) !important;
  outline: none !important;
  outline-offset: 0 !important;
}

/* 4) placeholder 暗化 */
input::placeholder, textarea::placeholder, select::placeholder {
  color: rgba(240, 237, 255, 0.42) !important;
  opacity: 1 !important;
}

/* 5) select 下拉箭头 —— 自定义紫色三角覆盖内联 SVG 灰色箭头 */
select {
  background-image: linear-gradient(45deg, transparent 50%, #a855f7 50%), linear-gradient(135deg, #a855f7 50%, transparent 50%) !important;
  background-position: calc(100% - 14px) 50%, calc(100% - 9px) 50% !important;
  background-size: 5px 5px, 5px 5px !important;
  background-repeat: no-repeat !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
  padding-right: 28px !important;
}

/* 6) option / optgroup —— 浏览器原生下拉列表项 */
option, optgroup {
  background: #1a1035 !important;
  background-color: #1a1035 !important;
  color: #f0edff !important;
}
option:checked, option[selected] {
  background: rgba(168, 85, 247, 0.25) !important;
  color: #fff !important;
}
option:hover {
  background: rgba(168, 85, 247, 0.15) !important;
}

/* 7) disabled 状态保持暗色（不要变灰）*/
input:disabled, select:disabled, textarea:disabled {
  background: #2a1f4a !important;
  background-color: #2a1f4a !important;
  color: rgba(240, 237, 255, 0.45) !important;
  cursor: not-allowed !important;
}

/* 8) 覆盖所有内联 style 硬编码的白背景 */
/*    用属性选择器精确匹配内联 style 中的白色值 */
body [style*="background:#fff"]:not(.wm-switch-dot):not(.switch-dot),
body [style*="background-color:#fff"]:not(.wm-switch-dot):not(.switch-dot),
body [style*="background: #fff"]:not(.wm-switch-dot):not(.switch-dot),
body [style*="background-color: #fff"]:not(.wm-switch-dot):not(.switch-dot),
body [style*="background:rgb(255"]:not(.wm-switch-dot):not(.switch-dot),
body [style*="background: rgb(255"]:not(.wm-switch-dot):not(.switch-dot),
body [style*="background-color:rgb(255"]:not(.wm-switch-dot):not(.switch-dot),
body [style*="background-color: rgb(255"]:not(.wm-switch-dot):not(.switch-dot) {
  background: #1a1035 !important;
  background-color: #1a1035 !important;
}

/* 9) 覆盖内联 style 里的深文字色 */
select[style*="color:#333"], input[style*="color:#333"], textarea[style*="color:#333"],
select[style*="color: #333"], input[style*="color: #333"], textarea[style*="color: #333"],
select[style*="color:#18181b"], input[style*="color:#18181b"], textarea[style*="color:#18181b"],
select[style*="color:#000"], input[style*="color:#000"], textarea[style*="color:#000"],
select[style*="color: #000"], input[style*="color: #000"], textarea[style*="color: #000"] {
  color: #f0edff !important;
}

/* 10) layui 框架表单组件覆盖 */
.layui-input, .layui-select, .layui-textarea, .layui-form-select dl {
  background: #1a1035 !important;
  background-color: #1a1035 !important;
  border-color: rgba(168, 85, 247, 0.35) !important;
  color: #f0edff !important;
}
.layui-form-select dl dd.layui-this {
  background: rgba(168, 85, 247, 0.25) !important;
  color: #fff !important;
}
.layui-form-select dl dd:hover {
  background: rgba(168, 85, 247, 0.15) !important;
  color: #fff !important;
}

/* 11) common 表单类 */
.form-control, .input-box, .el-input, .el-textarea,
.el-select .el-input, .el-date-editor.el-input, .el-date-editor.el-input__wrapper {
  background: #1a1035 !important;
  background-color: #1a1035 !important;
  border-color: rgba(168, 85, 247, 0.35) !important;
  color: #f0edff !important;
}

/* 12) auth 输入框 & 充值面板 */
.auth-input-wrap, .recharge-redeem-panel input, .global-topbar-points-redeem-row input {
  background: #1a1035 !important;
  background-color: #1a1035 !important;
  border-color: rgba(168, 85, 247, 0.35) !important;
  color: #f0edff !important;
}
.auth-input-wrap:focus-within {
  background: #241746 !important;
  border-color: #a855f7 !important;
}

/* 13) hover/active 卡片/列表不要变白（通用保护）*/
.card:hover, .list-item:hover, .table-row:hover,
.menu-item:hover:not(.active), .nav-item:hover:not(.active),
.sidebar-item:hover:not(.active) {
  background: rgba(168, 85, 247, 0.08) !important;
  background-color: rgba(168, 85, 247, 0.08) !important;
  color: #f0edff !important;
}

/* 14) date/time 原生控件深色 */
input[type="date"], input[type="time"], input[type="datetime-local"],
input[type="month"], input[type="week"] {
  color-scheme: dark !important;
}

/* 15) layui layer prompt 弹窗输入框 */
.layui-layer-prompt .layui-layer-input {
  background: #1a1035 !important;
  border-color: rgba(168, 85, 247, 0.35) !important;
  color: #f0edff !important;
}

/* =====================================================================
   16) 2026-10-05 登录弹窗（tenant.js .auth-modal）统一紫晶暗色
   与首页 home-purple-v2.html 内嵌样式一致；此处集中维护、全站生效。
   验证码图片与微信二维码保留浅底（扫码/识别需要）。
   ===================================================================== */
.auth-modal-overlay .auth-modal{
  background:linear-gradient(165deg,#1c1034 0%,#150b28 55%,#0f0722 100%) !important;
  border:1px solid rgba(139,92,246,.35) !important;
  box-shadow:0 32px 80px rgba(0,0,0,.65),0 0 50px rgba(139,92,246,.16) !important;
  color:#e9e2f9 !important;
}
.auth-modal-overlay .auth-modal-close{background:rgba(255,255,255,.07) !important;border:1px solid rgba(139,92,246,.25) !important;color:#b6a8d9 !important}
.auth-modal-overlay .auth-modal-close:hover{background:rgba(217,70,239,.22) !important;border-color:rgba(217,70,239,.6) !important;color:#fff !important}
.auth-modal-overlay .auth-modal-title{color:#fff !important}
.auth-modal-overlay .auth-modal-desc{color:#a898c9 !important}
.auth-modal-overlay .auth-input-wrap{background:rgba(10,5,24,.55) !important;border:1px solid rgba(139,92,246,.25) !important}
.auth-modal-overlay .auth-input-wrap:focus-within{background:rgba(10,5,24,.75) !important;border-color:#a855f7 !important;box-shadow:0 0 0 3px rgba(168,85,247,.18) !important}
.auth-modal-overlay .auth-input-wrap input{background:transparent !important;border:none !important;color:#fff !important}
.auth-modal-overlay .auth-input-wrap input::placeholder{color:#6f5f96 !important}
.auth-modal-overlay .auth-input-wrap i{color:#8b7bb8 !important}
.auth-modal-overlay .auth-input-wrap:focus-within i{color:#d8b4fe !important}
.auth-modal-overlay .auth-send-code-btn{background:rgba(168,85,247,.12) !important;border:1px solid rgba(168,85,247,.4) !important;color:#d8b4fe !important}
.auth-modal-overlay .auth-send-code-btn:hover{background:rgba(168,85,247,.22) !important;border-color:#d8b4fe !important;color:#fff !important}
.auth-modal-overlay .auth-send-code-btn:disabled{background:rgba(255,255,255,.05) !important;border-color:rgba(139,92,246,.2) !important;color:#6f5f96 !important}
.auth-modal-overlay .auth-divider::before,.auth-modal-overlay .auth-divider::after{background:linear-gradient(90deg,transparent,rgba(139,92,246,.4),transparent) !important}
.auth-modal-overlay .auth-divider span{color:#8b7bb8 !important}
.auth-modal-overlay .auth-switch{color:#8b7bb8 !important}
.auth-modal-overlay .auth-switch a{color:#22d3ee !important}
.auth-modal-overlay .auth-switch a:hover{color:#67e8f9 !important}
.auth-modal-overlay .auth-login-btn,.auth-modal-overlay .auth-cancel-btn{background:rgba(255,255,255,.06) !important;border:1px solid rgba(139,92,246,.25) !important;color:#e9e2f9 !important}
.auth-modal-overlay .auth-login-btn:hover,.auth-modal-overlay .auth-cancel-btn:hover{background:rgba(255,255,255,.12) !important;border-color:rgba(217,70,239,.6) !important}
.auth-modal-overlay .auth-tabs-wrap{background:rgba(10,5,24,.55) !important;border-color:rgba(139,92,246,.25) !important}
.auth-modal-overlay .auth-tab-item{color:#a898c9 !important}
.auth-modal-overlay .auth-tab-item:hover:not(.active){color:#fff !important}
.auth-modal-overlay .wx-login-header h4{color:#fff !important}
.auth-modal-overlay .wx-login-header p{color:#a898c9 !important}
.auth-modal-overlay .auth-agreement{color:#8b7bb8 !important}
.auth-modal-overlay .captcha-img{border:1px solid rgba(139,92,246,.25) !important}
.auth-modal-overlay .auth-agreement-check{color:#8b7bb8 !important}
.auth-modal-overlay .auth-agreement-check a{color:#c084fc !important}
.auth-modal-overlay .auth-label,.auth-modal-overlay .auth-modal label{color:#a898c9 !important}

/* =====================================================================
   17) 2026-10-05 积分明细弹窗（topbar.js .global-topbar-points-modal）
   统一紫晶暗色：白底浅面板改深紫渐变，文字/输入/按钮随模板走。
   回滚：删除本块并从 4510/4567/4598/4606/4614/4654 行附近豁免组恢复
   .global-topbar-points-modal 选择器即可。
   ===================================================================== */
html body .global-topbar-points-dialog {
  background: linear-gradient(165deg,#1c1034 0%,#150b28 55%,#0f0722 100%) !important;
  border: 1px solid rgba(139,92,246,.35) !important;
  box-shadow: 0 32px 80px rgba(0,0,0,.65) !important;
}
html body .global-topbar-points-close { background: rgba(168,85,247,.14) !important; color: #d8b4fe !important; }
html body .global-topbar-points-close:hover { background: rgba(168,85,247,.28) !important; color: #fff !important; }
html body .global-topbar-points-title { color: #fff !important; }
html body .global-topbar-points-sub { color: #a898c9 !important; }
html body .global-topbar-points-overview {
  background: rgba(255,255,255,.045) !important;
  box-shadow: inset 0 0 0 1px rgba(168,85,247,.18) !important;
}
html body .global-topbar-points-stat .l { color: #b8b0d0 !important; }
html body .global-topbar-points-btn.ghost { background: rgba(168,85,247,.1) !important; border: 1.5px solid rgba(168,85,247,.5) !important; color: #d8b4fe !important; }
html body .global-topbar-points-btn.ghost:hover { background: rgba(168,85,247,.2) !important; color: #f0edff !important; }
html body .global-topbar-points-redeem { background: rgba(168,85,247,.08) !important; border-color: rgba(216,180,254,.35) !important; }
html body .global-topbar-points-redeem-row > i { color: #c084fc !important; }
html body .global-topbar-points-redeem-tip { color: #8a80ad !important; }
html body .global-topbar-points-tabs button { background: rgba(255,255,255,.05) !important; border-color: rgba(168,85,247,.25) !important; color: #b8b0d0 !important; }
html body .global-topbar-points-tabs button:hover { border-color: rgba(216,180,254,.6) !important; color: #d8b4fe !important; }
html body .global-topbar-points-tabs button.active { background: linear-gradient(135deg,#a855f7 0%,#ec4899 100%) !important; border-color: #a855f7 !important; color: #fff !important; }
html body .global-topbar-points-row { background: rgba(255,255,255,.04) !important; box-shadow: inset 0 0 0 1px rgba(168,85,247,.1) !important; }
html body .global-topbar-points-remark { color: #f0edff !important; }
html body .global-topbar-points-time { color: #8a80ad !important; }
html body .global-topbar-points-foot { color: #8a80ad !important; }
html body .global-topbar-points-change.minus { color: #f87171 !important; }

/* =====================================================================
   18) 2026-10-05 积分充值弹窗（tenant.js .recharge-modal-overlay）统一紫晶暗色。
   二维码(.pay-qr-code)与《会员服务说明》(.recharge-agreement-overlay)保持浅色
   （扫码对比度 / 长文阅读）。回滚：删除本块并恢复 4510/4567/4598/4606/4614/4654
   附近豁免组中的 .recharge-modal-overlay 选择器。
   ===================================================================== */
html body .recharge-modal {
  background: linear-gradient(165deg,#1c1034 0%,#150b28 55%,#0f0722 100%) !important;
  border: 1px solid rgba(139,92,246,.35) !important;
  box-shadow: 0 32px 80px rgba(0,0,0,.65) !important;
}
html body .recharge-modal-close { background: rgba(168,85,247,.14) !important; color: #d8b4fe !important; }
html body .recharge-modal-close:hover { background: rgba(168,85,247,.28) !important; color: #fff !important; }
html body .recharge-modal-header h3 { color: #fff !important; }
html body .recharge-modal-header p { color: #a898c9 !important; }
html body .recharge-perk { background: rgba(255,255,255,.045) !important; border-color: rgba(168,85,247,.2) !important; color: #d8d0f0 !important; box-shadow: none !important; }
html body .recharge-pkg { background: rgba(255,255,255,.04) !important; border-color: rgba(168,85,247,.22) !important; box-shadow: none !important; }
html body .recharge-pkg:hover { box-shadow: 0 16px 40px rgba(0,0,0,.5) !important; border-color: rgba(216,180,254,.5) !important; }
html body .recharge-pkg.selected { background: linear-gradient(160deg, rgba(168,85,247,.16) 0%, rgba(88,28,135,.2) 100%) !important; border-color: #a855f7 !important; box-shadow: 0 12px 30px rgba(168,85,247,.25) !important; }
html body .pkg-name { color: #fff !important; }
html body .pkg-subtitle { color: #c084fc !important; }
html body .pkg-points-num { color: #fff !important; }
html body .pkg-points em { color: #a898c9 !important; }
html body .pkg-desc { color: #b8b0d0 !important; }
html body .pkg-price { color: #c084fc !important; }
html body .pkg-original-price { color: #6f6890 !important; }
html body .pkg-price-row { background: transparent !important; box-shadow: none !important; }
html body .pkg-price { background: linear-gradient(135deg,#d8b4fe 0%,#f0abfc 55%,#f472b6 100%) !important; -webkit-background-clip: text !important; background-clip: text !important; -webkit-text-fill-color: transparent !important; color: #e9d5ff !important; font-size: 22px !important; }
html body .pkg-radio { background: transparent !important; border-color: #5b4a8a !important; }
html body .recharge-pkg.selected .pkg-radio { border-color: #a855f7 !important; background: #a855f7 !important; }
html body .recharge-pay-section { border-top-color: rgba(168,85,247,.2) !important; }
html body .recharge-pay-label { color: #b8b0d0 !important; }
html body .recharge-pay-method { background: rgba(255,255,255,.05) !important; border-color: rgba(168,85,247,.22) !important; color: #d8d0f0 !important; box-shadow: none !important; }
html body .recharge-pay-method:hover { border-color: rgba(216,180,254,.5) !important; }
html body .recharge-pay-method.active { background: rgba(168,85,247,.15) !important; border-color: #a855f7 !important; color: #e9d5ff !important; }
html body .recharge-agree { color: #a898c9 !important; }
html body .recharge-agree-box { background: transparent !important; border-color: #5b4a8a !important; }
html body .recharge-agree a { color: #c084fc !important; }
html body .recharge-redeem { background: rgba(168,85,247,.08) !important; border-color: rgba(216,180,254,.35) !important; }
html body .recharge-redeem > a { color: #c084fc !important; }
html body .recharge-modal-footer-note { color: #8a80ad !important; }
html body .pay-qr-pkg { color: #d8d0f0 !important; }
html body .pay-qr-tip { color: #b8b0d0 !important; }
html body .pay-qr-status { color: #c084fc !important; }
html body .pay-qr-code { border: 1px solid rgba(168,85,247,.3) !important; }

/* =====================================================================
   19) 2026-10-06 layui layer 弹窗（卡密核销 / 我的模板 / 退出确认等）统一紫晶暗色。
   病因：common.css 的 body .layui-layer-title、body .layui-layer-btn 均带 !important
   且特异性 (0,1,1)，把标题栏染成 #f8f8f8、按钮条染成 #fff，与暗紫弹窗主体上下混色。
   本块提权到 (0,3,2)+(0,3,3) 覆盖；刻意保留浅色的绑定手机弹窗 .bind-phone-modal 已豁免。
   回滚：删除本块即可恢复原白头白脚。
   ===================================================================== */

/* 标题栏 */
html body .layui-layer:not(.bind-phone-modal) > .layui-layer-title {
  background: linear-gradient(180deg, rgba(58,34,102,.72) 0%, rgba(34,21,62,.5) 100%) !important;
  color: #fff !important;
  border-bottom: 1px solid rgba(168,85,247,.24) !important;
  font-weight: 600 !important;
  letter-spacing: .3px;
}

/* 底部按钮条 */
html body .layui-layer:not(.bind-phone-modal) > .layui-layer-btn {
  background: rgba(14,8,30,.6) !important;
  border-top: 1px solid rgba(168,85,247,.18) !important;
  border-radius: 0 0 16px 16px !important;
}
html body .layui-layer:not(.bind-phone-modal) > .layui-layer-btn .layui-layer-btn1,
html body .layui-layer:not(.bind-phone-modal) > .layui-layer-btn .layui-layer-btn2 {
  background: rgba(255,255,255,.05) !important;
  border: 1px solid rgba(168,85,247,.26) !important;
  color: #c9c1e4 !important;
}
html body .layui-layer:not(.bind-phone-modal) > .layui-layer-btn .layui-layer-btn1:hover,
html body .layui-layer:not(.bind-phone-modal) > .layui-layer-btn .layui-layer-btn2:hover {
  background: rgba(168,85,247,.14) !important;
  border-color: rgba(216,180,254,.45) !important;
  color: #f0edff !important;
}

/* 确认框 / 提示框（layer.confirm / layer.alert）——原为纯白对话框 */
html body .layui-layer.layui-layer-dialog:not(.bind-phone-modal) {
  background: linear-gradient(165deg, #241543 0%, #190f31 60%, #130a26 100%) !important;
  border: 1px solid rgba(139,92,246,.3) !important;
  box-shadow: 0 24px 64px rgba(0,0,0,.6) !important;
}
html body .layui-layer.layui-layer-dialog:not(.bind-phone-modal) > .layui-layer-content {
  background: transparent !important;
  color: #e9e2f9 !important;
}
/* 少数确认框正文里写死的深灰文字（如 digital-human.js 的 color:#333）暗底不可读，统一提亮 */
html body .layui-layer.layui-layer-dialog .layui-layer-content [style*="color:#333"],
html body .layui-layer.layui-layer-dialog .layui-layer-content [style*="color: #333"],
html body .layui-layer.layui-layer-dialog .layui-layer-content [style*="color:#1f2937"],
html body .layui-layer.layui-layer-dialog .layui-layer-content [style*="color:black"] {
  color: #f0edff !important;
}

/* 弹窗内表单控件（绑定手机弹窗维持浅色设计） */
html body .layui-layer:not(.bind-phone-modal) input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),
html body .layui-layer:not(.bind-phone-modal) select,
html body .layui-layer:not(.bind-phone-modal) textarea {
  background: rgba(255,255,255,.06) !important;
  color: #f0edff !important;
  border-color: rgba(168,85,247,.28) !important;
}
html body .layui-layer:not(.bind-phone-modal) input:not([type="checkbox"]):not([type="radio"]):not([type="color"])::placeholder,
html body .layui-layer:not(.bind-phone-modal) textarea::placeholder {
  color: #7d739e !important;
  opacity: 1;
}
html body .layui-layer:not(.bind-phone-modal) input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):focus,
html body .layui-layer:not(.bind-phone-modal) select:focus,
html body .layui-layer:not(.bind-phone-modal) textarea:focus {
  background: rgba(255,255,255,.09) !important;
  border-color: #a855f7 !important;
  box-shadow: 0 0 0 3px rgba(168,85,247,.18) !important;
  color: #fff !important;
}
html body .layui-layer:not(.bind-phone-modal) { color-scheme: dark !important; }

/* 2026-10-06：绑定/更换手机号弹层已整体改为紫晶暗色（样式随组件在 tenant.js 的
   #bindPhoneModalStyle 内维护，与本文件 19) 块的 .bind-phone-modal 豁免配套），
   原先在此处打的"恢复白底"补丁已删除。 */
