
html.rl-no-preview-pane {
	#rl-right:not(.message-selected) #V-MailMessageView {
		display: none;
	}
}

#V-MailMessageView.focused .messageView {
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
	border-color: darken(@rlMainDarkColor, 5%);
}

.messageView {
	background-color: #fff;
	border: 1px solid @rlMainDarkColor;
	border-radius: @rlMainBorderRadius;
	height: 100%;

	.toolbar {
		position: absolute;
		top: -50px - @rlLowMargin;
		right: 0;
		left: 0;
		height: 30px;
		padding: 10px 0;
		color: #fff;
	}

	.b-content {
		height: 100%;
	}

	.b-message {
		display: flex;
		flex-direction: column;
		height: 100%;
	}

	.b-message-view-checked-helper {
		text-align: center;
		font-size: 70px;
		line-height: 70px;
		padding-top: 100px;
		color: #999;
	}
	.b-message-view-checked-helper::after {
		content: ' ✉';
		font-family: snappymail;
	}

	.b-message-view-desc {
		text-align: center;
		font-size: 24px;
		line-height: 30px;
		color: #999;
		padding: 120px 10px 0 10px;
	}

	.b-message-view-desc.error {
		color: #DA4F49;
	}

	.message-fixed-button-toolbar {
		z-index: 100;
		position: absolute;
		top: 33px;
		right: 10px;
	}

	.infoParent {
		cursor: pointer;
		opacity: 0.5;

		&:hover {
			opacity: 1;
		}
	}

	.flagParent {

		cursor: pointer;
		margin: 0 0.25em;

		.flagOn {
			color: orange;
		}

		&.flagOff:not(:hover) {
			opacity: 0.5;
		}
	}

	.messageTags {
		margin-top: 6px;
	}
	.messageTags span span {
		border: 1px solid #808080;
		padding: 2px;
	}

	.messageItemHeader {

		background-color: #f8f8f8;
		border-bottom: 1px solid #ddd;
		border-radius: @rlMainBorderRadius @rlMainBorderRadius 0 0;
		padding: 10px;
		flex-shrink: 0;

		.subjectParent {
			display: flex;
			font-size: 18px;
			font-weight: bold;
			margin-bottom: 8px;
		}

		.subject, .emptySubjectText {
			flex-grow: 1;
			overflow: hidden;
			text-overflow: ellipsis;
			white-space: nowrap;
		}

		.messageButtons {
			margin-top: 5px;
		}

		.informationShort {
			margin: 4px 40px 0 0;
			overflow: hidden;
			text-overflow: ellipsis;

			a {
				.g-ui-link;
			}
		}

		.informationShortWrp {
			max-height: 100px;
			overflow-y: auto;
		}

		.informationFull {
			margin-top: 30px;


			table {
				border-spacing: 0;
				width: 100%;
			}

			td {
				padding: 4px;
				vertical-align: top;
				min-width: 43px;
			}

			td:first-child {
				border-right: 1px solid #999;
				text-align: right;
				white-space: nowrap;
				width: 1%;
			}

			td + td {
				word-break: break-all;
			}
		}

		.emptySubjectText {
			font-style: italic;
			font-weight: normal;
			color: #999;
		}

		.hasVirus {
			background: #f00;
			color: #fff;
			padding: 3px;
		}
	}

	.openpgp-control {
		margin: 0.5em;
		padding: 0.5em;

		span {
			margin-right: 1em;
		}

		button {
			cursor: pointer;
		}

		&.encrypted {
			border: 1px dashed #18F;
			color: #18F;
		}
		&.signed {
			border: 1px dashed #FA0;
			color: #FA0;
		}

		&.success {
			border-color: #090;
			color: #090;
		}
		&.error {
			border-color: #F00;
			color: #F00;
		}
		&.error button,
		&.success button {
			display: none;
		}
	}
	.b-text-part > iframe {
		min-height: 50vh;
	}

	.thread-controls {
		.dropdown-toggle {
			padding-left: 10px;
			padding-right: 10px;
		}
		&.open .dropdown-toggle {
			padding-left: 10px;
			padding-right: 10px;
		}
	}
}

#messageItem {

	color: #000;
	height: 100%;
	overflow: auto;
	scroll-behavior: smooth;

	.buttonFull {
		display: inline-block;
		position: fixed;
		right: 8px;
		bottom: 8px;
		height: 30px;
		width: 30px;
		text-align: center;
		vertical-align: middle;
		line-height: 30px;
		background-color: transparent;
		background-color: #fff;
		border: 1px solid #333;
		color: #333;
		z-index: 2;
		cursor: pointer;
		border-radius: 5px;
		opacity: 0.5;

		&:hover {
			opacity: 0.8;
			border-color: #666;
			background-color: #888;
			color: #fff;
		}
	}

	.loading {
		text-align: center;
		font-size: 24px;
		color: grey;
		padding: 50px 0;
	}

	.showImages, .readReceipt, .pgpSigned, .pgpEncrypted {
		cursor: pointer;
		padding: 10px 15px;
		border-bottom: 1px solid #ddd;
		background-color: #eee;
	}

	.pgpInfo {
		padding: 5px 15px;
		border-bottom: 1px solid #ddd;
		background-color: #fcf8e3;

		&.success {
			background-color: #e9f4ff;
		}
	}

	.readReceipt {
		background-color: #ffffd9;
	}

	.attachmentsPlace {

		padding: 10px 10px 6px 10px;
		background: #eee;
		border-bottom: 1px solid #ddd;
		position: relative;

		.attachmentList {
			margin: 0;
		}

		&:not(.selection-mode) {
			.checkboxAttachment {
				display: none;
			}
		}

		.controls-handle {
			position: absolute;
			bottom: 5px;
			right: 8px;
			color: #999;
			cursor: pointer;
		}
	}

	.attachmentsControls {
		padding: 7px 5px 7px 14px;
		background: #e8e8e8;
		border-bottom: 1px solid #ddd;
	}

	.rlBlockquoteSwitcher {
		border: 1px solid #999;
		display: block;
		width: 3em;
		line-height: 1em;
		text-align: center;
		cursor: pointer;
		margin: 2em 0 10px;
		opacity: 0.5;
		&:hover {
			opacity: 1;
		}
	}

	.b-text-part {

		height: 100%;
		padding: 10px;

		a {
			color: blue;
			text-decoration: underline;

			&:visited {
				color: #609;
			}
			&:active {
				color: red;
			}
		}

		blockquote {
			border-left: 2px solid #000;
			opacity: 0.8;
			padding: 0 10px;
			margin: 0;
		}

		.rl-bq-switcher.hidden-bq {
			display: none;
		}

		&.html {

			img {
				max-width: 90vw;
				height: auto;
			}
			img[data-x-src]:not([src]) {
				border: 1px solid #999;
				position: relative;
			}
			img[data-x-src]:not([src])::after {
				content: "🖼";
				font-family: snappymail;
				position: absolute;
				top: 0;
				left: 0;
				color: #000;
				background-color: #fff;
			}
			img[data-x-src]:not([src]):hover::after {
				content: attr(data-x-src);
				font-family: var(--fontSans);
				font-size: 11px;
				height: auto;
				transform: translate(-25%,0);
				width: auto;
				width: -moz-fit-content;
				width: -webkit-fit-content;
				width: fit-content;
				z-index: 1000;
			}

			pre, code {
				margin: 0;
				border: none;
				word-break: normal;
				word-wrap: break-word;
			}

			code {
				border-radius: 0;
				display: inline;
				padding: 2px 5px;
			}

			pre {
				border-radius: 5px;
				display: block;
				padding: 5px 10px;
			}

			pre > code {
				padding: 0;
			}
		}

		&.plain {

			white-space: pre-wrap;
			font-family: var(--fontMono);

			pre {
				margin: 0;
				padding: 0;
				border: none;
				display: block;
				word-break: normal;
			}
		}

/*
		&.openpgp-signed,
		&.openpgp-encrypted {
			border: 1px dashed #FA0;

			&.success {
				border-color: green;
				background-color: rgba(0, 255, 0, 0.03);
			}
			&.error {
				border-color: red;
				background-color: rgba(255, 0, 0, 0.03);
			}
		}
*/
	}
}

html.rl-no-preview-pane .messageView {

	.toolbar {
		padding-left: 1px;
	}

	.b-content {
		top: 50px;
		left: 0;
		bottom: @rlBottomMargin;
		right: @rlBottomMargin;
		border: 1px solid @rlMainDarkColor;
		box-shadow: @rlMainShadow;
	}
}

html:not(.rl-mobile):not(.rl-no-preview-pane) .messageView {
	.top-toolbar {
		display: none;
	}
}

html.rl-bottom-preview-pane .messageView {
	.b-content {
		bottom: @rlBottomMargin;
	}
}

html.rl-fullscreen {

	#rl-left {
		display: none !important;
	}

	#rl-right {
		left: 0 !important;

		#V-MailMessageList,
		#V-SettingsPane,
		#V-SystemDropDown,
		#V-MailMessageView .messageView .toolbar {
			display: none !important;
		}
	}

	#V-SystemDropDown,
	.messageView .top-toolbar {
		display: none;
	}

	.messageView {
		border: 0;
	}

	.messageView .b-content {
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		border: 0;
	}
}

html:not(.rl-mobile) #messageItem {
	.buttonFull {
		display: none !important;
	}
}
