/* 暗色主题 - 语义化颜色令牌 */
[data-theme="dark"] {
  --bg-base: #050505;
  --bg-primary: #0A0A0A;
  --bg-secondary: #121212;
  --bg-surface: #141414;
  --bg-elevated: #1A1A1A;
  --bg-deep: #0F0F0F;
  --bg-sunken: #080808;
  --bg-hover: #27272a;
  --border-primary: #27272a;
  --border-secondary: #3f3f46;
  --border-subtle: #18181b;
  --text-primary: #ffffff;
  --text-secondary: #d4d4d8;
  --text-tertiary: #a1a1aa;
  --text-muted: #71717a;
  --scrollbar-track: #0a0a0a;
  --scrollbar-thumb: #333333;
  --scrollbar-thumb-hover: #555555;
  --glass-bg: rgba(20, 20, 20, 0.6);
  --glass-border: rgba(255, 255, 255, 0.08);
  --nav-active-bg: rgba(39, 39, 42, 0.5);
  --nav-hover-bg: rgba(39, 39, 42, 0.3);
  --btn-primary-bg: #ffffff;
  --btn-primary-text: #000000;
  --btn-primary-hover: #e4e4e7;
  --btn-primary-shadow: rgba(255, 255, 255, 0.05);
  --btn-selected-bg: #f4f4f5;
  --btn-selected-border: #f4f4f5;
  --overlay-heavy: rgba(0, 0, 0, 0.8);
  --overlay-medium: rgba(0, 0, 0, 0.6);
  --overlay-light: rgba(0, 0, 0, 0.3);
  --overlay-full: rgba(0, 0, 0, 0.95);
  --overlay-border: rgba(255, 255, 255, 0.1);
  --selection-bg: rgba(255, 255, 255, 0.2);
  /* 主题强调色 (accent) */
  --accent: #818cf8;
  --accent-hover: #6366f1;
  --accent-muted: #6366f1;
  --accent-bg: rgba(99, 102, 241, 0.15);
  --accent-bg-hover: rgba(99, 102, 241, 0.25);
  --accent-border: rgba(99, 102, 241, 0.3);
  --accent-text: #a5b4fc;
  --accent-text-hover: #c7d2fe;
  --accent-on: #ffffff;
  --accent-shadow: rgba(99, 102, 241, 0.2);
  /* 开关/Toggle */
  --toggle-active: #818cf8;
  --toggle-inactive: var(--border-secondary);
  --toggle-knob: #ffffff;
  /* 状态色: 成功 */
  --success: #34d399;
  --success-text: #6ee7b7;
  --success-bg: rgba(52, 211, 153, 0.1);
  --success-border: rgba(52, 211, 153, 0.3);
  /* 状态色: 错误/危险 */
  --error: #f87171;
  --error-text: #fca5a5;
  --error-bg: rgba(248, 113, 113, 0.1);
  --error-border: rgba(248, 113, 113, 0.3);
  --error-hover-bg: rgba(127, 29, 29, 0.2);
  --error-hover-bg-strong: rgba(127, 29, 29, 0.4);
  /* 状态色: 警告 */
  --warning: #fbbf24;
  --warning-text: #fcd34d;
  --warning-bg: rgba(251, 191, 36, 0.1);
  --warning-border: rgba(251, 191, 36, 0.3);
  /* 状态色: 信息 */
  --info: #60a5fa;
  --info-text: #93c5fd;
  --info-bg: rgba(96, 165, 250, 0.1);
  --info-border: rgba(96, 165, 250, 0.3);
  /* 辅助标记色: purple (视频提示词) */
  --tag-purple: #c084fc;
  --tag-purple-bg: rgba(192, 132, 252, 0.1);
  --tag-purple-border: rgba(192, 132, 252, 0.3);
  --tag-purple-hover: rgba(192, 132, 252, 0.1);
  /* Dashboard / Projects Database */
  --dashboard-bg: linear-gradient(180deg, #08090f 0%, #0c0f18 46%, #111421 100%);
  --dashboard-bg-overlay:
    radial-gradient(circle at top left, rgba(109, 73, 255, 0.28), transparent 30%),
    radial-gradient(circle at 80% 14%, rgba(34, 211, 238, 0.16), transparent 24%),
    radial-gradient(circle at 50% 100%, rgba(99, 102, 241, 0.12), transparent 34%);
  --dashboard-panel-bg: rgba(13, 15, 24, 0.54);
  --dashboard-panel-border: rgba(124, 137, 182, 0.08);
  --dashboard-panel-shadow: 0 36px 90px rgba(0, 0, 0, 0.3);
  --dashboard-glow-1: rgba(109, 73, 255, 0.26);
  --dashboard-glow-2: rgba(34, 211, 238, 0.14);
  --dashboard-title: #f5f7ff;
  --dashboard-subtitle: rgba(213, 220, 255, 0.72);
  --dashboard-pill-bg: rgba(255, 255, 255, 0.08);
  --dashboard-pill-border: rgba(255, 255, 255, 0.04);
  --dashboard-pill-text: rgba(235, 240, 255, 0.86);
  --dashboard-pill-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
  --dashboard-pill-hover-bg: rgba(255, 255, 255, 0.16);
  --dashboard-pill-hover-border: rgba(255, 255, 255, 0.12);
  --dashboard-brand-subtle: rgba(196, 205, 236, 0.56);
  --dashboard-action-bg: rgba(255, 255, 255, 0.06);
  --dashboard-action-hover-bg: rgba(255, 255, 255, 0.14);
  --dashboard-action-text: rgba(235, 240, 255, 0.82);
  --dashboard-search-bg: rgba(8, 12, 24, 0.72);
  --dashboard-search-border: rgba(124, 137, 182, 0.18);
  --dashboard-search-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
  --dashboard-hero-note-bg: rgba(255, 255, 255, 0.05);
  --dashboard-hero-note-border: rgba(255, 255, 255, 0.08);
  --dashboard-hero-note-text: rgba(218, 225, 255, 0.76);
  --landing-bg: #050913;
  --landing-bg-overlay:
    radial-gradient(circle at top, rgba(34, 211, 238, 0.2), transparent 28%),
    radial-gradient(circle at 84% 16%, rgba(56, 189, 248, 0.14), transparent 22%),
    linear-gradient(180deg, #060b16 0%, #081325 46%, #0b1b33 100%);
  --landing-grid: rgba(255, 255, 255, 0.04);
  --landing-nav-bg: rgba(6, 13, 28, 0.72);
  --landing-nav-border: rgba(122, 141, 180, 0.18);
  --landing-nav-shadow: 0 24px 60px rgba(0, 0, 0, 0.34);
  --landing-panel-bg: rgba(9, 17, 32, 0.7);
  --landing-panel-strong: rgba(11, 20, 38, 0.82);
  --landing-panel-border: rgba(122, 141, 180, 0.14);
  --landing-card-bg: linear-gradient(180deg, rgba(8, 14, 28, 0.92), rgba(11, 18, 35, 0.88));
  --landing-card-hover: rgba(12, 21, 40, 0.94);
  --landing-card-shadow: 0 28px 70px rgba(0, 0, 0, 0.32);
  --landing-title: #f8fbff;
  --landing-subtitle: rgba(233, 240, 255, 0.8);
  --landing-muted: rgba(210, 220, 242, 0.66);
  --landing-kicker: #67e8f9;
  --landing-primary-bg: linear-gradient(90deg, #72f58f 0%, #28d7ef 100%);
  --landing-primary-shadow: 0 24px 54px rgba(40, 215, 239, 0.28);
  --landing-primary-text: #081521;
  --landing-secondary-bg: rgba(255, 255, 255, 0.04);
  --landing-secondary-border: rgba(103, 232, 249, 0.28);
  --landing-secondary-text: #f4fbff;
  --landing-chip-bg: rgba(255, 255, 255, 0.06);
  --landing-chip-border: rgba(255, 255, 255, 0.08);
  --landing-login-surface: rgba(31, 35, 46, 0.96);
  --landing-login-panel: rgba(37, 42, 55, 0.96);
  --landing-login-input: #0b0d14;
  --landing-login-input-border: rgba(129, 140, 163, 0.32);
  --landing-login-note: rgba(214, 222, 242, 0.72);
  --landing-login-qr-bg: rgba(18, 24, 38, 0.96);
  --landing-login-qr-placeholder: rgba(191, 201, 224, 0.72);
  --landing-login-modal-bg: rgba(22, 26, 36, 0.96);
  --landing-login-title: #f5f7fb;
  --landing-login-muted-text: rgba(191, 201, 224, 0.72);
  --landing-login-line: rgba(129, 140, 163, 0.24);
  --landing-login-accent: #7c4dff;
  --landing-login-accent-bg: linear-gradient(90deg, #6f3ff5 0%, #8c4cff 100%);
  --landing-login-accent-text: #ffffff;
  --landing-login-hint-bg: rgba(50, 56, 74, 0.96);
  --landing-hero-overlay:
    linear-gradient(180deg, rgba(5, 7, 12, 0.38) 0%, rgba(5, 7, 12, 0.52) 40%, rgba(5, 7, 12, 0.76) 100%),
    radial-gradient(circle at 50% 48%, rgba(255, 255, 255, 0.06), transparent 30%);
  --landing-hero-vignette: inset 0 0 0 1px rgba(255, 255, 255, 0.06);
  --landing-hero-float-bg: rgba(40, 42, 52, 0.58);
  --landing-hero-float-border: rgba(255, 255, 255, 0.12);
  --landing-hero-float-icon: rgba(255, 255, 255, 0.92);
  --landing-hero-float-text: rgba(255, 255, 255, 0.88);
  --landing-hero-float-muted: rgba(232, 236, 245, 0.78);
  --landing-hero-sidebar-bg: rgba(38, 40, 49, 0.58);
  --landing-hero-sidebar-border: rgba(255, 255, 255, 0.12);
  --landing-hero-sidebar-item: rgba(255, 255, 255, 0.74);
  --landing-hero-sidebar-item-active: rgba(255, 255, 255, 0.94);
  --landing-hero-sidebar-item-bg: rgba(255, 255, 255, 0.06);
  --landing-hero-title: #ffffff;
  --landing-hero-subtitle: rgba(255, 255, 255, 0.88);
  --landing-hero-button-bg: linear-gradient(90deg, #8d3dff 0%, #bc47ff 100%);
  --landing-hero-button-shadow: 0 22px 54px rgba(150, 72, 255, 0.34);
  --landing-hero-button-text: #ffffff;
  /* 项目列表页专用 */
  --project-shell-border: rgba(124, 137, 182, 0.08);
  --project-card-bg: linear-gradient(180deg, rgba(14, 19, 36, 0.92), rgba(11, 15, 29, 0.88));
  --project-card-border: transparent;
  --project-card-hover: transparent;
  --project-cover-fallback: #596375;
  --project-stat-bg: rgba(255, 255, 255, 0.04);
  --project-cta-bg: linear-gradient(135deg, #7257ff 0%, #3f8cff 100%);
  --project-cta-text: #D8E2F2;
  --project-cta-hover: linear-gradient(135deg, #664bf2 0%, #377fe8 100%);
  --project-card-shadow: 0 18px 44px rgba(0, 0, 0, 0.24);
  --project-card-shadow-hover: 0 26px 62px rgba(11, 17, 35, 0.42);
  --project-card-overlay: linear-gradient(180deg, rgba(2, 6, 23, 0.02) 0%, rgba(2, 6, 23, 0.52) 100%);
  --project-card-topbar-bg: linear-gradient(180deg, rgba(2, 6, 23, 0.66), rgba(2, 6, 23, 0));
  --project-stat-border: transparent;
  --project-stat-chip-bg: rgba(255, 255, 255, 0.05);
  --project-stat-chip-text: rgba(228, 235, 255, 0.78);
  --project-cta-shadow: 0 18px 40px rgba(80, 98, 255, 0.32);
  --project-stat-surface: rgba(255, 255, 255, 0.04);
  --project-stat-surface-hover: rgba(255, 255, 255, 0.06);
  --project-meta-text: rgba(214, 220, 244, 0.62);
  --project-cover-bottom: linear-gradient(180deg, rgba(2, 6, 23, 0) 0%, rgba(2, 6, 23, 0.42) 100%);
  --dashboard-dropdown-bg: rgba(22, 24, 34, 0.92);
  --dashboard-dropdown-border: rgba(119, 129, 170, 0.22);
  --dashboard-dropdown-shadow: 0 30px 72px rgba(0, 0, 0, 0.5);
  --dashboard-dropdown-divider: rgba(255, 255, 255, 0.07);
  --dashboard-dropdown-card-bg: linear-gradient(135deg, rgba(92, 76, 132, 0.36), rgba(83, 102, 150, 0.2));
  --dashboard-dropdown-card-border: rgba(255, 255, 255, 0.06);
  --dashboard-dropdown-card-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
  --dashboard-dropdown-upgrade-bg: #ffffff;
  --dashboard-dropdown-upgrade-text: #191919;
  --dashboard-dropdown-select-bg: rgba(11, 16, 28, 0.84);
  --dashboard-dropdown-select-border: rgba(119, 129, 170, 0.18);
  --dashboard-dropdown-item-hover: rgba(255, 255, 255, 0.04);
  --dashboard-dropdown-icon-bg: rgba(255, 255, 255, 0.05);
  --dashboard-dropdown-icon-text: rgba(232, 238, 255, 0.78);
  --dashboard-avatar-bg: linear-gradient(135deg, #6d28d9, #9333ea);
  --dashboard-avatar-text: #ffffff;
  --dashboard-avatar-border: rgba(255, 255, 255, 0.08);
  --project-menu-bg: rgba(14, 18, 30, 0.94);
  --project-menu-border: rgba(123, 137, 186, 0.18);
  --project-menu-shadow: 0 24px 60px rgba(0, 0, 0, 0.44);
  --project-menu-item-hover: rgba(255, 255, 255, 0.05);
  --project-menu-icon-bg: rgba(255, 255, 255, 0.06);
  --project-menu-icon-text: rgba(232, 238, 255, 0.82);
  --project-menu-danger-icon-bg: rgba(127, 29, 29, 0.3);
  --project-menu-trigger-bg: rgba(255, 255, 255, 0.02);
  --project-menu-trigger-hover: rgba(255, 255, 255, 0.06);
  --project-menu-trigger-border: rgba(123, 137, 186, 0.16);
  --select-bg: #080808;
  --select-bg-hover: #080808;
  --select-border: #27272a;
  --select-border-hover: #3f3f46;
  --select-focus-border: #3f3f46;
  --select-focus-ring: rgba(63, 63, 70, 0.26);
  --select-icon: #8ea6c5;
  --select-panel-bg: rgba(13, 21, 31, 0.98);
  --select-panel-border: rgba(61, 82, 109, 0.95);
  --select-panel-shadow: 0 26px 64px rgba(0, 0, 0, 0.45);
  --select-option-hover-bg: rgba(76, 168, 255, 0.12);
  --select-option-selected-bg: linear-gradient(135deg, #2f79bc, #4ca8ff);
  --select-option-selected-text: #ffffff;
  --asset-modal-panel: rgba(44, 48, 57, 0.96);
  --asset-modal-panel-strong: rgba(31, 35, 43, 0.98);
  --asset-modal-input: #17191f;
  --asset-modal-input-hover: #1c2028;
  --asset-modal-placeholder: #6d7482;
  --asset-modal-border: #555d6a;
  --asset-modal-chip-bg: #11141a;
  --asset-modal-chip-active: #4ca8ff;
  --asset-modal-chip-active-text: #ffffff;
  --asset-modal-link: #62b3ff;
  --asset-modal-upload-bg: rgba(88, 94, 106, 0.52);
  --asset-modal-footer: #303540;
  --project-modal-surface: #1f2026;
  --project-modal-panel: #24252d;
  --project-modal-panel-alt: #2d2f38;
  --project-modal-panel-muted: #2a2c34;
  --project-modal-text: #ffffff;
  --project-modal-text-secondary: rgba(255, 255, 255, 0.72);
  --project-modal-text-muted: rgba(255, 255, 255, 0.42);
  --project-modal-overlay: rgba(0, 0, 0, 0.72);
  --project-modal-upload: #31323b;
  --project-modal-upload-dash: rgba(255, 255, 255, 0.22);
  --quick-start-modal-surface: #10131a;
  --quick-start-modal-panel: #171a23;
  --quick-start-modal-panel-alt: #1d2230;
  --quick-start-modal-border: rgba(156, 170, 196, 0.14);
  --quick-start-modal-border-strong: rgba(156, 170, 196, 0.22);
  --quick-start-modal-text: #f5f7ff;
  --quick-start-modal-text-secondary: rgba(245, 247, 255, 0.72);
  --quick-start-modal-text-muted: rgba(245, 247, 255, 0.42);
  --storyboard-shell-bg: #0a0a10;
  --storyboard-shell-glow: rgba(168, 85, 247, 0.11);
  --storyboard-panel-bg: #14151c;
  --storyboard-panel-alt: #1b1d26;
  --storyboard-panel-soft: #101118;
  --storyboard-panel-border: rgba(255, 255, 255, 0.08);
  --storyboard-panel-shadow: 0 18px 46px rgba(0, 0, 0, 0.28);
  --storyboard-toolbar-bg: #1a1c25;
  --storyboard-toolbar-hover: #242734;
  --storyboard-table-header: #231f28;
  --storyboard-row-hover: rgba(255, 255, 255, 0.03);
  --storyboard-row-active: rgba(168, 85, 247, 0.15);
  --storyboard-highlight-bg: #9333ea;
  --storyboard-highlight-border: #c026d3;
  --storyboard-highlight-text: #ffffff;
  --storyboard-outline-text: #e9d5ff;
  --storyboard-chip-bg: #251f30;
  --storyboard-chip-border: rgba(192, 38, 211, 0.24);
  --storyboard-chip-text: #f1e7ff;
  --storyboard-search-bg: #101118;
  --storyboard-footer-bg: rgba(31, 37, 45, 0.96);
  --workbench-panel-bg: linear-gradient(180deg, rgba(29, 31, 40, 0.98), rgba(20, 22, 29, 0.98));
  --workbench-panel-alt: rgba(34, 38, 49, 0.96);
  --workbench-panel-soft: rgba(24, 27, 35, 0.98);
  --workbench-panel-muted: rgba(43, 49, 63, 0.96);
  --workbench-surface-alt: rgba(29, 33, 43, 0.98);
  --workbench-surface-elevated: rgba(37, 41, 53, 0.98);
  --workbench-selection-bg: rgba(56, 46, 78, 0.92);
  --workbench-selection-border: rgba(201, 166, 255, 0.32);
  --workbench-panel-border: transparent;
  --workbench-panel-shadow: 0 22px 52px rgba(0, 0, 0, 0.3);
  --workbench-empty-tile: rgba(49, 54, 67, 0.9);
  --workbench-toolbar-bg: rgba(26, 29, 38, 0.98);
  --workbench-toolbar-hover: rgba(39, 44, 56, 0.98);
  --workbench-toolbar-border: transparent;
  --workbench-section-title: rgba(245, 247, 255, 0.96);
  --workbench-section-caption: rgba(206, 214, 232, 0.72);
  --workbench-tag-bg: rgba(35, 39, 50, 0.98);
  --workbench-tag-border: transparent;
  --storyboard-window-control-bg: rgba(27, 35, 47, 0.96);
  --storyboard-window-control-bg-hover: rgba(35, 45, 59, 0.98);
  --storyboard-window-control-border: rgba(255, 255, 255, 0.08);
  --storyboard-window-control-text: rgba(245, 245, 245, 0.9);
  --storyboard-shot-banner-bg: linear-gradient(135deg, rgba(19, 27, 39, 0.98), rgba(42, 50, 66, 0.95));
  --storyboard-shot-banner-border: rgba(255, 255, 255, 0.06);
  --storyboard-shot-banner-subtitle: rgba(245, 245, 245, 0.72);
  --storyboard-shot-banner-title: #ffffff;
  --storyboard-shot-banner-badge-bg: rgba(255, 255, 255, 0.12);
  --storyboard-shot-banner-badge-text: rgba(245, 245, 245, 0.82);
  --editor-shell-bg: #060b12;
  --editor-shell-overlay: radial-gradient(circle at top, rgba(56, 189, 248, 0.14), transparent 28%), linear-gradient(180deg, #060b12 0%, #0b1220 100%);
  --editor-panel-bg: rgba(15, 23, 36, 0.96);
  --editor-panel-muted: rgba(10, 16, 28, 0.92);
  --editor-panel-border: rgba(89, 109, 138, 0.34);
  --editor-toolbar-bg: rgba(7, 12, 22, 0.94);
  --editor-toolbar-border: rgba(110, 130, 156, 0.22);
  --editor-ruler-line: rgba(148, 163, 184, 0.18);
  --editor-grid-line: rgba(148, 163, 184, 0.1);
  --editor-playhead: #38bdf8;
  --editor-playhead-glow: rgba(56, 189, 248, 0.28);
  --editor-clip-bg: linear-gradient(180deg, rgba(30, 41, 59, 0.95), rgba(15, 23, 42, 0.98));
  --editor-clip-border: rgba(110, 130, 156, 0.42);
  --editor-clip-selected-bg: linear-gradient(180deg, #22d3ee, #0891b2);
  --editor-clip-selected-border: rgba(125, 211, 252, 0.88);
  --editor-clip-selected-text: #032430;
}
