.safe-rich-text {
    color: inherit;
    font: inherit;
    line-height: 1.6;
    overflow-wrap: anywhere;
    white-space: normal;
}

.safe-rich-text > :first-child { margin-top: 0; }
.safe-rich-text > :last-child { margin-bottom: 0; }
.safe-rich-text p { margin: 0 0 .75rem; }
.safe-rich-text ul,
.safe-rich-text ol { margin: .5rem 0 .85rem; padding-left: 1.35rem; }
.safe-rich-text li + li { margin-top: .25rem; }
.safe-rich-text blockquote {
    margin: .75rem 0;
    padding: .7rem .9rem;
    border-left: 3px solid var(--teal);
    border-radius: 0 8px 8px 0;
    background: color-mix(in srgb, var(--teal) 8%, transparent);
}
.safe-rich-text figure.table {
    max-width: 100%;
    margin: .75rem 0;
    overflow-x: auto;
    border-radius: 10px;
}
.safe-rich-text table {
    width: 100%;
    min-width: 320px;
    border-collapse: collapse;
    background: var(--white);
}
.safe-rich-text th,
.safe-rich-text td {
    min-width: 80px;
    padding: 9px 11px;
    border: 1px solid var(--line);
    text-align: left;
    vertical-align: top;
}
.safe-rich-text th {
    background: color-mix(in srgb, var(--ink) 5%, var(--white));
    font-weight: 700;
}
.safe-rich-text a { color: var(--teal); text-decoration: underline; text-underline-offset: 2px; }

body.theme-midnight .safe-rich-text table { background: #112a36; }
body.theme-midnight .safe-rich-text th { background: #193846; }
body.theme-midnight .safe-rich-text th,
body.theme-midnight .safe-rich-text td { border-color: var(--line); color: var(--ink); }
