/* ============================================================
   大明装饰数字化平台 · 一期原型
   设计系统基础层（design tokens / reset / 通用排版）
   品牌沿用「莫迪风格」暖木色调（与现有 admin 后台一致）：
   --accent 主色  #A9825C（胡桃木铜色）   --dark 深色  #141C18（墨绿黑）
   ============================================================ */

:root {
  /* ---- 色彩 ---- */
  --bg: #F5F2ED;            /* 页面底色（暖米） */
  --card: #FBFAF7;          /* 卡片底（暖白） */
  --card-2: #FFFFFF;        /* 纯白卡片 */
  --ink: #3A352F;           /* 主文字（深棕黑） */
  --text: #7A736B;          /* 次级文字（灰棕） */
  --muted: #B5A99F;         /* 弱文字（浅灰棕） */
  --line: #E4DED4;          /* 分割线 */
  --line-soft: #EFEAE1;     /* 浅分割线 */

  --accent: #A9825C;        /* 主色（木铜） */
  --accent-2: #B99668;      /* 辅色（浅铜） */
  --accent-dark: #7A5535;   /* 主色深（hover） */
  --accent-soft: rgba(169, 130, 92, 0.14); /* 主色弱底 */

  --dark: #141C18;          /* 深色侧栏 / 页头（墨绿黑） */
  --dark-2: #1D2923;        /* 深色二级（侧栏项 hover） */
  --dark-line: rgba(232, 222, 212, 0.16);

  --ok: #7E8B6F;            /* 成功 / 正向（鼠尾草绿） */
  --ok-soft: rgba(126, 139, 111, 0.15);
  --warn: #B99668;          /* 警示（铜金） */
  --warn-soft: rgba(185, 150, 104, 0.16);
  --danger: #9A5A4A;        /* 危险（陶土红） */
  --danger-soft: rgba(154, 90, 74, 0.13);

  /* ---- 字体 ---- */
  --font: "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", -apple-system, "Segoe UI", sans-serif;
  --serif: "Songti SC", "Noto Serif SC", "STSong", Georgia, serif;

  /* ---- 圆角 / 阴影 / 动效 ---- */
  --r-sm: 8px;
  --r-md: 12px;
  --r-lg: 16px;
  --r-xl: 22px;
  --shadow-sm: 0 1px 2px rgba(58, 53, 47, 0.06), 0 1px 6px rgba(58, 53, 47, 0.05);
  --shadow-md: 0 4px 14px rgba(58, 53, 47, 0.09), 0 2px 6px rgba(58, 53, 47, 0.06);
  --shadow-lg: 0 14px 40px rgba(58, 53, 47, 0.16);
  --ease: cubic-bezier(0.4, 0, 0.2, 1);

  /* ---- 布局 ---- */
  --app-max: 480px;          /* 客户端 / 师傅端「手机壳」最大宽度 */
  --admin-side-w: 232px;     /* 管理端侧栏宽 */
  --topbar-h: 60px;          /* 管理端顶栏高 */
}

/* ---------- Reset ---------- */
* { margin: 0; padding: 0; box-sizing: border-box; }
html, body { height: 100%; }
body {
  font-family: var(--font);
  color: var(--ink);
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
  font-size: 14px;
  line-height: 1.6;
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button { font-family: inherit; cursor: pointer; border: none; background: none; color: inherit; }
input, select, textarea { font-family: inherit; font-size: 14px; color: var(--ink); }
ul, ol { list-style: none; }

/* 优雅滚动条 */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-thumb { background: #D8CFC2; border-radius: 8px; }
::-webkit-scrollbar-thumb:hover { background: #C4B8A8; }
::-webkit-scrollbar-track { background: transparent; }

/* ---------- 通用排版工具 ---------- */
.en { font-family: var(--serif); font-style: italic; color: var(--accent); }
.muted { color: var(--muted); }
.small { font-size: 12px; }
.mt-8 { margin-top: 8px; }
.mt-12 { margin-top: 12px; }
.mt-16 { margin-top: 16px; }
.mb-8 { margin-bottom: 8px; }
.flex { display: flex; align-items: center; }
.between { display: flex; align-items: center; justify-content: space-between; }
.grow { flex: 1; min-width: 0; }
.hidden { display: none !important; }
