/* 暗色主题 · 胶片暖黑 + 暖金 (v2 palette · 全局基底) */
[data-theme="dark"] {
  --bg-base: #1A1612;
  --bg-primary: #221C16;
  --bg-secondary: #2A2319;
  --bg-surface: #221C16;
  --bg-elevated: #3A3025;
  --bg-deep: #18130E;
  --bg-sunken: #18130E;
  --bg-hover: #332A1F;

  --border-primary: rgba(242, 233, 213, 0.18);
  --border-secondary: rgba(242, 233, 213, 0.18);
  --border-subtle: rgba(242, 233, 213, 0.10);

  --text-primary: #F2E9D5;
  --text-secondary: rgba(242, 233, 213, 0.82);
  --text-tertiary: rgba(242, 233, 213, 0.62);
  --text-muted: rgba(242, 233, 213, 0.38);

  --scrollbar-track: transparent;
  --scrollbar-thumb: rgba(242, 233, 213, 0.18);
  --scrollbar-thumb-hover: rgba(242, 233, 213, 0.32);

  --glass-bg: rgba(26, 22, 18, 0.72);
  --glass-border: rgba(242, 233, 213, 0.10);

  --nav-active-bg: rgba(200, 145, 74, 0.14);
  --nav-hover-bg: rgba(200, 145, 74, 0.14);

  --btn-primary-bg: #C8914A;
  --btn-primary-text: #1A1612;
  --btn-primary-hover: #D9A25C;
  --btn-download-bg: #3A3025;
  --btn-download-bg-hover: #332A1F;
  --btn-download-text: #F2E9D5;
  --btn-primary-shadow: rgba(200, 145, 74, 0.14);
  --btn-selected-bg: #3A3025;
  --btn-selected-border: rgba(242, 233, 213, 0.32);

  --overlay-heavy: rgba(0, 0, 0, 0.86);
  --overlay-medium: rgba(0, 0, 0, 0.66);
  --overlay-light: rgba(0, 0, 0, 0.40);
  --overlay-full: rgba(0, 0, 0, 0.96);
  --overlay-border: rgba(242, 233, 213, 0.18);

  --selection-bg: rgba(200, 145, 74, 0.14);

  /* 主题强调色 (accent) · 胶片暖金 · 不派生 · 所有 accent 变体共享主色 */
  --accent: #C8914A;
  --accent-hover: #D9A25C;
  --accent-muted: #C8914A;
  --accent-bg: rgba(200, 145, 74, 0.14);
  --accent-bg-hover: rgba(200, 145, 74, 0.14);
  --accent-border: rgba(200, 145, 74, 0.35);
  --accent-text: #C8914A;
  --accent-text-hover: #D9A25C;
  --accent-on: #1A1612;
  --accent-btn-text: #F2E9D5;
  --accent-shadow: rgba(200, 145, 74, 0.14);

  /* 开关/Toggle */
  --toggle-active: #C8914A;
  --toggle-inactive: rgba(242, 233, 213, 0.18);
  --toggle-knob: #F2E9D5;

  /* 状态色: 成功 · v2 mint 赭绿 */
  --success: #8DAA7E;
  --success-text: #8DAA7E;
  --success-bg: rgba(141, 170, 126, 0.14);
  --success-border: rgba(141, 170, 126, 0.35);

  /* 状态色: 错误/危险 · v2 rose 砖红 */
  --error: #B8604E;
  --error-text: #B8604E;
  --error-bg: rgba(184, 96, 78, 0.12);
  --error-border: rgba(184, 96, 78, 0.35);
  --error-hover-bg: rgba(184, 96, 78, 0.12);
  --error-hover-bg-strong: rgba(184, 96, 78, 0.12);

  /* 状态色: 警告 · v2 没单独 warning · 用主色 */
  --warning: #C8914A;
  --warning-text: #C8914A;
  --warning-bg: rgba(200, 145, 74, 0.14);
  --warning-border: rgba(200, 145, 74, 0.35);

  /* 状态色: 信息 · v2 violet 淡紫墨 */
  --info: #7A5A8A;
  --info-text: #7A5A8A;
  --info-bg: rgba(122, 90, 138, 0.14);
  --info-border: rgba(122, 90, 138, 0.35);

  /* 辅助标记色: violet (替代旧 cyan) */
  --tag-purple: #7A5A8A;
  --tag-purple-bg: rgba(122, 90, 138, 0.14);
  --tag-purple-border: rgba(122, 90, 138, 0.35);
  --tag-purple-hover: rgba(122, 90, 138, 0.14);
}

/* 首页创作对话框 · 暗色 */
[data-theme="dark"] .creation-dialog {
  background: rgba(34, 28, 22, 0.95) !important;
  border-color: rgba(242, 233, 213, 0.18);
}

[data-theme="dark"] .creation-dialog-textarea {
  background: #18130E !important;
  color: #F2E9D5 !important;
  border-color: rgba(242, 233, 213, 0.18) !important;
  caret-color: #C8914A;
}

[data-theme="dark"] .creation-dialog-textarea::placeholder {
  color: rgba(242, 233, 213, 0.38) !important;
}

[data-theme="dark"] .creation-dialog-textarea:focus {
  border-color: rgba(242, 233, 213, 0.32) !important;
  outline: none;
}

/* Agent message animations */
@keyframes fadeSlideUp {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}
@keyframes progressPulse {
  0%, 100% { width: 30%; opacity: 0.6; }
  50% { width: 80%; opacity: 1; }
}
