.kfw-markdown
{
    line-height: 1.5;
    min-width: 0;
    overflow-wrap: anywhere;
}

    .kfw-markdown > *:first-child
    {
        margin-top: 0;
    }

    .kfw-markdown > *:last-child
    {
        margin-bottom: 0;
    }

    .kfw-markdown p
    {
        margin: 0 0 .5rem;
    }

    .kfw-markdown h1,
    .kfw-markdown h2,
    .kfw-markdown h3,
    .kfw-markdown h4,
    .kfw-markdown h5,
    .kfw-markdown h6
    {
        margin: .75rem 0 .5rem;
        line-height: 1.25;
    }

    .kfw-markdown h1
    {
        font-size: 1.375rem;
    }

    .kfw-markdown h2
    {
        font-size: 1.25rem;
    }

    .kfw-markdown h3
    {
        font-size: 1.125rem;
    }

    .kfw-markdown h4,
    .kfw-markdown h5,
    .kfw-markdown h6
    {
        font-size: 1rem;
    }

    .kfw-markdown ul,
    .kfw-markdown ol
    {
        margin: 0 0 .5rem;
        padding-left: 1.375rem;
    }

    .kfw-markdown li
    {
        margin: .125rem 0;
    }

    .kfw-markdown blockquote
    {
        margin: .5rem 0;
        padding-left: .75rem;
        border-left: 3px solid rgba(128, 128, 128, .4);
        color: inherit;
        opacity: .85;
    }

    .kfw-markdown hr
    {
        margin: .75rem 0;
        border: none;
        border-top: 1px solid rgba(128, 128, 128, .35);
    }

    .kfw-markdown table
    {
        display: block;
        max-width: 100%;
        margin: .5rem 0;
        border-collapse: collapse;
        overflow-x: auto;
    }

    .kfw-markdown th,
    .kfw-markdown td
    {
        padding: .25rem .625rem;
        border: 1px solid rgba(128, 128, 128, .35);
        text-align: left;
    }

    .kfw-markdown th
    {
        background: rgba(128, 128, 128, .12);
    }

    .kfw-markdown code
    {
        padding: .125rem .3125rem;
        border-radius: .25rem;
        background: rgba(128, 128, 128, .18);
        font-family: Consolas, Menlo, Monaco, monospace;
        font-size: .875em;
    }

    .kfw-markdown pre
    {
        position: relative;
        margin: .5rem 0;
        padding: .75rem;
        border-radius: .5rem;
        background: #0d1117;
        color: #c9d1d9;
        overflow-x: auto;
    }

        .kfw-markdown pre code
        {
            display: block;
            padding: 0;
            background: transparent;
            color: inherit;
        }

    .kfw-markdown a
    {
        color: var(--kfw-primary, #4f46e5);
    }

.kfw-copy-button
{
    position: absolute;
    top: .375rem;
    right: .375rem;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: .25rem;
    border: none;
    border-radius: .25rem;
    background: rgba(255, 255, 255, .08);
    color: #c9d1d9;
    cursor: pointer;
    line-height: 1;
}

    .kfw-copy-button:hover
    {
        background: rgba(255, 255, 255, .2);
    }

    .kfw-copy-button .rzi
    {
        font-size: 1.125rem;
    }
