/* ==========================================================================
   CityVistion Unified UI — tokens.css v1.0
   全站唯一权威设计变量。任何站点/页面只允许引用本文件定义的值，
   不再各自声明色板。改动此处即全站生效。
   加载顺序：tokens.css → components.css → admin-shell.css → 页面私有样式
   ========================================================================== */

:root {
  /* ---- 基础色板（深 slate 系，高级感核心：低饱和 + 半透明描边） ---- */
  --cv-bg:            #0b1120;   /* 页面底色：深而不死黑 */
  --cv-bg-2:          #111a2e;   /* 面板/卡片底 */
  --cv-bg-3:          #1a2440;   /* 悬浮态/选中态底 */
  --cv-bg-inset:      #0d1526;   /* 输入框等内凹区域 */
  --cv-border:        rgba(148, 163, 184, .14);  /* 统一描边：半透明，替代 5 种实色 */
  --cv-border-strong: rgba(148, 163, 184, .26);  /* hover/focus 态描边 */

  /* ---- 文字 ---- */
  --cv-text:          #e6edf7;   /* 主文字 */
  --cv-text-2:        #94a3b8;   /* 次要文字 */
  --cv-text-3:        #5c6b84;   /* 弱化/占位文字 */

  /* ---- 品牌主色 ---- */
  --cv-accent:        #3b82f6;
  --cv-accent-2:      #60a5fa;
  --cv-accent-soft:   rgba(59, 130, 246, .15);  /* 选中/激活底 */
  --cv-accent-ring:   rgba(59, 130, 246, .35);  /* focus 光圈 */

  /* ---- 状态色（统一半透明底 + 实色字） ---- */
  --cv-ok:            #34d399;
  --cv-ok-soft:       rgba(52, 211, 153, .13);
  --cv-warn:          #fbbf24;
  --cv-warn-soft:     rgba(251, 191, 36, .13);
  --cv-danger:        #f87171;
  --cv-danger-soft:   rgba(248, 113, 113, .13);
  --cv-info:          #38bdf8;
  --cv-info-soft:     rgba(56, 189, 248, .13);

  /* ---- 圆角 ---- */
  --cv-radius-sm:     6px;
  --cv-radius:        10px;
  --cv-radius-lg:     14px;
  --cv-radius-pill:   999px;

  /* ---- 阴影 ---- */
  --cv-shadow:        0 8px 24px rgba(0, 0, 0, .35);
  --cv-shadow-lg:     0 16px 48px rgba(0, 0, 0, .5);
  --cv-shadow-sm:     0 2px 8px rgba(0, 0, 0, .25);

  /* ---- 字体 ---- */
  --cv-font:          "Inter", "Noto Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --cv-font-mono:     "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;

  /* ---- 尺寸节奏 ---- */
  --cv-space:         8px;       /* 基础间距单位 */
  --cv-control-h:     36px;      /* 输入框/按钮标准高 */
  --cv-topbar-h:      52px;      /* 顶栏高 */
  --cv-sidebar-w:     240px;     /* 后台侧边栏宽 */

  /* ---- 动效 ---- */
  --cv-ease:          cubic-bezier(.4, 0, .2, 1);
  --cv-dur:           .15s;

  /* ==================== 兼容映射层 ====================
     旧站点变量名 → 新 token，保证旧页面只换引用即可视觉统一，
     后续逐页面清理后本层可移除。
     说明：CSS 自定义属性同名后定义者胜；站点若在自己的 :root 中
     重定义了同名变量，则以站点为准（渐进迁移期间允许存在）。
  ====================================================== */
  --bg:        var(--cv-bg);
  --bg-2:      var(--cv-bg-2);
  --bg-3:      var(--cv-bg-3);
  --bg-panel:  var(--cv-bg-2);
  --panel:     var(--cv-bg-2);
  --sidebar:   var(--cv-bg-2);
  --border:    var(--cv-border);
  --text:      var(--cv-text);
  --fg:        var(--cv-text);
  --fg-bright: #f1f5f9;
  --muted:     var(--cv-text-2);
  --accent:    var(--cv-accent);
  --accent-2:  var(--cv-accent-2);
  --accent-hover: var(--cv-accent-2);
  --primary:   var(--cv-accent);
  --primary-hover: var(--cv-accent-2);
  --ok:        var(--cv-ok);
  --success:   var(--cv-ok);
  --warn:      var(--cv-warn);
  --warning:   var(--cv-warn);
  --err:       var(--cv-danger);
  --danger:    var(--cv-danger);
  --danger-hover: #ef4444;
  --info:      var(--cv-info);
}
