/* EdgeFT · 全局设计令牌（微信扁平风）
   灰底 + 白卡片 + 发丝线分层：不用阴影、不用毛玻璃、不用渐变。
   色板 / 圆角 / 间距 / 动效集中定义，组件禁止硬编码。
   安全区变量 --sat/--sab 一并在此（参与布局计算）。 */
:root {
  /* 安全区 */
  --sat: env(safe-area-inset-top, 0px);
  --sab: env(safe-area-inset-bottom, 0px);

  /* 微信扁平色板 */
  --ios-bg: #f2f2f7;            /* 页面背景灰 */
  --ios-label: #1c1c1e;         /* 主文字 */
  --ios-secondary-label: #8e8e93; /* 次文字 */
  --ios-tertiary-label: #aeaeb2;  /* 弱文字 */
  --ios-separator: #e5e5ea;     /* 发丝线（分隔线） */
  --ios-fill: rgba(120, 120, 128, 0.1); /* 填充底 / 按压底 */
  --ios-blue: #0a84ff;          /* 主色（保留 iOS 蓝，文件场景不用绿） */
  --ios-bubble: #0b93f6;        /* 己方气泡蓝（保留，历史消息/其他场景兜底） */
  --wechat-green: #95ec69;      /* 微信绿（聊天己方气泡底） */
  --ios-green: #34c759;
  --ios-orange: #ff9500;
  --ios-red: #ff3b30;
  --ios-pink: #ff2d55;

  /* 文字与表面别名（组件内引用这些语义名） */
  --text: var(--ios-label);
  --muted: var(--ios-secondary-label);
  --timestamp: var(--ios-tertiary-label);
  --text-on-primary: #ffffff;
  --bg: var(--ios-bg);
  --panel: #ffffff;
  --border: var(--ios-separator);

  /* 圆角（微信扁平）：卡片 12 / 按钮 10 / 输入框胶囊 20 / 气泡 18（发言角 4） */
  --radius-control: 10px;   /* 按钮 */
  --radius-card: 12px;      /* 卡片 / 列表项 */
  --radius-group: 12px;     /* 分组 / 浮层 */
  --radius-input: 20px;     /* 输入框（胶囊） */
  --radius-pill: 999px;

  /* 气泡圆角（发言角 + 连续收敛） */
  --radius-bubble: 18px;
  --radius-bubble-tail: 4px;
  --radius-bubble-group: 10px;

  /* 间距体系（4pt 栅格，WeUI 风格） */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;

  /* 字号体系（WeUI 层级：标题 17 / 正文 16 / 辅助 13 / 弱 11） */
  --font-title: 17px;
  --font-body: 16px;
  --font-sub: 13px;
  --font-caption: 13px;
  --font-caption-2: 12px;
  --font-micro: 11px;

  /* 语义浅底（图标底色 / 选中态 / 失败态，统一引用） */
  --ios-blue-soft: rgba(10, 132, 255, 0.12);
  --ios-green-soft: rgba(52, 199, 89, 0.14);
  --ios-green-soft-strong: rgba(52, 199, 89, 0.30);
  --ios-orange-soft: rgba(255, 149, 0, 0.14);
  --ios-red-soft: rgba(255, 59, 48, 0.12);
  --ios-white-soft: rgba(255, 255, 255, 0.6);  /* 下载完成覆盖层白底（与列表 .dl-mark 同套） */

  /* 动效：弹簧近似曲线 + 分级时长 */
  --ease-spring: cubic-bezier(0.32, 0.72, 0, 1);
  --ease-out: cubic-bezier(0.25, 0.1, 0.25, 1);
  --dur-fast: 0.15s;
  --dur-med: 0.3s;
  --dur-sheet: 0.3s;
  /* 左滑删除专用动效 */
  --ease-spring-pop: cubic-bezier(0.34, 1.56, 0.64, 1); /* 确认框弹出，带过冲 */
  --ease-out-fast: cubic-bezier(0.25, 0.46, 0.45, 0.94); /* 删除文字状态复位 */
  --dur-pop: 0.3s;       /* 确认框滑入 300ms */
  --dur-pop-out: 0.25s;  /* 确认框滑出 250ms（快出慢收） */
  --dur-fade: 0.25s;     /* 遮罩淡入淡出 250ms */
  --dur-text-reset: 0.25s;
  --dur-rollback: 0.3s; /* 白色松手回弹，与底部确认弹窗衔接 */
  /* 左滑删除猛冲弹簧物理参数（JS 读取） */
  --spring-stiffness: 850;
  --spring-damping: 125;
  --spring-mass: 10;
  --spring-text-stiffness: 850;
}
