/* S2OJ Bootstrap 5 Theme */

body {
	overflow-y: scroll;
}

pre {
	tab-size: 4;
}

.uoj-username,
.uoj-score {
	font-weight: 800;
	text-decoration: none;
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
		'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji',
		'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
}

.form-group {
	margin-bottom: 1rem;
}

.form-inline .form-control {
	display: inline-block;
	width: auto;
	vertical-align: middle;
}

.form-row {
	display: flex;
	flex-wrap: wrap;
	margin-right: -5px;
	margin-left: -5px;
}

.form-row > .col {
	padding-left: 5px;
	padding-right: 5px;
}

label {
	margin-bottom: 0.5rem;
}

.float-right {
	float: right;
}

.uoj-table > tbody > tr:last-child {
	border-bottom-color: transparent;
}

.uoj-click-zan-block {
	display: inline-block;
	min-width: 140px;
	text-align: left;
	font-size: 0.9em;
}

.uoj-click-zan-up,
.uoj-click-zan-down,
.uoj-click-zan-cnt {
	margin-left: 5px;
	margin-right: 5px;
}

.uoj-click-zan-block-cur-up .uoj-click-zan-up {
	color: green;
	font-weight: 700;
}
.uoj-click-zan-block-cur-down .uoj-click-zan-down {
	color: red;
	font-weight: 700;
}
.uoj-click-zan-block-cur-down .uoj-click-zan-up,
.uoj-click-zan-block-cur-up .uoj-click-zan-down {
	color: gray;
}

.uoj-click-zan-block-positive .uoj-click-zan-cnt {
	color: green;
}
.uoj-click-zan-block-neutral .uoj-click-zan-cnt {
	color: gray;
}
.uoj-click-zan-block-negative .uoj-click-zan-cnt {
	color: red;
}

.uoj-submission-result-item {
	cursor: pointer;
}

.card-uoj-accepted > .card-header:hover,
.card-uoj-accepted > div.card-header > div > .uoj-status-text {
	color: #25ad40;
}

.card-uoj-acceptable-answer > .card-header:hover,
.card-uoj-acceptable-answer > div.card-header > div > .uoj-status-text {
	color: #01bab2;
}

.card-uoj-tle > .card-header:hover,
.card-uoj-tle > div.card-header > div > .uoj-status-text {
	color: sandybrown;
}

.card-uoj-wrong > .card-header:hover,
.card-uoj-wrong > div.card-header > div > .uoj-status-text {
	color: #ff4f4f;
}

.markdown-body h1 {
	font-size: 2em;
	margin-bottom: 1rem;
}

.markdown-body h2 {
	font-size: 1.75em;
	margin-bottom: 1rem;
}

.markdown-body h3 {
	font-size: 1.5em;
}

.markdown-body h4 {
	font-size: 1.25em;
}

.markdown-body h5 {
	font-size: 1em;
	font-weight: bold;
}

.markdown-body h6 {
	font-size: 0.9em;
	font-weight: bold;
}

.markdown-body img {
	max-width: 100%;
}

.markdown-body pre {
	padding: 1em;
	background-color: rgba(var(--bs-light-rgb));
}

.markdown-body table th[align='left'] {
	text-align: left;
}

.markdown-body table th[align='center'] {
	text-align: center;
}

.markdown-body table th[align='right'] {
	text-align: right;
}

form.uoj-form-inline {
	display: inline-block;
	margin-right: 0.3em;
}

form.uoj-form-narrow label.col-sm-2 {
	max-width: 100% !important;
	padding: 0 !important;
}

form.uoj-form-narrow div.col-sm-3 {
	max-width: 100% !important;
	padding: 0 !important;
}

form.form-horizontal {
	margin-bottom: 8px;
}

form.uoj-form-compressed {
	margin: 12px 0;
}

form.uoj-form-compressed div.form-group {
	display: inline-block;
	width: 24em;
}

form.uoj-form-compressed div.form-group label.col-sm-2 {
	display: inline-block;
	max-width: 100%;
	width: 6em;
	padding: 0;
}

form.uoj-form-compressed div.form-group div.col-sm-3  {
	display: inline-block;
	max-width: 100%;
	width: 16em;
}

form.uoj-form-compressed div.text-center,
form.uoj-form-compressed div.text-compressed,
form.uoj-form-compressed button {
	display: inline-block;
}

form.uoj-form-compressed button {
	position: relative;
	top: -6px;
}