.tux-message-editor {
	position: relative;
	border: 1px solid #777;
	background-color: #fff;
	cursor: default;
	box-shadow: 0 2px 6px rgba( 0, 0, 0, 0.3 );
}

.grid .tux-message-editor .close {
	background: no-repeat center center;
	/* @embed */
	background-image: linear-gradient( transparent, transparent ), url( ../images/close.svg );
	padding: 16px;
	cursor: pointer;
	float: right;
	opacity: 0.87;
}

.grid .tux-message-editor .editor-info-toggle {
	padding: 16px;
	cursor: pointer;
	float: right;
}

.tux-message-editor .editor-contract {
	background: no-repeat center center;
	/* @embed */
	background-image: linear-gradient( transparent, transparent ), url( ../images/contract-ltr.svg );
}

.tux-message-editor .editor-expand {
	background: no-repeat center center;
	/* @embed */
	background-image: linear-gradient( transparent, transparent ), url( ../images/expand-ltr.svg );
}

.tux-message-editor .editcolumn {
	border-right: 1px solid #aaa;
	transition: width 0.5s;
	background-color: #fff;
	z-index: 1;
	/* Padding to have space for the arrow indicating split section */
	padding-right: 40px;
}

.grid .tux-message-editor--expanded .editcolumn {
	width: 100%;
	padding-right: 5px;
}

.grid .tux-message-editor .tux-editor-titletools {
	/* Ignore the padding added for the arrow */
	margin-right: -40px;
}

.grid .tux-message-editor--expanded .tux-editor-titletools {
	margin-right: -5px;
}

.tux-message-editor textarea {
	border: 1px solid #555;
	font-size: 16px;
	/* The (30px + 5px paddings) 40px for bottom is for the insertables */
	padding: 5px 5px 40px 5px;
	/* Normalize margin across skins (esp. Timeless) */
	margin: 0;
	height: 100px;
	min-height: 150px;
	overflow-y: auto;
	position: relative;
	z-index: 100;
	/* We have automatic resizing for height, and horizontal makes no sense */
	resize: none;
	/* Avoid weird extra space appearing at the bottom of enclosing div when
	 * the default value inline-block is used in Chrome.
	 * https://stackoverflow.com/questions/5196424/inconsistent-textarea-handling-in-browsers */
	display: block;
}

.tux-editor-editsummary-block input {
	border: 1px solid #c0c0c0;
	font-size: 14px;
	width: 100%;
	height: 30px;
	margin: 5px 0 0;
	padding: 1px 4px;
}

.tux-editor-editsummary-block input:disabled {
	background-color: #f8f8f8;
}

.tux-message-editor .editarea {
	position: relative;
}

/* Temporary fix for T111685 */
.grid .tux-message-editor .messagekey {
	color: #222;
	font-size: 13px;
	font-weight: bold;
	padding: 5px 0 5px 10px;
	cursor: pointer;
}

.tux-message-editor .messagekey .caret {
	border-top: 4px solid #222;
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	display: inline-block;
	vertical-align: middle;
	margin: 0 4px;
}

/* Temporary fix for T111685 */
.grid .tux-message-editor .sourcemessage {
	font-size: 18px;
	line-height: 1.6em;
	padding: 5px 0 10px 10px;
	word-wrap: break-word;
}

.tux-message-editor .sourcemessage.long {
	font-size: 16px;
}

.tux-message-editor .sourcemessage.longer {
	font-size: 14px;
}

.tux-message-editor .shortcutinfo {
	color: #54595d;
	font-size: 13px;
	padding: 0 5px 5px 10px;
	display: none;
}

@media screen and ( min-width: 980px ) {
	.tux-message-editor .shortcutinfo {
		display: block;
	}
}

.tux-message-editor .infocolumn-block .infocolumn {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 10px;
	padding: 0 5px;
	overflow: auto;
}

/* Temporary fix for T111685 */
.grid .tux-message-editor .infocolumn-block {
	font-size: 12pt;
	background: #fcfcfc;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	padding: 0;
	transition: width 0.5s;
}

.tux-message-editor__caret:before,
.tux-message-editor__caret:after {
	border-top: 20px solid transparent;
	border-right: 20px solid #aaa;
	border-bottom: 20px solid transparent;
	content: '';
	display: inline-block;
	left: -21px;
	position: absolute;
	bottom: 50%;
	z-index: 2;
	transition: visibility 0s 0.5s;
}

.tux-message-editor__caret:after {
	border-right: 20px solid #fcfcfc;
	left: -20px;
}

.tux-message-editor--expanded .tux-message-editor__caret:before,
.tux-message-editor--expanded .tux-message-editor__caret:after {
	visibility: hidden;
	transition: visibility 0s 0s;
}

.infocolumn-block .infocolumn .message-desc-editor {
	padding: 5px 0;
	margin-right: 5px;
}

.tux-textarea-documentation {
	height: 100px;
	overflow: auto;
}

.infocolumn-block .infocolumn .message-desc {
	font-size: 16px;
	padding: 5px 0;
	margin-right: 5px;
}

.infocolumn-block .infocolumn .message-desc.long {
	font-size: 14px;
	border-bottom: 1px solid #ddd;
}

.infocolumn-block .infocolumn .message-desc.compact {
	max-height: 100px;
	overflow: hidden;
	text-overflow: ellipsis;
}

.message-desc-control {
	font-size: 14px;
	padding: 3px 0 5px 0;
}

.message-desc-control .read-more {
	font-size: 14px;
	color: #36c;
	cursor: pointer;
	margin-right: 5px;
}

.message-desc-edit {
	background: left center no-repeat;
	background-image: /* @embed */ linear-gradient( transparent, transparent ), url( ../images/action-edit.svg );
	background-size: 18px 18px;
	padding-left: 19px;
}

.tm-suggestions-title,
.in-other-languages-title {
	font-size: 16px;
	font-weight: bold;
	padding: 10px 0;
}

.tm-suggestion,
.in-other-language {
	font-size: 14px;
	border: 1px solid #ddd;
	border-left: 2px solid #36c;
	padding: 5px 5px 5px 10px;
	background-color: #f5f5f5;
}

.tux-tm-suggestion-source,
.tux-translation-aid-error {
	font-size: 13px;
	margin-bottom: 15px;
}

.tux-translation-aid-error {
	margin-top: 15px;
	margin-right: 15px;
}

.grid .row .tm-suggestion,
.grid .row .in-other-language {
	margin: 0 5px 3px -5px;
}

.tm-suggestion:hover,
.in-other-language:hover {
	cursor: pointer;
	box-shadow: 0 0 3px rgba( 0, 0, 0, 0.2 );
}

.in-other-language .language {
	color: #54595d;
	overflow: hidden;
	text-overflow: ellipsis;
}

.tux-message-editor .help {
	font-size: 16px;
	padding: 10px 5px;
}

.tux-message-editor .help a {
	font-size: 14px;
	padding: 0 0 0 5px;
}

.editarea .tux-notices-block {
	position: relative;
}

.tux-notice {
	background-color: #ffc;
}

.tux-highlight {
	background-color: #c9c9c9;
}

.tux-notice-message {
	font-size: 14px;
	padding: 2px 13% 2px 5px;
	/* 24px space for icon */
	padding-left: 24px;
	background-position: left;
	background-repeat: no-repeat;
	/* 16 (size) + 4 + 4 = 24 (padding) */
	background-position-x: 4px;
	background-size: 16px 16px;
}

.tux-notice .diff {
	/** Uses an older version of the clock */
	background-size: 14px;
	/* 14 (size) + 5 + 5 = 24 (padding) */
	background-position-x: 5px;
}

.tux-notice .diff-deletedline,
.tux-notice .diff-addedline {
	font-size: 0.75em;
	font-family: monospace;
}

.editarea .tux-more-notices {
	background-color: #fbf6ad;
	position: absolute;
	right: 0;
	padding: 2px 5px;
	text-align: right;
	cursor: pointer;
	bottom: 0;
	font-size: 14px;
}

.tux-notice-message.warning {
	background-image: url( ../images/label-flag.svg );
}

.tux-notice-message.error,
.tux-notice-message.translation-saving {
	background-color: #fee7e6;
	color: #b32424;
	background-image: url( ../images/label-error.svg );
}

.tux-notice-message.diff {
	background-image: url( ../images/label-clock.svg );
}

.tux-notice-message .show-diff-link {
	color: #36c;
	cursor: pointer;
	padding-left: 5px;
}

.tux-notice-message .diff td.diff-marker {
	font-size: 1.2em;
	padding: 0;
}

.editarea .tux-more-notices:before {
	content: '';
	border-bottom: 1em solid #fbf6ad;
	border-top: 1em solid transparent;
	border-left: 1em solid transparent;
	border-right: 1em solid #fbf6ad;
	display: inline-block;
	position: absolute;
	right: 100%;
	top: 0;
}

.editarea .tux-more-notices.tux-has-errors {
	background-color: #fbb;
}

.editarea .tux-more-notices.tux-has-errors:before {
	border-bottom-color: #fbb;
	border-right-color: #fbb;
}

.tux-editor-request-right {
	font-size: 13px;
	padding: 0 5px;
	color: #54595d;
}

.tux-editor-ask-permission {
	padding: 0 5px;
}

.tux-editor-editarea-block {
	padding: 0 5px;
}

.tux-editor-editsummary-block {
	padding: 0 5px;
}

.tux-editor-actions-block {
	position: relative;
}

/* Temporary fix for T111685 */
.grid .tux-editor-actions-block .tux-editor-insert-buttons {
	position: absolute;
	/* 30px + 5px padding on bottom */
	top: -35px;
	margin-left: 10px;
	padding-right: 20px;
	z-index: 110;
}

.tux-editor-insert-buttons button {
	padding: 0 5px;
	min-width: 30px;
	margin-right: 5px;
	margin-bottom: 5px;
	border: 1px solid #ddd;
	background: #fbfbfb;
	color: #222;
	font-size: 13px;
	line-height: 30px;
	overflow-wrap: anywhere;
}

.tux-editor-insert-buttons .tux-editor-paste-original-button {
	background: #fbfbfb left center no-repeat;
	/* @embed */
	background-image: linear-gradient( transparent, transparent ), url( ../images/paste.svg );
	background-size: 16px 16px;
	padding-left: 18px;
}

.message-desc-editor .mw-ui-button,
.tux-editor-control-buttons .mw-ui-button {
	margin: 10px 5px;
}

.sourcemessage,
.suggestiontext {
	white-space: pre-wrap;
}

.infocolumn .loading {
	color: #54595d;
	padding: 10px;
	font-size: 14px;
}

.tux-message-tools-menu li a {
	color: #54595d;
	display: block;
	font-size: 14px;
	padding: 0 2px;
	text-decoration: none;
}

.tux-message-tools-menu li a:hover {
	cursor: pointer;
	background-color: #f0f0f0;
	color: #222;
}

.tux-message-tools-menu li.selected {
	background: right no-repeat;
	/* @embed */
	background-image: linear-gradient( transparent, transparent ), url( ../images/label-tick.svg );
	color: #222;
}

/*
 * Hide the cancel button by default, but show it in the last message.
 * !important is used to override the button styling in ULS.
*/
.tux-editor-cancel-button {
	display: none !important;
}

.last-message .tux-editor-cancel-button {
	display: inline-block !important;
}

.last-message .tux-editor-skip-button {
	display: none;
}

.shortcut-popup {
	width: 18px;
	height: 18px;
	line-height: 18px;
	overflow: hidden;
	font-size: 13px;
	text-align: center;
	border: 1px dashed #808080;
	border-radius: 100%;
	z-index: 110;
	background-color: #fff;
	padding: 3px;
}
