/* ============================================================
 * theme.css — 双主题地基(tokens 契约正本)
 * ============================================================
 * 拍板(2026-08-25 台账「全站·双主题」):默认跟随系统;toggle 三态
 * (日→夜→跟随系统,localStorage yf-theme);日光版换主色=浓缩咖啡棕。
 *
 * 结构:
 *  · 夜版 tokens 不在这里 —— 留在各页 <style> 的 :root 里(现值即夜版)。
 *  · 日光版 tokens 写两遍:手动锁日([data-theme=light])+ 系统偏好
 *    (@media prefers-color-scheme)。⚠ 两块必须逐字同步,theme-test TH-1 锁死。
 *  · 主题差异化配件(阴影/网格线/徽章描边)一律走 --yf-* 变量,
 *    组件规则只写一遍,值由 tokens 决定。
 *
 * 日光版主色 = 浓缩咖啡棕 #6b4a2b(要换色只改两处 --ignite/--plasma)。
 * 变量名沿用夜版(--black 在日光下其实是纸白)——只换值不改名,改名记技术债。
 * ============================================================ */

/* 夜版下的配件默认值(夜版靠描边分层,不用阴影;网格线用白) */
:root {
  --yf-card-shadow: none;
  --yf-grid-line: rgba(255, 255, 255, 0.015);
  --yf-accent-glow: rgba(244, 197, 66, 0.18);
  --yf-accent-border: rgba(244, 197, 66, 0.4);
  --yf-signal-border: rgba(163, 217, 119, 0.4);
  --yf-alert-border: rgba(229, 72, 77, 0.4);
  --yf-nav-bg: rgba(5, 5, 5, 0.85);
}

/* ---------- 日光版 tokens · 手动锁日 ---------- */
:root[data-theme="light"] {
  --black: #f6f4ef;
  --void: #f1eee7;
  --carbon: #ffffff;
  --steel: #eae6dd;
  --steel-2: #dfd9cd;
  --rule: rgba(26, 22, 16, 0.1);
  --rule-2: rgba(26, 22, 16, 0.2);
  --white: #171310;
  --bone: #2a251f;
  --soft: rgba(42, 37, 31, 0.66);
  --faint: rgba(42, 37, 31, 0.52);
  --ignite: #6b4a2b;
  --plasma: #543a20;
  --signal: #2e7031;
  --alert: #b3282d;
  --yf-card-shadow: 0 1px 2px rgba(26, 22, 16, 0.06), 0 4px 16px rgba(26, 22, 16, 0.06);
  --yf-grid-line: rgba(26, 22, 16, 0.03);
  --yf-accent-glow: rgba(107, 74, 43, 0.16);
  --yf-accent-border: rgba(107, 74, 43, 0.45);
  --yf-signal-border: rgba(46, 112, 49, 0.45);
  --yf-alert-border: rgba(179, 40, 45, 0.45);
  --yf-nav-bg: rgba(246, 244, 239, 0.88);
}

/* ---------- 日光版 tokens · 跟随系统(未手动锁夜) ----------
   ⚠ 与上一块逐字同步 —— theme-test TH-1 会盯 */
@media (prefers-color-scheme: light) {
  :root:not([data-theme="dark"]) {
    --black: #f6f4ef;
    --void: #f1eee7;
    --carbon: #ffffff;
    --steel: #eae6dd;
    --steel-2: #dfd9cd;
    --rule: rgba(26, 22, 16, 0.1);
    --rule-2: rgba(26, 22, 16, 0.2);
    --white: #171310;
    --bone: #2a251f;
    --soft: rgba(42, 37, 31, 0.66);
    --faint: rgba(42, 37, 31, 0.52);
    --ignite: #6b4a2b;
    --plasma: #543a20;
    --signal: #2e7031;
    --alert: #b3282d;
    --yf-card-shadow: 0 1px 2px rgba(26, 22, 16, 0.06), 0 4px 16px rgba(26, 22, 16, 0.06);
    --yf-grid-line: rgba(26, 22, 16, 0.03);
    --yf-accent-glow: rgba(107, 74, 43, 0.16);
    --yf-accent-border: rgba(107, 74, 43, 0.45);
    --yf-signal-border: rgba(46, 112, 49, 0.45);
    --yf-alert-border: rgba(179, 40, 45, 0.45);
    --yf-nav-bg: rgba(246, 244, 239, 0.88);
  }
}

/* ---------- 主题配件(只写一遍,值随 tokens 翻转) ---------- */

/* 卡片/面板:日光加浅阴影分层,夜版 none */
.pcard, .stat, .panel { box-shadow: var(--yf-card-shadow); }

/* 门户底纹网格线 */
main.portal {
  background:
    linear-gradient(var(--yf-grid-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--yf-grid-line) 1px, transparent 1px);
  background-size: 100px 100px;
}

/* 导航条底色:原页面写死了夜色半透明,这里按主题接管 */
nav.top { background: var(--yf-nav-bg); }

/* 徽章/标签描边:原页面写死了夜版 rgba,这里按主题接管 */
.order-badge.st-preparing, .order-badge.st-packing, .p-chip.warn { border-color: var(--yf-accent-border); }
.order-badge.st-delivered, .p-chip.ok { border-color: var(--yf-signal-border); }
.order-badge.st-manual { border-color: var(--yf-alert-border); }

/* 进度条当前步的光晕 */
.step.now .dot { box-shadow: 0 0 0 3px var(--yf-accent-glow); }
