/* ===== 主题变量 ===== */

/* 🌙 深色 */
:root {
  --app-height: 100vh;
  --keyboard-inset: 0px;
  --bg: linear-gradient(135deg, #0f0c29, #302b63, #24243e);
  --card-bg: rgba(255,255,255,0.05);
  --card-border: rgba(255,255,255,0.08);
  --text: #e2e8f0;
  --text-muted: rgba(255,255,255,0.45);
  --text-placeholder: rgba(255,255,255,0.35);
  --text-done: rgba(255,255,255,0.3);
  --input-bg: rgba(255,255,255,0.05);
  --input-border: rgba(255,255,255,0.1);
  --input-focus: #a78bfa;
  --accent: #a78bfa;
  --accent2: #60a5fa;
  --accent3: #34d399;
  --filter-active-bg: rgba(167,139,250,0.2);
  --filter-active-border: #a78bfa;
  --progress-bg: rgba(255,255,255,0.08);
  --particle-color: rgba(255,255,255,0.3);
  --toast-bg: rgba(30,27,60,0.95);
  --toast-text: #e2e8f0;
  --theme-btn-bg: rgba(255,255,255,0.08);
  --theme-btn-border: rgba(255,255,255,0.15);
  --theme-btn-text: rgba(255,255,255,0.7);
  --drag-card-bg: rgba(61,52,112,0.85);
}

[data-theme="dark"] {
  --card-bg: rgba(255,255,255,0.1);
  --card-border: rgba(255,255,255,0.18);
  --todo-gap: 11px;
  --input-m-b: 11px;
  --status-m-b: 13px;
}
/* 🌸 可爱 */
[data-theme="cute"] {
  --bg: linear-gradient(135deg, #fff0f6, #fce4f5, #f0e8ff);
  --card-bg: rgba(255,255,255,0.75);
  --card-border: rgba(255,150,200,0.2);
  --todo-gap: 8px;
  --text: #5c3d5c;
  --text-muted: rgba(180,100,160,0.6);
  --text-placeholder: rgba(180,100,160,0.4);
  --text-done: rgba(180,100,160,0.35);
  --input-bg: rgba(255,255,255,0.85);
  --input-border: rgba(255,150,200,0.3);
  --input-focus: #f472b6;
  --accent: #f472b6;
  --accent2: #c084fc;
  --accent3: #fb7185;
  --filter-active-bg: rgba(244,114,182,0.12);
  --filter-active-border: #f472b6;
  --progress-bg: rgba(244,114,182,0.1);
  --particle-color: rgba(244,114,182,0.2);
  --toast-bg: rgba(92,30,80,0.92);
  --toast-text: #fff0f6;
  --theme-btn-bg: rgba(244,114,182,0.08);
  --theme-btn-border: rgba(244,114,182,0.2);
  --theme-btn-text: rgba(180,80,140,0.8);
  --drag-card-bg: rgba(255,241,249,0.88);
}

/* ☀️ 浅色 */
[data-theme="light"] {
  --bg: linear-gradient(135deg, #f0f4ff, #e8eeff, #f5f0ff);
  --card-bg: rgba(255,255,255,0.85);
  --card-border: rgba(0,0,0,0.08);
  --todo-gap: 8px;
  --text: #1e293b;
  --text-muted: rgba(0,0,0,0.45);
  --text-placeholder: rgba(0,0,0,0.35);
  --text-done: rgba(0,0,0,0.3);
  --input-bg: rgba(255,255,255,0.9);
  --input-border: rgba(0,0,0,0.12);
  --input-focus: #7c3aed;
  --accent: #7c3aed;
  --accent2: #2563eb;
  --accent3: #059669;
  --filter-active-bg: rgba(124,58,237,0.1);
  --filter-active-border: #7c3aed;
  --progress-bg: rgba(0,0,0,0.08);
  --particle-color: rgba(124,58,237,0.12);
  --toast-bg: rgba(30,41,59,0.95);
  --toast-text: #f1f5f9;
  --theme-btn-bg: rgba(0,0,0,0.04);
  --theme-btn-border: rgba(0,0,0,0.1);
  --theme-btn-text: rgba(0,0,0,0.55);
  --drag-card-bg: rgba(255,255,255,0.89);
}

/* 🌿 自然 */
[data-theme="nature"] {
  --bg: linear-gradient(135deg, #f0faf0, #e6f5e6, #f0f8f0);
  --card-bg: rgba(255,255,255,0.8);
  --card-border: rgba(60,160,80,0.15);
  --text: #1a3a1a;
  --text-muted: rgba(40,120,60,0.55);
  --text-placeholder: rgba(40,120,60,0.35);
  --text-done: rgba(40,120,60,0.32);
  --input-bg: rgba(255,255,255,0.88);
  --input-border: rgba(60,160,80,0.2);
  --input-focus: #22c55e;
  --accent: #22c55e;
  --accent2: #16a34a;
  --accent3: #84cc16;
  --filter-active-bg: rgba(34,197,94,0.1);
  --filter-active-border: #22c55e;
  --progress-bg: rgba(34,197,94,0.1);
  --particle-color: rgba(34,197,94,0.15);
  --toast-bg: rgba(20,50,20,0.94);
  --toast-text: #f0faf0;
  --theme-btn-bg: rgba(34,197,94,0.06);
  --theme-btn-border: rgba(34,197,94,0.18);
  --theme-btn-text: rgba(22,120,50,0.8);
  --drag-card-bg: rgba(244,251,244,0.88);
}

/* 🍋 柠檬 */
[data-theme="lemon"] {
  --bg: linear-gradient(135deg, #fffde7, #fff9c4, #fffde0);
  --card-bg: rgba(255,255,255,0.78);
  --card-border: rgba(200,180,0,0.15);
  --text: #3a3000;
  --text-muted: rgba(140,120,0,0.55);
  --text-placeholder: rgba(140,120,0,0.35);
  --text-done: rgba(140,120,0,0.32);
  --input-bg: rgba(255,255,255,0.88);
  --input-border: rgba(200,180,0,0.2);
  --input-focus: #eab308;
  --accent: #eab308;
  --accent2: #f59e0b;
  --accent3: #84cc16;
  --filter-active-bg: rgba(234,179,8,0.12);
  --filter-active-border: #eab308;
  --progress-bg: rgba(234,179,8,0.1);
  --particle-color: rgba(234,179,8,0.18);
  --toast-bg: rgba(50,40,0,0.93);
  --toast-text: #fffde7;
  --theme-btn-bg: rgba(234,179,8,0.07);
  --theme-btn-border: rgba(234,179,8,0.2);
  --theme-btn-text: rgba(140,100,0,0.8);
  --drag-card-bg: rgba(255,252,225,0.88);
}

/* 📜 复古 */
[data-theme="retro"] {
  --bg: linear-gradient(135deg, #f5e6c8, #edddb0, #f0dfa8);
  --card-bg: rgba(255,248,220,0.82);
  --card-border: rgba(140,100,40,0.18);
  --text: #3a2800;
  --text-muted: rgba(120,80,20,0.55);
  --text-placeholder: rgba(120,80,20,0.38);
  --text-done: rgba(120,80,20,0.32);
  --input-bg: rgba(255,248,220,0.9);
  --input-border: rgba(140,100,40,0.22);
  --input-focus: #a0722a;
  --accent: #a0722a;
  --accent2: #c8860a;
  --accent3: #8b6914;
  --filter-active-bg: rgba(160,114,42,0.12);
  --filter-active-border: #a0722a;
  --progress-bg: rgba(160,114,42,0.1);
  --particle-color: rgba(160,114,42,0.15);
  --toast-bg: rgba(50,30,0,0.93);
  --toast-text: #f5e6c8;
  --theme-btn-bg: rgba(160,114,42,0.08);
  --theme-btn-border: rgba(160,114,42,0.2);
  --theme-btn-text: rgba(120,80,20,0.75);
  --drag-card-bg: rgba(249,242,222,0.88);
}

/* 🧊 冰川 */
[data-theme="glacier"] {
  --bg: linear-gradient(135deg, #e8f4ff, #dceeff, #eaf6ff);
  --card-bg: rgba(255,255,255,0.88);
  --card-border: rgba(56,189,248,0.25);
  --text: #0a2a4a;
  --text-muted: rgba(40,120,200,0.55);
  --text-placeholder: rgba(40,120,200,0.35);
  --text-done: rgba(40,120,200,0.32);
  --input-bg: rgba(255,255,255,0.92);
  --input-border: rgba(56,189,248,0.28);
  --input-focus: #0ea5e9;
  --accent: #0ea5e9;
  --accent2: #38bdf8;
  --accent3: #67e8f9;
  --filter-active-bg: rgba(14,165,233,0.12);
  --filter-active-border: #0ea5e9;
  --progress-bg: rgba(14,165,233,0.1);
  --particle-color: rgba(56,189,248,0.18);
  --toast-bg: rgba(10,42,74,0.95);
  --toast-text: #e8f4ff;
  --theme-btn-bg: rgba(14,165,233,0.08);
  --theme-btn-border: rgba(14,165,233,0.22);
  --theme-btn-text: rgba(10,100,180,0.8);
  --drag-card-bg: rgba(244,250,255,0.88);
}
