/* ============================================================
   主题包 —— 五套皮肤，通过 <html data-theme="..."> 切换
   基础变量定义在 style.css 的 :root（默认 = 科技·深空）
   ============================================================ */

/* ----------------------------------------------------------------
   1) 科技 · 深空控制台（默认）
   style.css 的 :root 已经是这套，这里只补「深色组件覆盖」——
   因为 app.css 里那些小部件（标签/任务行/日历/胶囊）本来是浅色写的。
   ---------------------------------------------------------------- */
html[data-theme="console"] .tag { background: var(--soft-bg); color: var(--soft-fg); }
html[data-theme="console"] .tag-red    { background: var(--err-bg); color: var(--err-fg); }
html[data-theme="console"] .tag-orange { background: var(--warn-bg); color: var(--warn-fg); }
html[data-theme="console"] .tag-green  { background: var(--ok-bg); color: var(--ok-fg); }
html[data-theme="console"] .tag-blue   { background: var(--info-bg); color: var(--info-fg); }
html[data-theme="console"] .tag-off    { background: var(--off-bg); color: var(--off-fg); }
html[data-theme="console"] .tx-mid  { color: var(--c-main); }
html[data-theme="console"] .tx-zero { color: var(--off-fg); }
html[data-theme="console"] .pb { background: rgba(148,163,184,.12); }
html[data-theme="console"] .pb-fill { background:#475569; }
html[data-theme="console"] .pb-fill.pb-zero { background:#334155; }
html[data-theme="console"] .pb-fill.pb-low  { background: var(--c-warn); }
html[data-theme="console"] .pb-fill.pb-mid  { background: var(--c-main); }
html[data-theme="console"] .pb-fill.pb-full { background: var(--c-ok); }
html[data-theme="console"] .task-row { background: var(--task-bg); border-color: var(--c-line); }
html[data-theme="console"] .task-row.is-done { background: var(--task-bg-done); border-color: var(--task-border-done); }
html[data-theme="console"] .task-chk { border-color:#334a66; background:#0b1524; color:transparent; }
html[data-theme="console"] .task-chk.on { background: var(--ok-bg); border-color: var(--c-ok); color: var(--ok-fg); }
html[data-theme="console"] .task-chk-na { color:#3f5670; background: rgba(148,163,184,.05); }
html[data-theme="console"] details.quick > summary { background:#0e1929; border-color: var(--c-line-2); color: var(--info-fg); }
html[data-theme="console"] details.quick[open] > summary { background: var(--info-bg); }
html[data-theme="console"] .quick-form { background:#0e1929; border-color: var(--c-line-2); box-shadow: var(--card-shadow); }
html[data-theme="console"] .th-today { background: var(--info-bg); }
html[data-theme="console"] .td-today { background: rgba(56,189,248,.05); }
html[data-theme="console"] .cal-cell { background:#0d1524; }
html[data-theme="console"] a.cal-cell:hover { border-color: var(--c-main); }
html[data-theme="console"] .cal-future { background: rgba(148,163,184,.035); }
html[data-theme="console"] .cal-future .cal-d { color:#3f5670; }
html[data-theme="console"] .cal-cell.lv0 { background: var(--cal-l0); }
html[data-theme="console"] .cal-cell.lv1 { background: var(--cal-l1); }
html[data-theme="console"] .cal-cell.lv2 { background: var(--cal-l2); }
html[data-theme="console"] .cal-cell.lv3 { background: var(--cal-l3); }
html[data-theme="console"] .cal-cell.lv3 .cal-d,
html[data-theme="console"] .cal-cell.lv3 .cal-s { color: rgba(232,255,246,.92); }
html[data-theme="console"] .cal-cell.lv4 { background: var(--cal-l4); color: var(--cal-l4-fg); }
html[data-theme="console"] .cal-cell.lv4 .cal-d,
html[data-theme="console"] .cal-cell.lv4 .cal-s { color: var(--cal-l4-fg); opacity:.85; }
html[data-theme="console"] .cal-cell.lv4 .cal-v { color: var(--cal-l4-fg); }
html[data-theme="console"] .cal-today { border-color: var(--c-main); box-shadow: 0 0 0 2px var(--c-main-l); }
html[data-theme="console"] .wk-card { background:#0d1524; }
html[data-theme="console"] .wk-card.is-done { background: var(--task-bg-done); border-color: var(--task-border-done); }
html[data-theme="console"] .wk-chip { background: var(--soft-bg); color: var(--soft-fg); }
html[data-theme="console"] .wk-chip.on { background: var(--ok-bg); color: var(--ok-fg); }
html[data-theme="console"] .wk-x { color:#64748b; }
html[data-theme="console"] .wk-x:hover { color: var(--c-err); }
html[data-theme="console"] table.list tr.row-sub > td { background: rgba(148,163,184,.04); }
html[data-theme="console"] tr.row-warn > td { background: var(--warn-bg); }
html[data-theme="console"] .chip { background:#0e1929; border-color: var(--c-line-2); color: var(--soft-fg); }
html[data-theme="console"] .chip.on { background: var(--ok-bg); border-color: var(--c-ok); color: var(--ok-fg); }
html[data-theme="console"] .task-skip { border-color:#334a66; background:#0b1524; color:#475f7a; }
html[data-theme="console"] .task-row.is-skip { background: rgba(148,163,184,.035); }
html[data-theme="console"] .task-row.is-skip .task-name { color:#64748b; }
html[data-theme="console"] .wk-card.is-skip { background: rgba(148,163,184,.035); }
html[data-theme="console"] .qa-chip { background: var(--info-bg); border-color: var(--c-line-2); color: var(--info-fg); }
html[data-theme="console"] .qa-x { color:#64748b; }
html[data-theme="console"] .kw-chip { border-color: var(--c-line-2); }
html[data-theme="console"] .kw-chip a { color: var(--info-fg); }
html[data-theme="console"] .kw-x { color:#64748b; }
html[data-theme="console"] .import-form input[type=file] { background: var(--input-bg); border:1px solid var(--c-line-2); border-radius:8px; color: var(--c-sub); }
html[data-theme="console"] .code-area { background: var(--code-bg); border-color: var(--c-line-2); color:#cfe0f2; }
html[data-theme="console"] .fuse-demo { background: var(--info-bg); border-color: var(--c-line-2); }
html[data-theme="console"] .fuse-table b { color: var(--info-fg); }
html[data-theme="console"] .fuse-table td:nth-child(2) { color: #8fa3bb; }

/* ----------------------------------------------------------------
   2) 科技 · 极光（亮色科技）
   ---------------------------------------------------------------- */
html[data-theme="aurora"] {
    --c-bg: #f5f8ff; --c-bg-2: #eef3fb;
    --c-surface: #ffffff; --c-surface-2: #ffffff; --c-surface-3: #f3f6fc;
    --c-line: #e3e9f4; --c-line-2: #cbd6ea;
    --c-hairline: rgba(15, 40, 80, .08);
    --c-txt: #16233c; --c-txt-2: #34435f; --c-sub: #6b7b94;
    --c-main: #2563eb; --c-main-d: #1d4ed8; --c-main-l: rgba(37, 99, 235, .10);
    --c-accent: #7c3aed;
    --c-ok: #16a34a; --c-warn: #d97706; --c-err: #dc2626;
    --ok-bg: #e8f7ef; --ok-fg: #15803d;
    --warn-bg: #fdf3e2; --warn-fg: #b45309;
    --err-bg: #fdeaea; --err-fg: #b91c1c;
    --info-bg: #e7f0fe; --info-fg: #1e40af;
    --off-bg: #f1f4f9; --off-fg: #7d8aa0;
    --soft-bg: #f1f4f9; --soft-fg: #5a6a82;
    --body-grad: radial-gradient(900px 520px at 12% -10%, rgba(37,99,235,.08), transparent 60%), radial-gradient(760px 460px at 92% 4%, rgba(124,58,237,.06), transparent 60%);
    --grid-line: rgba(37, 99, 235, .05);
    --card-grad: linear-gradient(180deg, #ffffff, #fbfdff);
    --card-accent: linear-gradient(90deg, rgba(37,99,235,.5), rgba(37,99,235,0) 60%);
    --card-shadow: 0 12px 30px rgba(22, 35, 60, .08);
    --stat-accent: linear-gradient(90deg, rgba(37,99,235,.9), rgba(37,99,235,0));
    --brand-grad: linear-gradient(135deg, #2563eb, #7c3aed);
    --brand-glow: 0 4px 14px rgba(37, 99, 235, .25);
    --btn-fg: #ffffff; --btn-grad: linear-gradient(180deg, #3b82f6, #2563eb);
    --btn-shadow: 0 6px 16px rgba(37, 99, 235, .22);
    --btn-ghost-bg: #ffffff;
    --nav-on-bg: #e7f0fe; --nav-on-fg: #1d4ed8;
    --input-bg: #ffffff; --input-bg-focus: #ffffff; --code-bg: #f6f9ff;
    --task-bg: linear-gradient(180deg, #ffffff, #fbfdff);
    --task-bg-done: #f0fbf5; --task-border-done: #c5ecdb;
    --cal-l0: #f5f8fc; --cal-l1: #e7f8ef; --cal-l2: #bdecd6; --cal-l3: #7edcb0; --cal-l4: #34b57f; --cal-l4-fg: #ffffff;
    --heading-font: inherit;
}

/* ----------------------------------------------------------------
   3) 轻奢 · 鎏金
   ---------------------------------------------------------------- */
html[data-theme="luxury"] {
    --c-bg: #f7f3ea; --c-bg-2: #f1ebdf;
    --c-surface: #fffdf8; --c-surface-2: #fffdf8; --c-surface-3: #f6efe2;
    --c-line: #e8dfcc; --c-line-2: #d9c9a5;
    --c-hairline: rgba(120, 90, 40, .12);
    --c-txt: #2b2519; --c-txt-2: #4a4232; --c-sub: #8a7c60;
    --c-main: #b78a3c; --c-main-d: #9c7430; --c-main-l: rgba(183, 138, 60, .12);
    --c-accent: #8a6d3b;
    --c-ok: #5f8a4a; --c-warn: #c08a2e; --c-err: #b4554a;
    --ok-bg: #eef3e8; --ok-fg: #4c6f3a;
    --warn-bg: #f8ecd8; --warn-fg: #9a6a1f;
    --err-bg: #f8e7e4; --err-fg: #9c4438;
    --info-bg: #f0e9d8; --info-fg: #7d5a22;
    --off-bg: #f1ebe0; --off-fg: #9a8f7a;
    --soft-bg: #f1ebe0; --soft-fg: #6f644c;
    --body-grad: radial-gradient(900px 520px at 12% -10%, rgba(183,138,60,.08), transparent 62%);
    --grid-line: transparent;
    --card-grad: linear-gradient(180deg, #fffdf8, #fbf7ee);
    --card-accent: linear-gradient(90deg, rgba(183,138,60,.7), rgba(183,138,60,0) 60%);
    --card-shadow: 0 14px 34px rgba(80, 60, 30, .10);
    --stat-accent: linear-gradient(90deg, rgba(183,138,60,.9), rgba(183,138,60,0));
    --brand-grad: linear-gradient(135deg, #c9a35a, #9c7430);
    --brand-glow: 0 3px 12px rgba(183, 138, 60, .28);
    --btn-fg: #fffdf8; --btn-grad: linear-gradient(180deg, #c9a35a, #a67f3a);
    --btn-shadow: 0 6px 16px rgba(150, 110, 45, .22);
    --btn-ghost-bg: #fffdf8;
    --nav-on-bg: #f2e7d0; --nav-on-fg: #6f4f1c;
    --input-bg: #fffdf8; --input-bg-focus: #fffdf8; --code-bg: #f8f3e8;
    --task-bg: linear-gradient(180deg, #fffdf8, #fbf7ee);
    --task-bg-done: #f1f6e9; --task-border-done: #d7e4c6;
    --cal-l0: #f4efe4; --cal-l1: #eef4e5; --cal-l2: #d9e7c3; --cal-l3: #b7d391; --cal-l4: #7fa05a; --cal-l4-fg: #ffffff;
    --heading-font: Georgia, "Times New Roman", "Songti SC", serif;
}

/* ----------------------------------------------------------------
   4) 老钱 · 墨绿
   ---------------------------------------------------------------- */
html[data-theme="oldmoney"] {
    --c-bg: #f4f1ea; --c-bg-2: #ece8de;
    --c-surface: #fdfcf8; --c-surface-2: #fdfcf8; --c-surface-3: #f2eee3;
    --c-line: #e0d9c8; --c-line-2: #ccc0a6;
    --c-hairline: rgba(30, 60, 40, .10);
    --c-txt: #232820; --c-txt-2: #3d4438; --c-sub: #7d8374;
    --c-main: #1f4a35; --c-main-d: #16372a; --c-main-l: rgba(31, 74, 53, .10);
    --c-accent: #7a3b2e;
    --c-ok: #3d6b4f; --c-warn: #a06a2b; --c-err: #9c4438;
    --ok-bg: #e7efe8; --ok-fg: #315c42;
    --warn-bg: #f4ead7; --warn-fg: #85571e;
    --err-bg: #f5e6e2; --err-fg: #8c3c30;
    --info-bg: #e5ebe4; --info-fg: #2c4d3b;
    --off-bg: #ece9e0; --off-fg: #938b79;
    --soft-bg: #ece9e0; --soft-fg: #6d6a5c;
    --body-grad: radial-gradient(900px 520px at 12% -10%, rgba(31,74,53,.06), transparent 62%);
    --grid-line: transparent;
    --card-grad: linear-gradient(180deg, #fdfcf8, #f8f5ed);
    --card-accent: linear-gradient(90deg, rgba(31,74,53,.6), rgba(31,74,53,0) 60%);
    --card-shadow: 0 12px 30px rgba(40, 45, 35, .09);
    --stat-accent: linear-gradient(90deg, rgba(31,74,53,.85), rgba(31,74,53,0));
    --brand-grad: linear-gradient(135deg, #26573f, #16372a);
    --brand-glow: 0 3px 12px rgba(31, 74, 53, .26);
    --btn-fg: #fdfcf8; --btn-grad: linear-gradient(180deg, #26573f, #16372a);
    --btn-shadow: 0 6px 16px rgba(22, 55, 42, .24);
    --btn-ghost-bg: #fdfcf8;
    --nav-on-bg: #e2e9df; --nav-on-fg: #1f4a35;
    --input-bg: #fdfcf8; --input-bg-focus: #fdfcf8; --code-bg: #f6f3ea;
    --task-bg: linear-gradient(180deg, #fdfcf8, #f8f5ed);
    --task-bg-done: #e9efe5; --task-border-done: #cddcc8;
    --cal-l0: #f2efe6; --cal-l1: #e5eddf; --cal-l2: #c8dcc2; --cal-l3: #9fc29b; --cal-l4: #5d8a63; --cal-l4-fg: #ffffff;
    --heading-font: Georgia, "Times New Roman", "Songti SC", serif;
}

/* ----------------------------------------------------------------
   5) 克制 · 纸感（去 AI 味：极简、无渐变、无发光）
   ---------------------------------------------------------------- */
html[data-theme="paper"] {
    --c-bg: #fcfcf9; --c-bg-2: #f7f7f3;
    --c-surface: #ffffff; --c-surface-2: #ffffff; --c-surface-3: #f4f4f0;
    --c-line: #e6e6e1; --c-line-2: #d4d4cd;
    --c-hairline: rgba(0, 0, 0, .07);
    --c-txt: #1a1a1a; --c-txt-2: #3a3a3a; --c-sub: #6f6f6a;
    --c-main: #0f6b5c; --c-main-d: #0b554a; --c-main-l: rgba(15, 107, 92, .08);
    --c-accent: #0f6b5c;
    --c-ok: #237a46; --c-warn: #9a6a1f; --c-err: #b3372e;
    --ok-bg: #ecf4ee; --ok-fg: #1f6a3d;
    --warn-bg: #f7efe2; --warn-fg: #85571e;
    --err-bg: #f7e9e7; --err-fg: #a12e26;
    --info-bg: #ecf2f1; --info-fg: #0b554a;
    --off-bg: #f2f2ee; --off-fg: #8a8a83;
    --soft-bg: #f2f2ee; --soft-fg: #5f5f5a;
    --body-grad: none;
    --grid-line: transparent;
    --card-grad: #ffffff;
    --card-accent: none;
    --card-shadow: none;
    --stat-accent: var(--c-main);
    --brand-grad: #1a1a1a;
    --brand-glow: none;
    --btn-fg: #ffffff; --btn-grad: #1a1a1a;
    --btn-shadow: none;
    --btn-ghost-bg: #ffffff;
    --nav-on-bg: #eceae4; --nav-on-fg: #0b554a;
    --input-bg: #ffffff; --input-bg-focus: #ffffff; --code-bg: #fafaf7;
    --task-bg: #ffffff;
    --task-bg-done: #f0f6f1; --task-border-done: #d5e4d9;
    --cal-l0: #f5f5f1; --cal-l1: #e9f2ec; --cal-l2: #cfe3d6; --cal-l3: #a3ccb2; --cal-l4: #5a9a74; --cal-l4-fg: #ffffff;
    --heading-font: inherit;
}

/* 浅色主题里，paper/极光 的卡片顶线想去掉就用 --card-accent:none；这里再补一层保证 paper 确实无装饰 */
html[data-theme="paper"] .card::before { display: none; }
html[data-theme="paper"] .lc-form::before { display: none; }
html[data-theme="paper"] .page-head h2::before { box-shadow: none; }
html[data-theme="paper"] .stat::after { box-shadow: none; }
html[data-theme="paper"] .card > h3::before { box-shadow: none; }
