/**
 * 文章正文 · 手写纸张排版
 */
.markdown {
    overflow-wrap: break-word;
    text-align: left;
    color: var(--ink);
    font-size: 17px;
    line-height: 2;
}
.markdown > :first-child { margin-top: 0; }
.markdown > :last-child { margin-bottom: 0; }
.markdown p { margin: 1.05em 0; }
.markdown h1,
.markdown h2,
.markdown h3,
.markdown h4,
.markdown h5,
.markdown h6 {
    position: relative;
    margin: 1.55em 0 .7em;
    color: var(--ink);
    font-family: var(--font-serif);
    font-weight: 900;
    letter-spacing: .03em;
}
.markdown h1 { font-size: 2rem !important; }
.markdown h2 { font-size: 1.65rem !important; padding-left: 16px; }
.markdown h3 { font-size: 1.35rem !important; }
.markdown h4 { font-size: 1.18rem !important; }
.markdown h5,
.markdown h6 { font-size: 1rem !important; }
.markdown h2::before {
    content: "";
    position: absolute;
    left: 0;
    top: .25em;
    width: 6px;
    height: 1.25em;
    background: var(--accent);
    border: 1px solid var(--line);
    border-radius: 999px;
    transform: rotate(3deg);
}
.markdown h2::after,
.markdown h3::after {
    content: "";
    display: block;
    width: min(220px, 68%);
    height: 8px;
    margin-top: -6px;
    background: rgba(228, 171, 59, .35);
    border-radius: 999px;
    transform: rotate(-1deg);
}
.markdown strong { font-weight: 900; }
.markdown a { color: var(--accent-dark); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; }
.markdown del { text-decoration: line-through; }
.markdown blockquote {
    margin: 1.4em 0;
    padding: 16px 18px 16px 22px;
    color: var(--ink-soft);
    background: var(--paper-2);
    border: 2px solid var(--line);
    border-left-width: 7px;
    border-radius: 18px 14px 20px 13px;
    box-shadow: 4px 5px 0 var(--shadow);
    font-style: normal;
}
.markdown ul,
.markdown ol { padding-left: 1.55em; margin: 1em 0; }
.markdown li { margin: .28em 0; line-height: 1.9; }
.markdown li::marker { color: var(--accent-dark); font-weight: 900; }
.markdown hr { height: 0; border: 0; border-top: 2px dashed var(--line-soft); margin: 1.8em 0; }
.markdown img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 1.45em auto;
    border: 2px solid var(--line);
    border-radius: 24px 18px 26px 20px;
    box-shadow: 6px 7px 0 var(--shadow);
    background: var(--paper-2);
}
.markdown table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow: auto;
    border-collapse: separate;
    border-spacing: 0;
    margin: 1.4em 0;
    border: 2px solid var(--line);
    border-radius: 16px;
    background: var(--paper);
    box-shadow: 4px 5px 0 var(--shadow);
}
.markdown th,
.markdown td { padding: 10px 13px; border-right: 1px solid var(--line-soft); border-bottom: 1px solid var(--line-soft); }
.markdown th { background: var(--paper-2); color: var(--ink); font-weight: 900; }
.markdown tr:nth-child(even) td { background: rgba(104, 122, 69, .08); }
.markdown code:not(pre > code) {
    display: inline-block;
    padding: 1px 7px;
    margin: 0 2px;
    color: var(--accent-dark);
    background: var(--paper-2);
    border: 1px solid var(--line-soft);
    border-radius: 8px;
    font-size: .92em;
}
.markdown pre {
    position: relative;
    margin: 1.45em 0;
    padding: 42px 16px 16px;
    overflow: auto;
    color: #f8ecd8;
    background: #2d261f;
    border: 2px solid var(--line);
    border-radius: 18px 14px 20px 13px;
    box-shadow: 5px 6px 0 var(--shadow);
    line-height: 1.7;
}
.markdown pre code { color: inherit; background: transparent; border: 0; padding: 0; }
@media (max-width: 640px) {
    .markdown { font-size: 16px; line-height: 1.9; }
    .markdown h1 { font-size: 1.75rem !important; }
    .markdown h2 { font-size: 1.42rem !important; }
    .markdown h3 { font-size: 1.22rem !important; }
    .markdown img { border-radius: 18px 14px 20px 15px; box-shadow: 4px 5px 0 var(--shadow); }
}
