/* ============================================================
   Harness Engineering — Editorial Ink
   墨黑顶栏 · 暖白纸底 · 陶土点缀 · 思源宋体正文
   ============================================================ */

/* ---------- 浅色：暖白书卷 ---------- */
[data-md-color-scheme="default"] {
  --md-default-bg-color:        #faf9f6;   /* 暖白纸底（略提亮、少黄） */
  --md-default-fg-color:        #2b2723;   /* 暖墨正文 */
  --md-default-fg-color--light: #5b544c;
  --md-default-fg-color--lighter:#8c8479;
  --md-default-fg-color--lightest:#e7e1d6;

  --md-primary-fg-color:        #1a1a1a;   /* 顶栏近黑 */
  --md-primary-fg-color--light: #2c2c2c;
  --md-primary-fg-color--dark:  #000000;
  --md-primary-bg-color:        #f5f2ec;   /* 顶栏文字 */
  --md-primary-bg-color--light: #cfc8bd;

  --md-accent-fg-color:         #8f3d2c;   /* 悬停更深陶土 */

  --md-typeset-color:           #2b2723;
  --md-typeset-a-color:         #b5503a;   /* 陶土链接 */

  --md-code-bg-color:           #f0ebe1;   /* 暖灰代码底 */
  --md-code-fg-color:           #4a4036;

  --md-footer-bg-color:         #1a1a1a;
  --md-footer-bg-color--dark:   #111111;
}

/* ---------- 深色：暖墨夜读 ---------- */
[data-md-color-scheme="slate"] {
  --md-default-bg-color:        #1c1a17;   /* 暖黑底，非冷灰 */
  --md-default-fg-color:        #e8e2d6;
  --md-default-fg-color--light: #c2bbac;
  --md-default-fg-color--lighter:#8f887b;
  --md-default-fg-color--lightest:#3a362f;

  --md-primary-fg-color:        #0f0e0c;
  --md-primary-bg-color:        #ece6da;

  --md-accent-fg-color:         #e08a6f;

  --md-typeset-color:           #e8e2d6;
  --md-typeset-a-color:         #d4795f;   /* 浅陶土 */

  --md-code-bg-color:           #26231e;
  --md-code-fg-color:           #d8cfbf;
}

/* ---------- 正文排版：书卷感 ---------- */
.md-typeset {
  font-size: .85rem;          /* ≈17px */
  line-height: 1.82;          /* 宽行距，长文耐读 */
  letter-spacing: .1px;
}

.md-grid { max-width: 76rem; }   /* 加宽版心，减少两侧空白 */

.md-typeset p { margin: .9em 0 1.1em; }

/* 段首不缩进，靠间距分段（技术书惯例） */

/* ---------- 标题：宋体 + 克制装饰 ---------- */
.md-typeset h1,
.md-typeset h2,
.md-typeset h3,
.md-typeset h4 {
  font-weight: 700;
  letter-spacing: .2px;
  color: var(--md-default-fg-color);
}
.md-typeset h1 {
  font-size: 1.9em;
  line-height: 1.3;
  margin-bottom: .8em;
}
.md-typeset h2 {
  font-size: 1.42em;
  margin-top: 2em;
  padding-bottom: .3em;
  color: #8f2d3b;                                                 /* 勃艮第酒红标题，浓郁暖调、出版感 */
  border-bottom: 2px solid var(--md-default-fg-color--lightest);  /* 细分隔线 */
}
.md-typeset h3 {
  font-size: 1.16em;
  margin-top: 1.6em;
}

/* ---------- 链接：陶土，悬停下划线 ---------- */
.md-typeset a {
  color: var(--md-typeset-a-color);
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: border-color .15s;
}
.md-typeset a:hover {
  color: var(--md-accent-fg-color);
  border-bottom-color: currentColor;
}

/* ---------- 顶栏：墨黑，细体标题 ---------- */
.md-header {
  box-shadow: 0 1px 0 rgba(0,0,0,.12);
}
.md-header__title { font-weight: 600; letter-spacing: .3px; }

/* ---------- 行内代码：暖橙棕，与正文/链接区分 ---------- */
.md-typeset code {
  font-size: .82em;
  padding: .12em .4em;
  border-radius: 4px;
  color: #9c3d22;
}
[data-md-color-scheme="slate"] .md-typeset code { color: #e0916f; }

/* ---------- 代码块：暗色「代码窗口」——圆角 + 红黄绿灯 + One Dark 多彩高亮 ---------- */
.md-typeset .highlight {
  position: relative;
  font-size: .92em;
  margin: 1.6em 0;
  border-radius: 10px;
  background: #282c34;                          /* One Dark 底 */
  box-shadow: 0 12px 32px rgba(28,28,38,.22);
  overflow: hidden;
}
/* 顶部标题栏 */
.md-typeset .highlight::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 2.4em;
  background: #21252b; border-bottom: 1px solid rgba(255,255,255,.06);
}
/* 三个交通灯圆点 */
.md-typeset .highlight::after {
  content: ""; position: absolute; top: 1em; left: 1.1em; z-index: 2;
  width: 11px; height: 11px; border-radius: 50%;
  background: #ff5f56;
  box-shadow: 18px 0 0 #ffbd2e, 36px 0 0 #27c93f;
}
.md-typeset .highlight > pre { margin: 0; background: transparent; }
.md-typeset .highlight pre > code {
  display: block; background: transparent; border: none;
  color: #d7dce4;                               /* 基础文字提亮，保证对比度 */
  padding: 3.1em 1.2em 1.2em;                   /* 顶部给标题栏留位 */
  line-height: 1.65;
}
.md-typeset .highlight .md-clipboard { color: rgba(255,255,255,.35); }
.md-typeset .highlight .md-clipboard:hover { color: #fff; }
/* 兜底：所有 token 默认用亮色（变量名/方法名/标点等未被下方具体配色覆盖的，
   否则会沿用浅色主题的深色字、在暗底代码窗口里看不清）。具体配色优先级更高，仍生效。 */
.md-typeset .highlight code span { color: #d7dce4; }
/* One Dark 语法配色（彩色从这里自然来） */
.md-typeset .highlight .c, .md-typeset .highlight .ch, .md-typeset .highlight .cm,
.md-typeset .highlight .c1, .md-typeset .highlight .cs { color:#9aa6b6; }   /* 注释：提亮、去斜体（中文斜体发虚） */
.md-typeset .highlight .k, .md-typeset .highlight .kd, .md-typeset .highlight .kn,
.md-typeset .highlight .kr, .md-typeset .highlight .kt { color:#c678dd; }                       /* 关键字·紫 */
.md-typeset .highlight .s, .md-typeset .highlight .s1, .md-typeset .highlight .s2,
.md-typeset .highlight .sb, .md-typeset .highlight .se, .md-typeset .highlight .sd { color:#98c379; } /* 字符串·绿 */
.md-typeset .highlight .mi, .md-typeset .highlight .mf, .md-typeset .highlight .mh,
.md-typeset .highlight .il { color:#d19a66; }                                                   /* 数字·橙 */
.md-typeset .highlight .nf, .md-typeset .highlight .fm { color:#61afef; }                       /* 函数·蓝 */
.md-typeset .highlight .nc, .md-typeset .highlight .nn, .md-typeset .highlight .ne { color:#e5c07b; } /* 类型·黄 */
.md-typeset .highlight .o, .md-typeset .highlight .ow { color:#56b6c2; }                        /* 运算符·青 */
.md-typeset .highlight .bp, .md-typeset .highlight .kc, .md-typeset .highlight .no,
.md-typeset .highlight .nb, .md-typeset .highlight .nv { color:#e06c75; }                       /* 常量/内建·红 */

/* ---------- 引用块 / 配图占位：左陶土边 + 暖底 ---------- */
.md-typeset blockquote {
  border-left: 3px solid var(--md-typeset-a-color);
  background: rgba(181, 80, 58, .05);
  color: var(--md-default-fg-color--light);
  border-radius: 0 6px 6px 0;
  padding: .6em 1em;
}

/* ---------- 表格：清爽细线 ---------- */
.md-typeset table:not([class]) {
  font-size: .92em;
  border: 1px solid var(--md-default-fg-color--lightest);
  border-radius: 6px;
  overflow: hidden;
}
.md-typeset table:not([class]) th {
  background: var(--md-code-bg-color);
  font-weight: 700;
}

/* ---------- 脚注：弱化、留白 ---------- */
.md-typeset .footnote {
  font-size: .82em;
  color: var(--md-default-fg-color--light);
  border-top: 1px solid var(--md-default-fg-color--lightest);
  margin-top: 2.5em;
  padding-top: .5em;
}
.md-typeset .footnote-ref { font-weight: 600; }

/* ---------- 导航：当前章陶土高亮 ---------- */
.md-nav__link--active,
.md-nav__item .md-nav__link--active {
  color: var(--md-typeset-a-color);
  font-weight: 600;
}

/* ---------- 四步法 / 提示框配色（柔和有彩，预备内容组件化） ---------- */
.md-typeset .admonition,
.md-typeset details {
  font-size: .8rem;
  border: none;
  border-left: 4px solid var(--md-default-fg-color--lighter);
  border-radius: 0 8px 8px 0;
  box-shadow: 0 2px 12px rgba(0,0,0,.05);
  background: #fffdfa;
}
[data-md-color-scheme="slate"] .md-typeset .admonition,
[data-md-color-scheme="slate"] .md-typeset details { background: #232019; }
.md-typeset .admonition-title,
.md-typeset summary { font-weight: 700; background: transparent; }
/* 失败=红 · 机制/note=蓝 · 源码/tip=绿 · 抽象/example=紫 · warning=琥珀 */
.md-typeset .admonition.failure, .md-typeset .admonition.danger { border-left-color:#c0492f; }
.failure > .admonition-title, .danger > .admonition-title { background:rgba(192,73,47,.10); }
.md-typeset .admonition.note, .md-typeset .admonition.info, .md-typeset .admonition.abstract { border-left-color:#3b6ea8; }
.note > .admonition-title, .info > .admonition-title, .abstract > .admonition-title { background:rgba(59,110,168,.10); }
.md-typeset .admonition.tip, .md-typeset .admonition.success { border-left-color:#2a8a5f; }
.tip > .admonition-title, .success > .admonition-title { background:rgba(42,138,95,.10); }
.md-typeset .admonition.example, .md-typeset .admonition.quote { border-left-color:#8a5cc4; }
.example > .admonition-title, .quote > .admonition-title { background:rgba(138,92,196,.10); }
.md-typeset .admonition.warning, .md-typeset .admonition.question { border-left-color:#c2820a; }
.warning > .admonition-title, .question > .admonition-title { background:rgba(194,130,10,.12); }

/* ---------- 选中文字也用陶土调 ---------- */
::selection {
  background: rgba(181, 80, 58, .18);
}
