/* ============================================================
   DMD暗色主题 v3.0 · 2026-06-15（令牌化）
   颜色变量 + 8px间距 + 排版系统 + 减少!important
   ============================================================ */

:root {
  --color-primary-100: #D6E9FF;
  --color-primary-200: #ADD3FF;
  --color-primary-300: #7AB8FF;
  --color-primary-400: #4A9DFF;
  --color-primary-500: #2B82F6;
  --color-primary-600: #1A6AD8;
  --color-primary-700: #1354AE;
  --color-primary-800: #0E3F84;
  --color-primary-900: #0A2B5A;

  --color-warm-400: #FF8461;
  --color-warm-500: #FF6B47;
  --color-warm-600: #E55A39;

  --color-white:      #ffffff;
  --color-gray-100:   #E6E6E6;
  --color-gray-200:   #CCCCCC;
  --color-gray-300:   #B3B3B3;
  --color-gray-400:   #999999;
  --color-gray-500:   #808080;
  --color-gray-600:   #666666;
  --color-gray-700:   #4D4D4D;
  --color-gray-800:   #292929;
  --color-gray-900:   #0E0E0E;
  --color-gray-950:   #0a0a0a;
  --color-black:      #000000;

  --space-xs:   4px;
  --space-sm:   8px;
  --space-md:  16px;
  --space-lg:  24px;
  --space-xl:  32px;
  --space-2xl: 48px;
  --space-3xl: 64px;

  --font-body: "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-display: "PingFang SC", "Microsoft YaHei", sans-serif;
  --font-mono: "SF Mono", "JetBrains Mono", "Fira Code", Menlo, monospace;

  --text-xs:   0.75rem;
  --text-sm:   0.8125rem;
  --text-base: 1rem;
  --text-lg:   1.125rem;
  --text-xl:   1.25rem;
  --text-2xl:  1.5rem;
  --text-3xl:  1.75rem;
  --text-4xl:  2rem;
  --text-5xl:  2.5rem;

  --leading-tight:   1.25;
  --leading-snug:    1.4;
  --leading-normal:  1.6;
  --leading-relaxed: 1.75;
  --leading-loose:   2;

  --font-light:    300;
  --font-normal:   400;
  --font-medium:   500;
  --font-semibold: 600;
  --font-bold:     700;

  --radius-sm:  4px;
  --radius-md:  8px;
  --radius-lg:  12px;
  --radius-xl:  16px;

  --transition-fast: 150ms ease;
  --transition-base: 250ms ease;
}

/* === GeneratePress框架变量覆盖 === */
:root {
  --contrast:   var(--color-white) !important;
  --contrast-2: var(--color-gray-400) !important;
  --contrast-3: var(--color-gray-600) !important;
  --base:       var(--color-gray-900) !important;
  --base-2:     var(--color-gray-950) !important;
  --base-3:     var(--color-black) !important;
  --accent:     var(--color-primary-500) !important;
  --accent-2:   var(--color-warm-500) !important;
}

/* === 基础排版 === */
body {
  font-family: var(--font-body);
  font-size: var(--text-base);
  line-height: var(--leading-relaxed);
  background-color: var(--color-black) !important;
  color: var(--color-gray-100) !important;
}

/* === 标题层级 === */
h1, .entry-title {
  font-family: var(--font-display);
  font-size: var(--text-4xl);
  font-weight: var(--font-bold);
  line-height: var(--leading-tight);
}
h2 {
  font-size: var(--text-3xl);
  font-weight: var(--font-semibold);
  line-height: var(--leading-tight);
}
h3 {
  font-size: var(--text-2xl);
  font-weight: var(--font-semibold);
  line-height: var(--leading-snug);
}
h4 {
  font-size: var(--text-xl);
  font-weight: var(--font-semibold);
  line-height: var(--leading-snug);
}
h5 {
  font-size: var(--text-lg);
  font-weight: var(--font-medium);
  line-height: var(--leading-normal);
}
h6 {
  font-size: var(--text-base);
  font-weight: var(--font-medium);
  line-height: var(--leading-normal);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

p {
  margin-bottom: var(--space-md);
}

/* === 头部导航 === */
.site-header {
  background-color: var(--color-gray-950) !important;
  border-bottom: 1px solid var(--color-gray-800) !important;
}
.main-navigation,
.main-navigation ul ul {
  background-color: var(--color-gray-950) !important;
}
.main-navigation .main-nav ul li a {
  color: var(--color-gray-400) !important;
}
.main-navigation .main-nav ul li:hover > a,
.main-navigation .main-nav ul li[class*="current-menu-"] > a {
  color: var(--color-primary-500) !important;
}
.main-navigation ul ul {
  border: 1px solid var(--color-gray-800) !important;
  box-shadow: 0 var(--space-xs) var(--space-md) rgba(0,0,0,0.5) !important;
}

@media (max-width: 768px) {
  .main-navigation.toggled .main-nav > ul {
    background-color: var(--color-gray-950) !important;
  }
}

/* === 内容区 === */
.separate-containers .inside-article,
.one-container .container {
  background-color: var(--color-gray-950) !important;
  color: var(--color-gray-100) !important;
}
.entry-title,
.entry-title a {
  color: var(--color-gray-100) !important;
}
.entry-title a:hover {
  color: var(--color-primary-500) !important;
  opacity: 1 !important;
}

/* === 链接 === */
a {
  color: var(--color-primary-400);
}
a:hover {
  color: var(--color-primary-300);
}

/* === 页脚 === */
.site-footer,
.footer-widgets,
.site-info {
  background-color: var(--color-gray-950) !important;
  color: var(--color-gray-600) !important;
  border-top: 1px solid var(--color-gray-800) !important;
}

/* === 表格 === */
.wp-block-table table {
  border-color: var(--color-gray-800) !important;
}
.wp-block-table td,
.wp-block-table th {
  border-color: var(--color-gray-800) !important;
  background-color: var(--color-gray-900) !important;
  color: var(--color-gray-100) !important;
}

/* === 引用块 === */
blockquote {
  border-left-color: var(--color-primary-500) !important;
  background-color: var(--color-gray-900) !important;
  color: var(--color-gray-400) !important;
}

/* === 按钮 === */
button,
input[type="submit"],
.button {
  background-color: var(--color-primary-500) !important;
  color: var(--color-white) !important;
}
button:hover,
input[type="submit"]:hover,
.button:hover {
  background-color: var(--color-primary-400) !important;
}

/* === 表单 === */
input[type="text"],
input[type="email"],
input[type="search"],
textarea,
select {
  background-color: var(--color-gray-900) !important;
  color: var(--color-gray-100) !important;
  border-color: var(--color-gray-800) !important;
}

/* === 分隔线 === */
hr,
.wp-block-separator {
  border-color: var(--color-gray-800);
}

/* === 评论 === */
.comments-area {
  background: transparent;
}
.comment-content {
  color: var(--color-gray-400);
}
.comment-meta a {
  color: var(--color-primary-400);
}

/* === 桌面端侧边栏隐藏 === */
@media (min-width: 1024px) {
  .widget-area.sidebar {
    display: none !important;
  }
}

/* === 桌面端标题增强 === */
@media (min-width: 1024px) {
  h1, .entry-title {
    font-size: var(--text-5xl);
  }
  body {
    font-size: var(--text-lg);
  }
}
