/* The editor and public article share only neutral HTML defaults. Pasted
   inline styles and source CSS keep their own typography and decoration. */
.article-rich-text {
    color: #333;
    font-family: "Microsoft YaHei", "PingFang SC", system-ui, sans-serif;
    font-size: 16px;
    line-height: normal;
    overflow-wrap: break-word;
}

/* Match browser defaults that the public site's CSS reset otherwise removes.
   Keep specificity low so styles carried by the article can override them. */
:where(.article-rich-text) p {
    margin: 1em 0;
}

:where(.article-rich-text) h1,
:where(.article-rich-text) h2,
:where(.article-rich-text) h3,
:where(.article-rich-text) h4,
:where(.article-rich-text) h5,
:where(.article-rich-text) h6 {
    color: inherit;
    font-weight: bold;
    line-height: inherit;
}

:where(.article-rich-text) h1 { font-size: 2em; margin: 0.67em 0; }
:where(.article-rich-text) h2 { font-size: 1.5em; margin: 0.83em 0; }
:where(.article-rich-text) h3 { font-size: 1.17em; margin: 1em 0; }
:where(.article-rich-text) h4 { font-size: 1em; margin: 1.33em 0; }
:where(.article-rich-text) h5 { font-size: 0.83em; margin: 1.67em 0; }
:where(.article-rich-text) h6 { font-size: 0.67em; margin: 2.33em 0; }

:where(.article-rich-text) blockquote {
    margin: 1em 40px;
}

:where(.article-rich-text) ul,
:where(.article-rich-text) ol {
    margin: 1em 0;
    padding-left: 40px;
}

:where(.article-rich-text) ul { list-style-type: disc; }
:where(.article-rich-text) ol { list-style-type: decimal; }

:where(.article-rich-text) img {
    display: inline;
    vertical-align: baseline;
    margin: 0;
    border-radius: 0;
    max-width: 100%;
    height: auto;
}

:where(.article-rich-text) svg {
    display: inline;
    vertical-align: baseline;
}

:where(.article-rich-text) table {
    border-collapse: separate;
    border-spacing: 2px;
}

:where(.article-rich-text) th {
    font-weight: bold;
    text-align: center;
}

:where(.article-rich-text) th,
:where(.article-rich-text) td {
    padding: 1px;
}

:where(.article-rich-text) a {
    color: -webkit-link;
    text-decoration: underline;
}

:where(.article-rich-text) details.mce-accordion > summary {
    cursor: pointer;
}

:where(.article-rich-text) hr.rt-pagebreak {
    break-after: page;
}
