@charset "utf-8";
.zp-article-content > *:first-child { margin-top: 0; }
.zp-article-content > *:last-child { margin-bottom: 0; }
.zp-article-content p { margin: 0 0 1.05em; }
.zp-article-content h1,
.zp-article-content h2,
.zp-article-content h3,
.zp-article-content h4,
.zp-article-content h5,
.zp-article-content h6 {
    margin: 1.7em 0 0.7em;
    font-weight: 700;
    line-height: 1.42;
    color: var(--text);
    letter-spacing: 0.4px;
}
.zp-article-content h1 { font-size: 1.5em; }
.zp-article-content h2 {
    font-size: 1.32em;
    padding-bottom: 0.42em;
    border-bottom: 1px solid var(--line);
    position: relative;
}
.zp-article-content h2::before {
    content: '';
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 52px;
    height: 2px;
    background: rgb(var(--accent));
    box-shadow: 0 0 10px rgba(var(--accent), 0.8);
}
.zp-article-content h3 { font-size: 1.16em; }
.zp-article-content h4 { font-size: 1.04em; }
.zp-article-content h5,
.zp-article-content h6 { font-size: 1em; color: var(--text-2); }
.zp-article-content a {
    color: rgb(var(--accent));
    border-bottom: 1px solid rgba(var(--accent), 0.4);
}
.zp-article-content a:hover {
    color: rgb(var(--accent-2));
    border-bottom-color: rgb(var(--accent-2));
}
.zp-article-content strong { font-weight: 700; color: var(--text); }
.zp-article-content em { font-style: italic; color: var(--text-2); }
.zp-article-content del { color: var(--text-3); }
.zp-article-content ul,
.zp-article-content ol { margin: 0 0 1.05em; padding-left: 1.5em; }
.zp-article-content ul { list-style: none; }
.zp-article-content ol { list-style: decimal; }
.zp-article-content ol li { list-style: decimal; }
.zp-article-content ul li { position: relative; margin-bottom: 0.42em; }
.zp-article-content ul li::before {
    content: '';
    position: absolute;
    left: -1.05em;
    top: 0.68em;
    width: 5px;
    height: 5px;
    background: rgba(var(--accent), 0.85);
    box-shadow: 0 0 8px rgba(var(--accent), 0.7);
}
.zp-article-content ol li { margin-bottom: 0.42em; }
.zp-article-content li > ul,
.zp-article-content li > ol { margin: 0.42em 0 0; }
.zp-article-content blockquote {
    position: relative;
    margin: 1.3em 0;
    padding: 14px 18px 14px 20px;
    font-size: 0.97em;
    color: var(--text-2);
    background: rgba(var(--accent), 0.06);
    border-left: 3px solid rgba(var(--accent), 0.7);
    border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
}
.zp-article-content blockquote p:last-child { margin-bottom: 0; }
.zp-article-content code {
    font-family: var(--mono);
    font-size: 0.9em;
    padding: 2px 6px;
    color: rgb(var(--accent));
    background: rgba(var(--accent), 0.1);
    border: 1px solid rgba(var(--accent), 0.2);
    border-radius: 3px;
    word-break: break-word;
}
.zp-article-content pre {
    position: relative;
    margin: 1.3em 0;
    padding: 16px 18px;
    overflow-x: auto;
    font-family: var(--mono);
    font-size: 13px;
    line-height: 1.75;
    color: #c8d6e4;
    background: #060a11;
    border: 1px solid rgba(var(--accent), 0.22);
    border-radius: var(--radius-sm);
}
.zp-article-content pre code {
    padding: 0;
    color: inherit;
    background: transparent;
    border: 0;
    font-size: inherit;
}
.zp-article-content table {
    width: 100%;
    margin: 1.3em 0;
    border-collapse: collapse;
    font-size: 0.94em;
    overflow: hidden;
}
.zp-article-content th,
.zp-article-content td {
    padding: 9px 13px;
    text-align: left;
    border: 1px solid var(--line);
}
.zp-article-content th {
    font-weight: 600;
    color: var(--text);
    background: rgba(var(--accent), 0.09);
    white-space: nowrap;
}
.zp-article-content tbody tr:nth-child(even) { background: rgba(var(--accent), 0.03); }
.zp-article-content img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 1.3em auto;
    border: 1px solid var(--line);
    border-radius: var(--radius-sm);
}
.zp-article-content hr {
    height: 0;
    margin: 2em 0;
    border: 0;
    border-top: 1px solid var(--line);
}
.zp-article-content .aligncenter { display: block; margin-left: auto; margin-right: auto; }
.zp-article-content .alignleft { float: left; margin: 0 1.2em 0.8em 0; }
.zp-article-content .alignright { float: right; margin: 0 0 0.8em 1.2em; }
.zp-article-content .alignnone { margin: 1.3em 0; }
.zp-article-content::after { content: ''; display: table; clear: both; }
.zp-article-content iframe,
.zp-article-content video {
    max-width: 100%;
    border: 1px solid var(--line);
    border-radius: var(--radius-sm);
}
.zp-comment-body p { margin: 0 0 0.6em; }
.zp-comment-body p:last-child { margin-bottom: 0; }
.zp-comment-body code {
    font-family: var(--mono);
    font-size: 0.9em;
    padding: 1px 5px;
    color: rgb(var(--accent));
    background: rgba(var(--accent), 0.1);
    border-radius: 3px;
}
.zp-comment-body blockquote {
    margin: 0.7em 0;
    padding: 8px 12px;
    background: rgba(var(--accent), 0.06);
    border-left: 2px solid rgba(var(--accent), 0.6);
    color: var(--text-3);
}
.zp-comment-body img { max-width: 100%; border-radius: var(--radius-sm); margin: 6px 0; }