#app-mount {
	// General messages
	.message__5126c {
		.scrollableContainer__74017 {
			background: var(--edit-message-box);
			box-shadow: none;
			.slateTextArea_ec4baf {
				padding-left: 15px;
			}
		}
		// Buttons
		.wrapper_f7ecac {
			background: var(--background-light);
			box-shadow: var(--box-shadow-alt);
		}
		.button_f7ecac {
			height: 100%;
			padding: 0 6px;
			&:hover {
				background: rgb(var(--accent), 1);
				color: var(--accent-text);
			}
			&.dangerous_f7ecac:hover {
				background: rgb(var(--discord-red) / 1);
			}
		}
		&.selected__5126c,
		&:hover {
			&::before {
				background: var(--message-hover, var(--background-alt));
			}
		}
	}

	// Cozy
	.cozy_c19a55 {
		background: transparent;
		padding-top: var(--message-padding);
		padding-bottom: var(--message-padding);
		padding-left: 0;
		margin-left: 16px;
		margin-right: 8px;
		position: relative;
		// Rounded background
		&:before {
			content: '';
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			border-radius: var(--message-border-radius, var(--border-radius));
			background: var(--background-alt);
			z-index: -1;
		}
		// Fix positioning for message contents (text and images)
		.contents_c19a55,
		.container_b7e1cb {
			margin-left: calc(40px + (var(--message-padding) * 2));
		}
		// Fix positioning for avatar
		.avatar_c19a55 {
			left: var(--message-padding);
			top: var(--message-padding);
			margin-top: 0;
		}
		// Add custom spacing between messages
		&.groupStart__5126c {
			margin-top: var(--message-spacing);
		}
		// Every message after groupStart that's not groupStart
		&.cozy_c19a55:not(.groupStart__5126c) {
			margin-top: calc(var(--message-padding) / -1);
			padding-top: 0.175rem;
		}
		// Reduce negative margin and padding
		.messageContent_c19a55 {
			margin-left: -5px;
			padding-left: 5px;
		}

		// Timestamps
		.timestamp_c19a55.alt_c19a55 {
			width: calc(40px + var(--message-padding));
			display: flex;
			justify-content: center;
		}

		// Mentioned
		&.mentioned__5126c {
			.messageContent_c19a55 {
				position: relative;
				&:not(.repliedTextContent-1R3vnK) {
					color: var(--text-focus);
				}
				&:after {
					content: '';
					position: absolute;
					top: 0;
					left: 0;
					border-radius: 0 var(--border-radius) 0 0;
					height: 100%;
					width: calc(100% - var(--message-padding));
					border-left: 2px solid rgb(var(--discord-yellow) / 1);
					background: var(--background-mentioned);
					pointer-events: none;
				}
			}
			.container_b7e1cb {
				position: relative;
				&:before {
					content: '';
					position: absolute;
					pointer-events: none;
					top: 0;
					left: -5px;
					height: 100%;
					width: calc(100% - var(--message-padding) + 5px);
					border-left: 2px solid rgb(var(--discord-yellow) / 1);
					background: var(--background-mentioned);
					border-radius: 0 0 var(--border-radius) 0;
				}
			}
		}

		// Replied quote
		.repliedMessage_c19a55 {
			margin-left: calc(var(--message-padding) + 56px);
			& + .contents_c19a55 {
				.avatar_c19a55,
				img {
					top: 32px;
				}
			}
			&:before {
				border-color: var(--text-muted);
			}
		}
		.repliedTextPreview_c19a55 .messageContent_c19a55 {
			padding-left: 8px;
			padding-right: 4px;
			margin-left: 0;
			&::after {
				left: 4px;
				width: 100%;
			}
		}

		// Reset role icon positioning in replies - Fix Nr 2
		[class^="roleIcon"] {
     		top: unset;
     		position: unset;
   		}

		// Thread bar thingy
		&.hasThread_c19a55::after {
			left: 1.8rem;
			top: 3.5rem;
			width: 1.5rem;
		}
	}

	// Codeblocks
	.hljs-comment {
		color: var(--text-muted);
	}

	// Mentions & Chat jumps
	.wrapper_d4fa29 {
		background: rgb(var(--accent), 0.1);
		color: rgb(var(--accent), 1);
		&:hover,
		&.popout-open {
			background: rgb(var(--accent), 1);
			color: var(--accent-text);
		}
	}

	// Message placeholders
	.wrapper__0d1ef {
		background: transparent;
	}
	// Pretty much the same as #L3
	.wrapper_fc8177 {
		background: transparent;
		padding-top: var(--message-padding);
		padding-bottom: var(--message-padding);
		padding-left: 0;
		margin-left: 16px;
		margin-right: 8px;
		position: relative;
		&:before {
			content: '';
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			border-radius: var(--message-border-radius, var(--border-radius));
			background: var(--background-alt);
			z-index: -1;
		}
		.contents_fc8177,
		.attachmentContainer_fc8177 {
			padding-left: calc(40px + (var(--message-padding) * 2));
		}
		.avatar_c19a55 {
			left: var(--message-padding);
			top: var(--message-padding);
			margin-top: 0;
		}
		&[style*='margin-top'] {
			margin-top: var(--message-spacing) !important;
		}
		& + .wrapper_fc8177:not([style*='margin-top']) {
			margin-top: calc(var(--message-padding) / -1);
			padding-top: 0.175rem;
		}
	}

	// Embeds
	.embedFull__623de {
		background: var(--background-dark);
	}

	// Attachments
	.fileWrapper__0ccae,
	.wrapperAudio_f316dd {
		background: var(--background-dark);
		border-radius: var(--border-radius);
		border: none;
	}
	.textContainer__4d95d {
		border: none;
		background: var(--background-dark);
		border-radius: var(--border-radius) var(--border-radius) 0 0;
	}
	.footer__4d95d {
		background: var(--background);
		border: none;
	}

	// Code blocks
	pre code,
	code.inline {
		background: var(--background-dark);
		border-radius: var(--border-radius);
		border: none;
	}

	// Reactions
	.reaction_f8896c {
		background: var(--background);
		&.reactionMe_f8896c {
			background: rgb(var(--accent), 0.2);
			border-color: rgb(var(--accent), 1);
			.reactionCount_f8896c {
				color: rgb(var(--accent), 1);
			}
		}
	}

	// Spoilers
	.spoilerText-27bIiA.hidden-3B-Rum {
		background: var(--background-dark);
	}
}
