/**
 * Nexus 设计令牌 —— 翡翠绿主题（继承旧系统色板）
 * 三态：跟随系统(auto，默认) / 亮(light) / 暗(dark)，html[data-theme] 控制
 * 前台圆角 8/12px；系统字体栈，零 webfont
 */

:root {
  /* 品牌 */
  --nx-primary:        #10b981;
  --nx-primary-hover:  #059669;
  --nx-primary-active: #047857;
  --nx-primary-soft:   rgba(16, 185, 129, .10);
  --nx-primary-softer: rgba(16, 185, 129, .06);

  /* 表面 */
  --nx-bg:        #f5f7f5;
  --nx-card:      #ffffff;
  --nx-muted:     #f0f4f0;
  --nx-border:    #e2e8e2;

  /* 文字 */
  --nx-text:      #1a2e1a;
  --nx-text-2:    #6b7a6b;
  --nx-text-3:    #9aa89a;

  /* 语义 */
  --nx-success: #10b981;
  --nx-warning: #f59e0b;
  --nx-danger:  #ef4444;
  --nx-info:    #3b82f6;

  /* 形状与阴影（绿调阴影） */
  --nx-radius-sm: 8px;
  --nx-radius:    12px;
  --nx-radius-lg: 16px;
  --nx-shadow:    0 1px 3px rgba(16, 185, 129, .06), 0 8px 24px rgba(26, 46, 26, .05);
  --nx-shadow-sm: 0 1px 2px rgba(26, 46, 26, .06);

  /* 布局 */
  --nx-header-h: 60px;
  --nx-container: 1200px;

  /* 字体（系统栈，不加载 webfont） */
  --nx-font: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC",
             "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;
  --nx-font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;
}

[data-theme="dark"] {
  --nx-bg:        #0f1712;
  --nx-card:      #16211a;
  --nx-muted:     #1c2a21;
  --nx-border:    #24352b;

  --nx-text:      #e5efe7;
  --nx-text-2:    #8fa394;
  --nx-text-3:    #5f7263;

  --nx-primary-soft:   rgba(16, 185, 129, .16);
  --nx-primary-softer: rgba(16, 185, 129, .08);
  --nx-shadow:    0 1px 3px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .25);
  --nx-shadow-sm: 0 1px 2px rgba(0, 0, 0, .35);
}

/* 跟随系统：仅当用户未显式选择时生效 */
@media (prefers-color-scheme: dark) {
  [data-theme="auto"] {
    --nx-bg:        #0f1712;
    --nx-card:      #16211a;
    --nx-muted:     #1c2a21;
    --nx-border:    #24352b;
    --nx-text:      #e5efe7;
    --nx-text-2:    #8fa394;
    --nx-text-3:    #5f7263;
    --nx-primary-soft:   rgba(16, 185, 129, .16);
    --nx-primary-softer: rgba(16, 185, 129, .08);
    --nx-shadow:    0 1px 3px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .25);
    --nx-shadow-sm: 0 1px 2px rgba(0, 0, 0, .35);
  }
}

/* 基础重置 */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  font-family: var(--nx-font);
  font-size: 15px;
  line-height: 1.65;
  color: var(--nx-text);
  background: var(--nx-bg);
  transition: background .25s ease, color .25s ease;
}
a { color: var(--nx-primary); text-decoration: none; }
a:hover { color: var(--nx-primary-hover); }
img { max-width: 100%; height: auto; }
hr { border: 0; border-top: 1px solid var(--nx-border); margin: 24px 0; }
::selection { background: var(--nx-primary-soft); }
:focus-visible { outline: 2px solid var(--nx-primary); outline-offset: 2px; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; }
}
