body {
    font-family: Palatino, "Palatino Linotype", "Palatino LT STD", Georgia, 'source-han-serif-sc', 'Source Han Serif SC', 'Source Han Serif CN', 'Source Han Serif TC', 'Source Han Serif TW', 'Source Han Serif', 'Songti SC', 'Microsoft YaHei', serif;
}

/* body, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td, hr, button, article, aside, details, figcaption, figure, footer, header, menu, nav, section {
    margin: 0;
    padding: 0;
  } */

ul {
    list-style-type: square;
}

.remark-slide h1 {
    font-family: Palatino, "Palatino Linotype", "Palatino LT STD", Georgia, 'source-han-serif-sc', 'Source Han Serif SC', 'Source Han Serif CN', 'Source Han Serif TC', 'Source Han Serif TW', 'Source Han Serif', 'Songti SC', 'Microsoft YaHei', serif;
    font-size: 64px;
}

.remark-slide-content h2 {
    font-size: 45px;
}

code {
    font-family: Consolas, "Andale Mono", monospace;
    font-weight: bold;
}

#TOC::before {
    content: "Outline";
}

#TOC li ul li {
    display: inline;
    border-left: 0.2em dotted #ccc;
    padding-left: 0.2em;
}

#TOC li ul li a {
    color: #666;
    text-decoration: none;
}

blockquote {
    font-family: 'Palatino Linotype', 'Book Antiqua', Palatino, 'STKaiti', 'KaiTi', '楷体', 'SimKai', 'DFKai-SB', 'NSimSun', serif;
}

blockquote {
    font-size: 130%;
    /* color: #666; */
}

.smaller p {
    font-size: 110%;
}

blockquote strong {
    color: black;
}

blockquote {
    border-left: solid 5px lightgray;
    padding-left: 1em;
}

blockquote h3 {
    text-align: right;
}

img {
    max-width: 100%;
    height: auto;
}

/* 
 * 分栏样式
*/
.column-2 {
    column-count: 2;
    column-gap: 3em;
    column-rule: 0.2px solid rgba(0, 0, 0, 0.2);
}

.column-2 p {
    margin: 0;
    padding: 0;
}

.column-3 {
    column-count: 3;
    column-gap: 3em;
    column-rule: 0.2px solid rgba(0, 0, 0, 0.2);
}

.column-3 p {
    margin: 0;
    padding: 0;
}

.column-4 {
    column-count: 4;
    column-gap: 3em;
    column-rule: 0.2px solid rgba(0, 0, 0, 0.2);
}

.column-4 p {
    margin: 0;
    padding: 0;
}

.column-5 {
    column-count: 5;
    column-gap: 3em;
    column-rule: 0.2px solid rgba(0, 0, 0, 0.2);
}

.column-6 {
    column-count: 6;
    column-gap: 3em;
    column-rule: 0.2px solid rgba(0, 0, 0, 0.2);
}

.column-norule,
.column-norule {
    column-gap: 2em;
    column-rule: 0px;
}

.column-gap-sm,
.nord-dark .column-gap-sm {
    column-gap: 1em;
    column-rule: 0px;
}

.column-gap-xs,
.nord-dark .column-gap-xs {
    column-gap: 0.5em;
    column-rule: 0px;
}

/*
 * 浮动布局
*/
.float-left {
    float: left;
}

.float-left>img {
    float: left;
}

.float-right {
    float: right;
}

.float-right>img {
    float: right;
}

.block-middle {
    display: block;
    margin-left: auto;
    margin-right: auto;
}


/* 字体间距 */
.letter-spacing-0 {
    letter-spacing: 0em;
}

.letter-spacing-10 {
    letter-spacing: 0.1em;
}

.letter-spacing-20 {
    letter-spacing: 0.2em;
}

.letter-spacing-30 {
    letter-spacing: 0.3em;
}

.letter-spacing-40 {
    letter-spacing: 0.4em;
}

.letter-spacing-50 {
    letter-spacing: 0.5em;
}

.letter-spacing-60 {
    letter-spacing: 0.6em;
}

.letter-spacing-70 {
    letter-spacing: 0.7em;
}

.letter-spacing-80 {
    letter-spacing: 0.8em;
}

.letter-spacing-90 {
    letter-spacing: 0.9em;
}

.letter-spacing-100 {
    letter-spacing: 1em;
}

/* table
  *
  * 100% 宽度，无背景色的 Table
  * 可选样式：
  *   st-hline 只显示横线
  *   st-vline 只显示竖线
  *   st-allline 横线和竖线都显示
 */
.st {
    border: 1px solid rgba(0, 0, 0, 0.12);
    border-radius: 4px;
    margin-bottom: 10px;
}

.st table {
    margin-bottom: 0px;
    width: 100%;
    max-width: 100%;
    border-spacing: 0;
}

.st table thead th {
    color: #000;
}

.st table td,
.st table th,
.st table thead,
.st table thead th,
.st table tr {
    border-width: 0px;
    border-style: solid;
    border-color: rgba(0, 0, 0, 0.12);
    background-color: transparent;
}

.st-allline table td:first-child,
.st-allline table th:first-child,
.st-vline table td:first-child,
.st-vline table th:first-child {
    border-left: 0;
}

.st-hline table thead th,
.st-hline table thead th,
.st-hline table tbody tr:not(:last-child) td,
.st-hline table tbody tr:not(:last-child) td,
.st-vline table tr:nth-last-child(2) th,
.st-vline table thead tr:last-child th,
.st-allline table tbody tr:not(:last-child) td,
.st-allline table thead th {
    border-bottom-width: 1px;
    text-align: left;
}

.st-allline table td,
.st-allline table thead th,
.st-allline table th,
.st-vline table td,
.st-vline table thead th,
.st-vline table th {
    border-left-width: 1px;
}

.st.noborder {
    border-top: 0px;
    border-left: 0px;
    border-right: 0px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    border-radius: 0px;
}

.st.noborder table thead th {
    font-weight: bold;
    color: rgba(0, 0, 0, 0.6);
    border-bottom-width: 2px;
}

table th,
table td,
table th,
table td,
table caption {
    border: 1px solid #ddd;
    padding: 0.5em 1em;
    color: #666;
}

table th,
table th {
    background: #fbfbfb;
}

table thead th,
table thead th {
    background: #f1f1f1;
}

table caption {
    border-bottom: none;
}

.border-layout {
    padding: 0px;
}

.border-layout .north>p,
.border-layout .east>p,
.border-layout .west>p,
.border-layout .b-center>p,
.border-layout .south>p {
    margin: 0px;
}

.east {
    float: right;
}

.west {
    float: left;
}

.b-center:after {
    content: " ";
    clear: both;
    display: block;
    height: 0;
    overflow: hidden;
}

.mermaid {
    display: flex;
}

.mermaid>p {
    margin-bottom: 0px;
}

.mermaid svg g.node foreignObject div[style] {
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    margin-top: 5px !important;
}

.mermaid {
    max-width: 100%;
    overflow-x: auto;
    max-height: 100%;
}

.hljs-github .hljs {
    /* 禁止滚动条 */
    overflow: hidden;

    /* 让超长的代码自动换行 */
    white-space: pre-wrap;
    word-wrap: break-word;
    word-break: break-word;
    /* 兼容某些浏览器的长单词处理方式 */

    /* 缩小字体，比如 90% */
    font-size: 0.8em;
}