.swl-theorem {
	margin: 1.5em 0;
	padding: 0.95em 1.1em;
	border-left: 3px solid currentColor;
	background: rgba(127, 127, 127, 0.07);
}

.swl-theorem--definition {
	border-left-style: double;
}

.swl-theorem--remark {
	border-left-style: dotted;
	background: transparent;
}

.swl-theorem--proof {
	border-left: 0;
	padding-left: 0;
	background: transparent;
}

.swl-theorem-heading {
	margin-bottom: 0.35em;
	font-weight: 600;
}

.swl-theorem-name {
	font-style: italic;
	font-weight: 400;
}

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

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

.swl-ref,
.swl-cite {
	text-decoration: none;
	border-bottom: 1px solid currentColor;
}

.swl-cite-missing {
	color: #d63638;
	font-weight: 600;
}

.swl-bibtex {
	margin-top: 2em;
	padding-top: 1em;
	border-top: 1px solid rgba(127, 127, 127, 0.3);
	font-size: 0.92em;
}

.swl-bibtex-title {
	margin: 0 0 0.7em;
	font-size: 1.1em;
}

.swl-bibtex ol {
	margin: 0;
	padding-left: 1.8em;
}

.swl-bibtex li {
	margin-bottom: 0.55em;
	line-height: 1.6;
}

.swl-bibtex-title {
	font-weight: 600;
}

.swl-bibtex-links {
	white-space: nowrap;
}


.swl-list {
	margin: 0.8em 0;
	padding-left: 1.8em;
}

.swl-center {
	text-align: center;
}

.swl-section {
	margin: 1.5em 0 0.6em;
}

.swl-includegraphics {
	display: block;
	max-width: 100%;
	height: auto;
	margin: 1em auto;
}

.swl-footnote {
	font-size: 0.85em;
	color: inherit;
	opacity: 0.85;
}

.swl-latex-figure {
	margin: 1.6em auto;
	text-align: center;
}

.swl-latex-figure .swl-includegraphics {
	margin: 0.4em auto;
}

.swl-figure-caption {
	margin-top: 0.6em;
	font-size: 0.92em;
	color: inherit;
	opacity: 0.9;
}

.swl-footnotes {
	margin-top: 2em;
	padding-top: 1em;
	border-top: 1px solid rgba(127, 127, 127, 0.3);
	font-size: 0.88em;
}

.swl-footnotes-title {
	margin: 0 0 0.6em;
	font-size: 1em;
}

.swl-footnotes ol {
	padding-left: 1.6em;
}

.swl-footnotes li {
	margin-bottom: 0.45em;
}

.swl-footnote-ref a {
	text-decoration: none;
}

.swl-footnote-back {
	margin-left: 0.35em;
	text-decoration: none;
}

.swl-frame {
	margin: 1.5em 0;
	padding: 1em 1.2em;
	border: 1px solid rgba(127, 127, 127, 0.28);
	border-radius: 6px;
}

.swl-frame-title {
	margin: 0 0 0.5em;
	font-size: 1.12em;
}

.swl-frame-subtitle {
	margin: 0 0 0.7em;
	font-size: 0.98em;
	font-weight: 500;
	opacity: 0.85;
}

.swl-frame-body > :first-child {
	margin-top: 0;
}

.swl-columns {
	display: flex;
	flex-wrap: wrap;
	gap: 1.2em;
	align-items: flex-start;
}

.swl-column {
	flex: 1 1 240px;
	min-width: 0;
}


.swl-table-figure {
	margin: 1.6em 0;
	overflow-x: auto;
}

.swl-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.95em;
}

.swl-table th,
.swl-table td {
	padding: 0.5em 0.7em;
	border: 1px solid rgba(127, 127, 127, 0.3);
	text-align: left;
	vertical-align: top;
}

.swl-table th {
	font-weight: 600;
	background: rgba(127, 127, 127, 0.08);
}

.swl-table-caption {
	margin-top: 0.6em;
	font-size: 0.92em;
	text-align: center;
}
