/**
 * This file provides styles for the diff view, which shows you
 * differences between two versions of a page (?do=diff).
 */

.mode_diff table.diff {
	width: 100%;
	border-width: 0;
}
.mode_diff table.diff th,
.mode_diff table.diff td {
	vertical-align: top;
	padding: 0;
	border-width: 0;
	/* no style.ini colours because deleted and added lines have a fixed background colour */
	background-color: #fff;
	color: #333;
}

/* table header */
.mode_diff table.diff th {
	border-bottom: 1px solid @ini_border;
	font-size: 110%;
	font-weight: normal;
}
.mode_diff table.diff th a {
	font-weight: bold;
}
.mode_diff table.diff th span.user {
	font-size: .9em;
}
.mode_diff table.diff th span.sum {
	font-size: .9em;
	font-weight: bold;
}
.mode_diff table.diff th.minor {
	color: #999;
}
.mode_diff table.diff_sidebyside th {
	width: 50%;
}

/* table body */
.mode_diff table.diff .diff-lineheader {
	width: .7em;
	text-align: right;
}
[dir=rtl] .mode_diff table.diff .diff-lineheader {
	text-align: left;
}
.mode_diff table.diff .diff-lineheader,
.mode_diff table.diff td {
	font-family: @ini_mono_fonts;
	background-color:	#F6F8FA;
}
.mode_diff table.diff td.diff-blockheader {
	font-weight: bold;
}
.mode_diff table.diff .diff-addedline {
	background-color: #E4FFEE;
	color: inherit;
}
.mode_diff table.diff .diff-deletedline {
	background-color: #FFEEF0;
	color: inherit;
}
.mode_diff table.diff td.diff-context {
	background-color: #FFF;
	color: inherit;
}
.mode_diff table.diff td.diff-addedline strong {
	color:				#23292E;
	background-color:	#A5F2C1;
	font-weight:		normal;
}
.mode_diff table.diff td.diff-deletedline strong {
	color:				#23292E;
	background-color:	#FFB7BF;
	font-weight:		normal;
}

/* diff options */

.mode_diff .diffoptions form {
	float: left;
}
.mode_diff .diffoptions p {
	float: right;
}

/* diff nav */

.mode_diff table.diff_sidebyside td.diffnav {
	padding-bottom: .7em;
}
.mode_diff .diffnav a {
	display: inline-block;
	vertical-align: middle;
}
.mode_diff .diffnav a span {
	display: none;
}

.mode_diff .diffnav a:hover,
.mode_diff .diffnav a:active,
.mode_diff .diffnav a:focus {
	background-color: @ini_background_alt;
	text-decoration: none;
}

.mode_diff .diffnav a:before {
	display: inline-block;
	line-height: 1;
	padding: .2em .4em;
	border: 1px solid @ini_border;
	border-radius: 2px;
	color: @ini_text;
}

.mode_diff .diffnav a.diffprevrev:before {
	content: '\25C0'; /* left triangle */
}
.mode_diff .diffnav a.diffnextrev:before,
.mode_diff .diffnav a.difflastrev:before {
	content: '\25B6'; /* right triangle */
}
.mode_diff .diffnav a.diffbothprevrev:before {
	content: '\25C0\25C0';
}
.mode_diff .diffnav a.diffbothnextrev:before {
	content: '\25B6\25B6';
}

.mode_diff .diffnav select {
	width: 60%;
	min-width: 9em;
	height: 1.5em; /* height is necessary for longer options in Webkit */
}

.mode_diff .diffnav select option[selected] {
	font-weight: bold;
}

/* dark mode overrides */
@media (prefers-color-scheme: dark) {
	
	body.mode_diff.darkmode  table.diff .diff-lineheader,
	body.mode_diff.darkmode  table.diff th,
	body.mode_diff.darkmode  table.diff td {
		background-color:	#1C2125;
		color:				#D0D5DA;
	}
	body.mode_diff.darkmode table.diff td.diff-context {
		background-color:	#23292E;
	}
	body.mode_diff.darkmode  table.diff .diff-deletedline {
		background-color:	#49090F;
	}
	body.mode_diff.darkmode  table.diff .diff-addedline {
		background-color:	#0A3A1E;
	}
	body.mode_diff.darkmode  table.diff td.diff-addedline strong {
		color:				#FFF;
		background-color:	#038642;
	}
	body.mode_diff.darkmode  table.diff td.diff-deletedline strong {
		color:				#FFF;
		background-color:	#BB0E27;
	}
	body.mode_diff.darkmode  .diffnav a::before {
		color:				@ini_text_dark;
		border:				transparent none 0;
	}
	body.mode_diff.darkmode  .diffnav select {
		background-color:	@ini_background_site_dark;
		color:				@ini_text_dark;
		border:				transparent none 0;
	}
}