/* ============================================================
   LiveMe — 暗色毛玻璃主题 v4
   按 Ardot 设计稿还原 · 黑底对角渐变 · white 0.44 OVERLAY
   ============================================================ */

@font-face {
  font-family: 'DingTalk JinBuTi';
  src: url('../icon/DingTalk%20JinBuTi.ttf') format('truetype');
  font-style: normal;
  font-weight: 400;
  font-display: swap;
}
.faceDingTalk {
  font-family:'DingTalk JinBuTi' !important;
}
/* ===== 1. DESIGN TOKENS ===== */
:root {
  /* — 主色: 暖橙 — */
  --color-primary-50:  #FFF0E6;
  --color-primary-100: #FFD4B8;
  --color-primary-200: #FFB38A;
  --color-primary-300: #FF9255;
  --color-primary-400: #FF7A33;
  --color-primary-500: #3671E5;
  --color-primary-600: #E55A0E;
  --color-primary-700: #CC4E0A;
  --color-primary-800: #993B08;
  --color-primary-900: #662805;

  /* — 背景: 纯黑 + 对角渐变 — */
  --color-bg-base:      #F6F9FF;
  --color-bg-panel:     rgba(255,255,255,0.06);
  --color-bg-card:      rgba(255,255,255,0.08);
  --color-bg-card-strong: rgba(255,255,255,0.12);
  --color-bg-card-light:  rgba(255,255,255,0.05);
  --color-bg-hover:     rgba(255,255,255,0.10);
  --color-bg-input:     rgba(255,255,255,0.12);
  --color-bg-overlay:   rgba(0,0,0,0.65);
  --color-bg-secondary: rgba(255,255,255,0.06);

  /* — 边框: 白色半透明 — */
  --color-border:        #757D92;
  --color-border-hover:  rgba(255,255,255,0.55);
  --color-border-focus:  var(--color-primary-500);
  --color-border-subtle: #E1E1E1;

  /* — 文字: 白色系 — */
  --color-text-primary:   #2E3E63;
  --color-text-secondary: #B0B0B0;
  --color-text-tertiary:  #8B949E;
  --color-text-link:      var(--color-primary-400);
  --color-text-link-hover:var(--color-primary-300);

  /* — 语义色 — */
  --color-success:  #22c55e;
  --color-warning:  #f59e0b;
  --color-error:    #ef4444;
  --color-info:     var(--color-primary-500);

  /* — 排版 — */
  --font-sans:  "PingFang SC", "Microsoft YaHei", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-mono:  "JetBrains Mono", "Fira Code", "SF Mono", Consolas, "Cascadia Code", monospace;
  --font-wechat:"PingFang SC", "Helvetica Neue", "Microsoft YaHei", sans-serif;

  --text-xs:    0.6875rem;
  --text-sm:    0.75rem;
  --text-base:  0.8125rem;
  --text-md:    0.875rem;
  --text-lg:    1rem;
  --text-xl:    1.125rem;
  --text-2xl:   1.375rem;
  --text-3xl:   1.75rem;

  --fw-normal:   400;
  --fw-medium:   500;
  --fw-semibold: 600;
  --fw-bold:     700;

  --leading-tight:   1.3;
  --leading-normal:  1.5;
  --leading-relaxed: 1.7;

  /* — 间距 — */
  --space-1:  4px;
  --space-2:  8px;
  --space-3:  12px;
  --space-4:  16px;
  --space-5:  20px;
  --space-6:  24px;
  --space-8:  32px;

  /* — 阴影 — */
  --shadow-xs: 0 1px 2px rgba(0,0,0,0.3);
  --shadow-sm: 0 2px 8px rgba(0,0,0,0.4);
  --shadow-md: 0 4px 16px rgba(0,0,0,0.5);
  --shadow-lg: 0 8px 32px rgba(0,0,0,0.6);

  /* — 圆角 — */
  --radius-sm:   8px;
  --radius-md:   12px;
  --radius-lg:   16px;
  --radius-xl:   24px;
  --radius-full: 9999px;

  /* — 动效 — */
  --ease-out:    cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
  --duration-fast:   150ms;
  --duration-normal: 250ms;
  --duration-slow:   400ms;

  /* — 触控尺寸 — */
  --touch-min: 44px;

  /* — 毛玻璃通用 — */
  --glass-bg: rgba(255,255,255,0.08);
  --glass-bg-strong: rgba(255,255,255,0.12);
  --glass-border: rgba(255,255,255,0.4);
  --glass-blur: blur(16px);
}

/* ===== 2. BODY 黑底对角渐变 ===== */
body {
  position: relative;
}
body::before {
  content: "";
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  pointer-events: none;
  z-index: 0;
}
body > * { position: relative; z-index: 1; }

/* ===== 3. 全局面板毛玻璃 ===== */
.layout { background: transparent !important; }

.left-panel, .right-panel, .center-panel, .session-panel,
.panel-header, .settings-panel {
  background: var(--glass-bg) !important;
  backdrop-filter: var(--glass-blur) !important;
  -webkit-backdrop-filter: var(--glass-blur) !important;
  border-color: var(--glass-border) !important;
}

/* ===== 4. 按钮 ===== */
.btn {
  background: var(--glass-bg);
  border-color: var(--glass-border);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.btn:hover { background: var(--color-bg-hover); border-color: var(--color-border-hover); }
.btn-primary {
  background: var(--color-primary-500) !important;
  border: none !important;
  color: #fff !important;
}
.btn-primary:hover {
  background: var(--color-primary-400) !important;
  box-shadow: 0 6px 20px rgba(255,107,26,0.4) !important;
}
.btn-danger { color: var(--color-error) !important; border-color: var(--color-error) !important; }
.btn-danger:hover { background: var(--color-error) !important; color: #fff !important; }

/* ===== 5. 输入框 ===== */
input[type="text"], input[type="password"], input[type="email"],
input[type="number"], input[type="search"], textarea, select {
  background: rgba(255,255,255,0.12) !important;
  border: 1px solid var(--color-border) !important;
  color: #000000 !important;
}
input::placeholder, textarea::placeholder { color: #8B949E !important; }
input:focus, textarea:focus, select:focus {
  border-color: var(--color-primary-500) !important;
  box-shadow: 0 0 0 3px rgba(255,107,26,0.12) !important;
}

/* select 下拉框 — option 强制暗色背景白色文字 */
select option {
  color: var(--color-text-primary) !important;
}
select {
  background: rgba(255,255,255,0.12) !important;
  color: var(--color-text-primary) !important;
  border: 1px solid var(--color-border) !important;
}

/* 手机壳内表单元素 — 确保可见 */
.phone-shell input[type="text"],
.phone-shell input[type="number"],
.phone-shell input[type="password"],
.phone-shell textarea,
.phone-shell select {
  background: rgba(255,255,255,0.12) !important;
  border: 1px solid var(--color-border) !important;
}
.phone-shell input::placeholder,
.phone-shell textarea::placeholder { color: #8B949E !important; }

/* iOS Safari 会在输入框字号低于 16px 时自动缩放页面 */
@supports (-webkit-touch-callout: none) {
  .phone-shell input[type="text"],
  .phone-shell input[type="number"],
  .phone-shell input[type="password"],
  .phone-shell input[type="email"],
  .phone-shell input[type="search"],
  .phone-shell textarea,
  .phone-shell select,
  .wechat-input-area input {
    font-size: 16px !important;
  }
}

/* ===== 6. 链接 / 文字选中 ===== */
a { color: var(--color-text-link); }
a:hover { color: var(--color-text-link-hover); }
::selection { background: rgba(255,107,26,0.25); }

/* ===== 7. 滚动条 ===== */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.12); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.2); }

/* ===== 8. 手机壳 — 黑底对角渐变 ===== */
.phone-shell {
  border-color: rgba(255,255,255,0.15) !important;
  border-width: 3px !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.6) !important;
  position: relative;
}
.phone-shell::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  pointer-events: none;
  z-index: 0;
}
.phone-shell > * { position: relative; z-index: 1; }

/* 手机壳 > 状态栏 */
.phone-status-bar {
  background: transparent !important;
  color: #999 !important;
  font-size: 11px !important;
  padding: 4px 22px 0 !important;
}
.phone-status-bar * { color: #999 !important; }
.phone-status-state, .phone-status-pending { color: var(--color-primary-500) !important; }

/* 手机壳 > 导航栏 */
.phone-nav-bar {
  background: var(--glass-bg) !important;
  border-bottom-color: var(--glass-border) !important;
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
}
.phone-nav-bar .nav-title { color: var(--color-text-primary) !important; }
.phone-nav-bar .nav-more { color: var(--color-text-tertiary) !important; }
.phone-nav-bar .nav-back { color: var(--color-primary-500) !important; }

/* 退出按钮 */
.phone-exit-btn {
  background: rgba(255,255,255,0.08) !important;
  border: 1px solid var(--color-border-subtle) !important;
  color: var(--color-text-tertiary) !important;
}

/* ===== 9. 微信搜索框 — 毛玻璃 ===== */
.wechat-search-bar { padding: 10px 14px; }
.wechat-search-bar input {
  background: var(--glass-bg) !important;
  border: 1px solid var(--glass-border) !important;
  color: var(--color-text-primary) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.wechat-search-bar input::placeholder { color: var(--color-text-tertiary) !important; }
.wechat-search-bar input:focus { border-color: var(--color-primary-500) !important; }

/* ===== 10. 微信好友列表 — 毛玻璃卡片 ===== */
.wechat-friend-list { background: transparent !important; }
.wechat-friend-item {
  background: var(--glass-bg) !important;
  border-bottom: 1px solid var(--color-border-subtle) !important;
  padding: 13px 8px !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.wechat-friend-item:hover { background: var(--color-bg-hover) !important; }
.wechat-friend-name { font-size: 16px !important; font-weight: 600 !important; }
.wechat-friend-preview { font-size: 12px !important; color: var(--color-text-secondary) !important; }

/* ===== 头像系统 — 彩色渐变 ===== */
.wechat-avatar {
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #fff !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.3) !important;
  text-shadow: 0 1px 3px rgba(0,0,0,0.3) !important;
}
.wechat-friend-item:nth-child(5n+1) .wechat-avatar {
  background: linear-gradient(135deg, #FF6B1A, #E55A0E) !important;
}
.wechat-friend-item:nth-child(5n+2) .wechat-avatar {
  background: linear-gradient(135deg, #1A8CA5, #0D6B80) !important;
}
.wechat-friend-item:nth-child(5n+3) .wechat-avatar {
  background: linear-gradient(135deg, #8B5CF6, #6D28D9) !important;
}
.wechat-friend-item:nth-child(5n+4) .wechat-avatar {
  background: linear-gradient(135deg, #22c55e, #16a34a) !important;
}
.wechat-friend-item:nth-child(5n+5) .wechat-avatar {
  background: linear-gradient(135deg, #EC4899, #BE185D) !important;
}

/* 聊天区气泡旁头像 — 内联 style 颜色映射 */
[style*="background:#a855f7"] { background: linear-gradient(135deg, #8B5CF6, #6D28D9) !important; }
[style*="background:#5b8def"] { background: linear-gradient(135deg, #1A8CA5, #0D6B80) !important; }
[style*="background:#e8a735"] { background: linear-gradient(135deg, #FF6B1A, #E55A0E) !important; }
[style*="background:#10b981"] { background: linear-gradient(135deg, #22c55e, #16a34a) !important; }
[style*="background:#8b5cf6"] { background: linear-gradient(135deg, #8B5CF6, #6D28D9) !important; }
[style*="background:#e85d75"] { background: linear-gradient(135deg, #EC4899, #BE185D) !important; }
[style*="background:#9b6dff"] { background: linear-gradient(135deg, #8B5CF6, #6D28D9) !important; }
[style*="background:#2c6cb0"] { background: linear-gradient(135deg, #1A8CA5, #0D6B80) !important; }

/* ===== 11. 微信聊天区 — 黑底 ===== */
.wechat-chat-area {
  background: transparent !important;
}

/* ===== 12. 聊天气泡 — 毛玻璃(AI) + 暖橙(User) ===== */
.wechat-msg.w-ai .wechat-bubble {
  background: #E7EBED !important;
  mix-blend-mode: overlay;
  border: 1px solid rgba(255,255,255,0.4) !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}
.wechat-msg.w-user .wechat-bubble {
  background: var(--color-primary-500) !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,0.4) !important;
  box-shadow: 0 4px 12px rgba(255,107,26,0.2) !important;
}

/* NPC 气泡 — 暖金色毛玻璃 */
.wechat-msg.w-npc .wechat-bubble {
  background: rgba(255,200,100,0.25) !important;
  mix-blend-mode: overlay;
  border: 1px solid var(--color-border) !important;
  color: var(--color-text-primary) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

/* ===== 13. 微信输入区 — 毛玻璃 ===== */
.wechat-input-area {
  background: var(--glass-bg) !important;
  border-top-color: var(--glass-border) !important;
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
}
.wechat-input-area input {
  background: var(--glass-bg) !important;
  border: 1px solid var(--glass-border) !important;
  color: var(--color-text-primary) !important;
}
.wechat-input-area input::placeholder { color: var(--color-text-tertiary) !important; }

/* ===== 14. 微信 Tab 栏 — 毛玻璃 + 橙色激活 ===== */
.wechat-tab-bar {
  height:70px;
  z-index:100;
  background: #fff;
  border-top: 1px solid var(--glass-border) !important;
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  box-shadow: 0px -4px 14px rgba(217, 217, 217, 0.3);
}
.wechat-tab {
  font-size: 13px !important;
  color: var(--color-text-tertiary) !important;
  min-height: 30px !important;
  padding: 4px 0 !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.wechat-tab.active {
  color: #2E3E63 !important;
  font-weight: 600 !important;
}


/* ===== 15. 微信 + 菜单 — 毛玻璃 ===== */
.wechat-plus-menu {
  background: var(--glass-bg) !important;
  border-top-color: var(--glass-border) !important;
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
}
.wechat-plus-icon {
  background: rgba(255,255,255,0.12) !important;
  border: 1px solid var(--glass-border) !important;
}
.wechat-plus-label { color: var(--color-text-secondary) !important; }

/* ===== 16. 微信发送按钮 ===== */
.wechat-send-btn {
  background: var(--color-primary-500) !important;
}
.wechat-send-btn:hover { background: var(--color-primary-400) !important; }

/* ===== 17. 遮罩 / 弹窗 ===== */
.mobile-overlay { background: var(--color-bg-overlay) !important; backdrop-filter: blur(4px); }

/* ===== 18. Modal — 深色半透明毛玻璃 ===== */
.modal {
  background: rgba(20,20,30,0.5) !important;
  border: 1px solid var(--color-border) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.6) !important;
}
.modal-header {
  border-bottom-color: var(--color-border-subtle) !important;
}
.modal-header h3 { color: var(--color-text-primary) !important; }
.modal-body { color: var(--color-text-primary) !important; }
.modal-body pre {
  background: rgba(0,0,0,0.4) !important;
  color: var(--color-text-primary) !important;
  border: 1px solid var(--color-border-subtle) !important;
}
.modal-close { color: var(--color-text-tertiary) !important; }
.modal-close:hover { color: var(--color-text-primary) !important; background: var(--color-bg-hover) !important; }

/* ===== 18b. JS 动态弹窗 — 深色半透明 ===== */
#teamDetailOverlay,
#npcPickerOverlay,
#redPacketModal, #creditsModal, #creditsLogModal,
#transferModal, #createGoalModal, #petNameModal, #regenModal,
#messagesModal, #logsModal {
  background: rgba(0,0,0,0.7) !important;
  backdrop-filter: blur(4px) !important;
  -webkit-backdrop-filter: blur(4px) !important;
}
/* 球队详情 — 内容容器 */
#teamDetailOverlay > div {
  background: rgba(20,20,30,0.5) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border: 1px solid var(--color-border) !important;
  border-radius: 16px !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.6) !important;
  margin-top: 20px !important;
}
/* 球队详情 — 内部卡片保持毛玻璃 */
#teamDetailOverlay [style*="background:#1c1c1e"],
#teamDetailOverlay [style*="background:linear-gradient(135deg,#1a2a1a"] {
  background: rgba(255,255,255,0.08) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
}
/* NPC Picker — 内容容器 */
#npcPickerOverlay > div {
  background: rgba(20,20,30,0.5) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border: 1px solid var(--color-border) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.6) !important;
}

/* ===== 19. 强制覆盖 index.html 深色内联样式 → 暗色毛玻璃 ===== */

/* 深色卡片 → 毛玻璃 */
[style*="background:#2c2c2e"], [style*="background:#2a2a2a"],
[style*="background:#2a2a35"], [style*="background:#353535"],
[style*="background:#21262d"], [style*="background:#48484a"] {
  background: rgba(255,255,255,0.08) !important;
  border: 0.5px solid var(--color-border) !important;
}
[style*="background:#1a1a1a"], [style*="background:#1a1a1c"],
[style*="background:#1e1e1e"] {
  background: rgba(255,255,255,1) !important;
}
[style*="background:#0d1117"]{
  background: transparent !important;
}
[style*="background:#161b22"] { background: rgba(255,255,255,0.08) !important; }

[style*="color:#8b949e"], [style*="color:#8e8e9e"],
[style*="color:#6e7681"] {
  color: #757D92 !important;
}
[style*="color:#999"] { color: #8B949E !important; }

/* 深色边框 → 白色半透明 */
[style*="border:1px solid #30363d"], [style*="border:1px solid #48484a"],
[style*="border:1px solid #444"], [style*="border:1px solid #2a2a2a"],
[style*="border:1px solid #2a2a35"], [style*="border:1px solid #2a3a2a"] {
  border-color: rgba(255,255,255,0.4) !important;
}
[style*="border-bottom:1px solid #21262d"], [style*="border-bottom:1px solid #2a2a2a"],
[style*="border-bottom:1px solid #1e1e2a"], [style*="border-bottom:1px solid #1e1e2a;"],
[style*="border-top:1px solid #2a2a2a"], [style*="border-bottom:1px solid #3a2a2a"] {
  border-color: rgba(255,255,255,0.15) !important;
}

/* 蓝色链接 → 橙色 */
[style*="color:#576b95"] {
  color: var(--color-primary-500) !important;
}

/* #585868 灰色 → 亮灰 */
[style*="color:#585868"] {
  color: #8B949E !important;
}

/* 绿色主按钮 → 橙色 */
[style*="background:#10b981"]:not(.wechat-avatar),
[style*="background:rgb(16, 185, 129)"]:not(.wechat-avatar),
[style*="background: rgb(16, 185, 129)"]:not(.wechat-avatar) {
  background: var(--color-primary-500) !important;
  color: #fff !important;
}

/* 红色按钮 → 暖玫瑰 */
[style*="background:#e85d75"] {
  background: #E8786F !important;
  color: #fff !important;
}

/* 绿色卡片/徽章底色 */
[style*="background:#1e3a2a"], [style*="background:#1a2a1a"],
[style*="background:rgb(26, 42, 26)"], [style*="background: rgb(26, 42, 26)"] {
  background: rgba(34,197,94,0.12) !important;
  border: 0.5px solid rgba(34,197,94,0.25) !important;
  color: var(--color-text-primary) !important;
}

/* 紫色积分卡片保持紫色 */
[style*="background:#a855f7"] {
  background: #a855f7 !important;
  color: #fff !important;
}

/* NPC 深层底色 */
[style*="background:linear-gradient(135deg,#1a2a1a,#1c1c1e)"] {
  background: linear-gradient(135deg, rgba(34,197,94,0.12), rgba(255,255,255,0.06)) !important;
  border: 0.5px solid rgba(255,255,255,0.3) !important;
}

/* 深色半透明底 */
[style*="background:#141414"],
[style*="background:rgb(20, 20, 20)"], [style*="background: rgb(20, 20, 20)"] {
  background: rgba(255,255,255,0.06) !important;
  border: 0.5px solid rgba(255,255,255,0.25) !important;
}

/* 进度条轨道 */
[style*="background:#2a2a35"], [style*="background:#2a2a2e"],
[style*="height:6px;background:#2a2a35"], [style*="height:4px;background:#2a2a35"],
[style*="height:3px;background:#2a2a2e"] {
  background: rgba(255,255,255,0.1) !important;
}

/* 金色进度条填充 */
[style*="background:#e8a735"] {
  background: linear-gradient(135deg, #FFB38A, #FF6B1A) !important;
}

/* 个人/共同标签 */
[style*="color:#10b981;background:#1a2a1a"] {
  background: rgba(34,197,94,0.15) !important;
  color: #4ADE80 !important;
}
[style*="color:#8b949e;background:#2a2a35"] {
  background: rgba(255,255,255,0.08) !important;
  color: #B0B0B0 !important;
}

/* NPC Picker 激活项 */
[style*="background:#1e3a2a"], [style*="background:#1e2a3a"] {
  background: rgba(255,107,26,0.15) !important;
  border: 0.5px solid rgba(255,107,26,0.25) !important;
}

/* Modal/弹窗 — 深色实底 */
[style*="background:#1a1a1a;border-radius:14px"],
[style*="background:#1a1a1a;border-radius:16px"],
[style*="background:#1a1a2e;border-radius"],
[style*="background:rgb(26, 26, 26)"][style*="border-radius:14px"],
[style*="background: rgb(26, 26, 26)"][style*="border-radius: 14px"],
[style*="background:rgb(26, 26, 46)"], [style*="background: rgb(26, 26, 46)"] {
  background: rgba(20,20,30,0.5) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border: 1px solid var(--color-border) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.6) !important;
  color: var(--color-text-primary) !important;
}

/* Bottom Sheet — 深色半透明 */
[style*="background:#1a1a1a;border-radius:16px 16px 0 0"],
[style*="background:rgb(26, 26, 26)"][style*="border-radius:16px 16px 0 0"],
[style*="background: rgb(26, 26, 26)"][style*="border-radius: 16px 16px 0 0"] {
  background: rgba(20,20,30,0.55) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border: 1px solid var(--color-border) !important;
}

/* 商品详情/列表卡片 */
[style*="background:#1c1c1e;border-radius:10px"] {
  background: rgba(255,255,255,0.08) !important;
  border: 0.5px solid var(--color-border) !important;
}

/* 日程页 */
#wechatNpcScheduleContent > div:not([style*="text-align:"][style*="center"]) {
  background: rgba(255,255,255,0.06) !important;
  border: 0.5px solid rgba(255,255,255,0.3) !important;
  color: var(--color-text-primary) !important;
}
#wechatNpcScheduleContent > div div[style*="background:"] {
  background: rgba(255,255,255,0.05) !important;
  border: 0.5px solid rgba(255,255,255,0.25) !important;
  color: var(--color-text-primary) !important;
}
#wechatNpcScheduleContent [style*="color:"][style*="#10b981"],
#wechatNpcScheduleContent [style*="color:"][style*="rgb(16, 185, 129)"] { color: var(--color-primary-500) !important; }
#wechatNpcScheduleContent [style*="color:"][style*="rgb(232, 232, 239)"] { color: var(--color-text-primary) !important; }
#wechatNpcScheduleContent [style*="color:"][style*="#8e8e9e"],
#wechatNpcScheduleContent [style*="color:"][style*="rgb(142, 142, 158)"],
#wechatNpcScheduleContent [style*="color:"][style*="#8b949e"],
#wechatNpcScheduleContent [style*="color:"][style*="rgb(139, 148, 158)"] { color: #B0B0B0 !important; }

/* 地图 viewport 浅色 */
#archiveMapViewport { background: #F9F9F9 !important; }

/* RGB 深色卡片回退 */
[style*="background:rgb(26, 26, 26)"],
[style*="background: rgb(26, 26, 26)"] {
  background: rgba(255,255,255,0.06) !important;
}

/* RGB 深色边框回退 */
[style*="border:"][style*="rgb(42, 42, 42)"],
[style*="border:"][style*="rgb(42, 42, 53)"],
[style*="border:"][style*="rgb(42, 58, 42)"],
[style*="border:"][style*="rgb(34, 34, 34)"],
[style*="border:"][style*="rgb(48, 54, 61)"] {
  border: 0.5px solid var(--color-border) !important;
}

/* RGB 深色文本回退 */
[style*="color:rgb(232, 232, 239)"], [style*="color: rgb(232, 232, 239)"],
[style*="color:rgb(201, 209, 217)"], [style*="color: rgb(201, 209, 217)"] {
  color: #fff !important;
}
[style*="color:rgb(139, 148, 158)"], [style*="color: rgb(139, 148, 158)"],
[style*="color:rgb(142, 142, 158)"], [style*="color: rgb(142, 142, 158)"],
[style*="color:rgb(110, 118, 129)"], [style*="color: rgb(110, 118, 129)"] {
  color: #B0B0B0 !important;
}

/* ===== 20. 表格 ===== */
table { border-color: var(--color-border-subtle); }
th { color: var(--color-text-secondary); border-bottom-color: var(--color-border-subtle); }
td { border-bottom-color: var(--color-border-subtle); color: var(--color-text-primary); }
tr:hover { background: var(--color-bg-hover) !important; }

/* ===== 21. 代码 ===== */
code, pre {
  background: rgba(255,255,255,0.06);
  color: var(--color-primary-400);
  border: 1px solid var(--color-border-subtle);
}

/* ===== 22. Toast / 通知 ===== */
.toast {
  background: rgba(255,255,255,0.12) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border: 1px solid var(--glass-border) !important;
  color: var(--color-text-primary) !important;
}

/* ===== 23. 分割线 ===== */
hr, .divider, .border-bottom { border-color: var(--color-border-subtle); }

/* ===== 24. 选中项高亮 ===== */
.session-item.active, .session-item:hover,
.chat-item.active, .chat-item:hover { background: var(--color-bg-hover) !important; }
.session-item { color: var(--color-text-primary) !important; }
.session-item.active { color: var(--color-primary-500) !important; }

/* ===== 25. 下拉菜单 ===== */
.dropdown-menu, .context-menu {
  background: rgba(255,255,255,0.12) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border: 1px solid var(--glass-border) !important;
  box-shadow: var(--shadow-md) !important;
}

/* ===== 26. Badge ===== */
.badge { background: rgba(255,255,255,0.12); color: var(--color-text-secondary); }

/* ===== 27. 记忆面板 ===== */
.memory-panel { background: transparent !important; }
.memory-panel-header { background: var(--glass-bg) !important; border-bottom-color: var(--color-border-subtle) !important; }
.memory-panel-header h4 { color: var(--color-text-secondary) !important; }
.memory-section h5 { color: var(--color-primary-500) !important; }
.memory-section .memory-content {
  background: var(--glass-bg) !important;
  border: 1px solid var(--color-border-subtle) !important;
  color: var(--color-text-primary) !important;
}
.memory-event-item { color: var(--color-text-primary) !important; border-bottom-color: var(--color-border-subtle) !important; }
.memory-event-item .event-type { color: var(--color-primary-500) !important; }
.memory-profile-item { background: var(--color-bg-hover) !important; color: var(--color-text-primary) !important; }
.memory-injected-preview {
  background: rgba(0,0,0,0.3) !important;
  color: var(--color-primary-500) !important;
  border: 1px solid rgba(255,107,26,0.15) !important;
}

/* ===== 28. 参数行 / 底部栏 ===== */
.params-row { background: var(--glass-bg) !important; border-top-color: var(--color-border-subtle) !important; }
.params-row label { color: var(--color-text-secondary) !important; }
.bottom-bar { background: transparent !important; border-top-color: var(--color-border-subtle) !important; color: var(--color-text-tertiary) !important; }
.prompt-stats { background: var(--glass-bg) !important; border-top-color: var(--color-border-subtle) !important; }

/* ===== 29. 提示词区域 ===== */
#systemPrompt { background: transparent !important; color: var(--color-text-primary) !important; }
#systemPrompt::selection { background: rgba(255,107,26,0.25); }

/* ===== 30. 聊天消息（桌面端） ===== */
.msg-ai {
  background: var(--glass-bg) !important;
  color: var(--color-text-primary) !important;
  border: 1px solid var(--color-border-subtle) !important;
}
.msg-user {
  background: var(--color-primary-500) !important;
  color: #fff !important;
}

/* ===== 31. 照片卡片 ===== */
.msg-photo-card {
  background: var(--glass-bg) !important;
  border: 1px solid var(--color-border-subtle) !important;
}
.msg-photo-card .photo-inner { background: rgba(255,255,255,0.06) !important; }
.msg-photo-card .photo-inner .photo-text { color: var(--color-text-primary) !important; }
.msg-photo-card .photo-footer { background: rgba(255,255,255,0.04) !important; color: var(--color-text-tertiary) !important; }

/* ===== 32. 空状态 ===== */
.empty-state { color: var(--color-text-tertiary) !important; }

/* ===== 33. 宠物系统 — 保持暖色页面（JS 内联样式，不覆盖） ===== */
/* 宠物面板使用独立的暖色设计系统 (#FAF6F0, #B08968 等)，不做暗色覆盖 */

/* ===== 34. 移动端适配 ===== */
@media (max-width: 639px) {
  .session-panel, .left-panel, .center-panel, .right-panel {
    background: var(--glass-bg) !important;
    backdrop-filter: var(--glass-blur) !important;
    -webkit-backdrop-filter: var(--glass-blur) !important;
  }
  .phone-shell {
    width: 100%;
    max-width: 100%;
    border-radius: 0;
    border: none;
    margin: 0;
  }
}

/* ===== 35. Focus visible ===== */
:focus-visible {
  outline: 2px solid var(--color-primary-500);
  outline-offset: 2px;
}
