/**
 * prose.css —— 正文排版
 *
 * 这份文件同时被「生成的静态页面」和「后台编辑器」引入，
 * 是「编辑器所见 = 最终页面所见」的保证之一：
 * 同一个 class、同一份规则、同一个宽度，两边不可能长得不一样。
 *
 * 只定义内容块内部的默认排版；内容自带的 inline style 优先级更高，
 * 所以粘贴进来的富文本不会被这里的规则改写。
 */

.prose {
  max-width: 100%;
  overflow-x: auto;              /* 宽表格/代码不撑破布局 */
  font-size: 16px;
  line-height: 1.85;
  color: #22282e;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

.prose > *:first-child { margin-top: 0; }
.prose > *:last-child { margin-bottom: 0; }

.prose h1, .prose h2, .prose h3, .prose h4, .prose h5, .prose h6 {
  line-height: 1.4;
  margin: 1.8em 0 .7em;
  font-weight: 650;
  letter-spacing: -.01em;
}
.prose h1 { font-size: 1.6em; }
.prose h2 { font-size: 1.32em; padding-bottom: .3em; border-bottom: 1px solid #ece7de; }
.prose h3 { font-size: 1.14em; }
.prose h4 { font-size: 1em; color: #4a5259; }

.prose p { margin: 0 0 1.1em; }

.prose a { color: #9a6b3f; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: .06em; }
.prose a:hover { color: #7d5430; }

.prose ul, .prose ol { margin: 0 0 1.1em; padding-left: 1.5em; }
.prose li { margin: .35em 0; }
.prose li > ul, .prose li > ol { margin: .35em 0 .35em; }

.prose blockquote {
  margin: 1.2em 0;
  padding: .7em 1.1em;
  border-left: 3px solid #d9c9b4;
  background: #faf7f1;
  color: #4a5259;
}
.prose blockquote > *:last-child { margin-bottom: 0; }

.prose hr { border: 0; border-top: 1px solid #ece7de; margin: 2em 0; }

.prose code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
  font-size: .88em;
  background: #f4efe7;
  padding: .12em .38em;
  border-radius: 4px;
  color: #8a4b2a;
}
.prose pre {
  background: #2b2f33;
  color: #e6e1d8;
  padding: 16px 18px;
  border-radius: 8px;
  overflow-x: auto;
  font-size: 13.5px;
  line-height: 1.62;
  margin: 1.3em 0;
}
.prose pre code { background: none; color: inherit; padding: 0; font-size: inherit; }

.prose img { max-width: 100%; height: auto; border-radius: 6px; }
.prose figure { margin: 1.4em 0; }

.prose .table-wrap { overflow-x: auto; margin: 1.3em 0; }
.prose table { border-collapse: collapse; width: 100%; font-size: 14.5px; }
.prose th, .prose td { border: 1px solid #e6e1d8; padding: 8px 12px; text-align: left; vertical-align: top; }
.prose thead th { background: #f7f3ec; font-weight: 600; }
.prose tbody tr:nth-child(even) { background: #fcfaf7; }

.prose del { color: #8a9299; }
.prose sup, .prose sub { font-size: .78em; }
