.theorem-environment {
    position: relative;
    margin: 1.5rem 0;
    padding: 1rem 1.25rem;
    background-color: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: 1rem;
    box-shadow: var(--color-shadow-soft);
    font-style: italic;
}

.theorem-environment > :first-child {
    margin-top: 0;
}

.theorem-environment > :last-child {
    margin-bottom: 0;
}

.theorem-header {
    color: var(--color-text);
    font-weight: 700;
    font-style: normal;
}

.theorem-header .index:before {
    content: " ";
}

.theorem-header .name:before {
    content: " (";
}

.theorem-header .name:after {
    content: ")";
}

.theorem-header:after {
    content: ".\2002\2002";
}

.theorem-header + p {
    display: inline;
}

.Proof {
    padding-right: 2.5rem;
    font-style: normal;
}

.Proof .type {
    color: var(--color-linkh);
    font-weight: 400;
    font-style: italic;
}

.Proof:after {
    content: "\220e";
    position: absolute;
    right: 1rem;
    bottom: 0.85rem;
    color: var(--color-tag1);
}

table.postindex {
    width: 100%;
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
    background: transparent;
    box-shadow: none;
}

table.postindex cite {
    font-style: normal;
}

table.postindex td {
    padding: 0.65rem 0;
    border: 0;
    border-bottom: 1px solid var(--color-border);
    background: transparent;
}

table.postindex tr:nth-child(even) td {
    background: transparent;
}

table.postindex tr:last-child td {
    border-bottom: 0;
}

table.postindex td.right {
    width: 11ex;
    color: var(--color-tag1);
    text-align: right;
    white-space: nowrap;
}

.header-section-number {
    margin-right: 0.55rem;
    color: var(--color-tag1);
}

.header-section-number:after {
    content: ".";
}

.csl-entry {
    display: table;
    width: 100%;
    margin-bottom: 0.75rem;
    table-layout: auto;
}

.csl-left-margin {
    display: table-cell;
    width: 1px;
    padding-right: 0.75em;
    color: var(--color-tag1);
    white-space: nowrap;
}

.csl-right-inline {
    display: table-cell;
}

.csl-right-inline a {
    word-break: break-all;
}
