.topic {
	.topic-header {
		top: var(--panel-offset);
		z-index: $zindex-dropdown; // allows for top nav dropdowns to appear on top
		[component="topic/browsing-users-label"] {
			display:none!important;
		}
	}

	.posts {
		.icon {
			position: relative;
			border-radius: 50%;
			min-width: 46px;
			min-height: 46px;
			margin-top: 2px;


			> a > .status {
				display: inline-block;
				width: 4px;
				height: 4px;
				position: absolute;
				right: 12px;
				font-size: 12px;
				top: 0px;
				z-index: 1;

				@include media-breakpoint-up(md) {
					width: 15px;
					height: 15px;
					top: 2px;
					font-size: 16px;
				}
			}

			.avatar {
				margin-right: 15px;
			}
		}

		.status {
			vertical-align: 0%;
		}
	}

	.login-required {
		display: inline-block;
		padding: 0 0.5em;
		border: 1px dashed $gray-600;
	}

	.bookmarked {
		font-size: 16px;
		color: darken($post-highlight, 20%);
		opacity: 0;
		@include transition(0.75s ease-in-out opacity);
		margin-left: 5px;
	}

	[component="post/anchor"] {
		position: relative;
		top: -$post-padding;
	}

	[component="post/upvote"].upvoted i {
		@include fa-icon-solid($fa-var-circle-chevron-up);
		color: $primary;
	}

	[component="post/downvote"].downvoted i {
		@include fa-icon-solid($fa-var-circle-chevron-down);
		color: $primary;
	}

	.threaded-replies {
		margin-left: 60px;
		padding: 1rem 0px;
		text-decoration: none;

		img, .user-icon {
			@include user-icon-style(16px, 10px, 50%);
			vertical-align: 1px;
		}

		img {
			vertical-align: -4px;
		}

		.replies-count {
			margin-left: 3px;
		}

		.fa {
			font-size: 80%;
		}

		.avatars {
			position: relative;
		}
	}

	[component="post/replies"] {
		margin-left: 61px;
		margin-top: $post-padding;
		border-left: 5px solid #eee;
		padding-left: 20px;
		.timeline-event { display: none; }
		[component="post"]:last-child > hr {
			display: none;
		}
	}

	.stats {
		font-size: 12px;
		margin: 0px 2px 0px 2px;
		display: inline-block;
	}

	.content {
		margin-top: $post-padding;
		padding-bottom: 1px;
		margin-top: -43px;
		margin-left: 38px;
		word-wrap: break-word;
		overflow: hidden;
		min-height: 60px;
	}

	.post-signature {
		font-size: 12px;
		border-top: 1px dashed #dedede;
		padding: 1px;
		padding-top: 5px;
		display: block;
		font-style: italic;
		margin-left: 61px;
		max-width: 100%;
		word-wrap: break-word;
	}

	@include media-breakpoint-down(sm) {
		.content {
			margin-left: 0;
			margin-top: -10px;

			.table {
				overflow-x: auto;
				display: block;
			}
		}

		.post-signature {
			margin-left: 0px;
		}

		.posts .icon {
			min-width: 0;
			min-height: 0;
			margin-top: 0px;

			.avatar {
				@include user-icon-style(23px, calc(23px * 0.6), 50%);
			}
		}

		[component="post/reply-count"] {
			margin-left: 0;
		}

		[component="post/replies"] {
			margin-left: 1px;
		}
	}
}

.topic {
	&.deleted {
		opacity: 0.3;

		.votes {
			display: none;
		}
	}

	.posts {
		&.timeline {
			@include timeline-style;
		}

		list-style-type: none;
		padding: 0;

		[component="post"] {
			position: relative;
			@include transition(0.75s ease-in-out border-color);

			.edit-icon {
				vertical-align: -2%;
			}

			&.deleted {
				> .content {
					opacity: 0.3;
				}

				.votes {
					display: none;
				}
			}

			&.highlight {
				border-color: darken($post-highlight, 20%);
				box-shadow: 0px 2px 2px -2px $post-highlight;

				.bookmarked {
					opacity: 1;
				}
			}
		}

		.content {
			@include fix-lists;

			> blockquote {
				> blockquote {
					> *:not(.blockquote) {
						display: none;
					}
				}

				> blockquote.uncollapsed {
					> *:not(.blockquote) {
							display: block;
					}
				}
			}

			iframe, .img-fluid {
				max-width: 85%;
				display: inline;
			}

			pre {
				max-height: 350px;

				code {
					white-space: pre;
					word-wrap: normal;
					min-width: 100%;
				}
			}

			@include media-breakpoint-down(sm) {
				pre {
					max-height: 250px;
				}
			}
		}
	}

	.pagination-block {
		position: fixed;
		bottom: 0px;
		right: 0px;
		z-index: 100;
		transition: opacity 250ms ease-in;
		opacity: 0;

		.pagination-text {
			position: relative;
    		top: -3px;
    		font-weight: bolder;
		}

		&.ready {
			opacity: 1;
		}

		.wrapper {
			padding: 5px 0px 5px 0px;
			.dropdown-toggle {
				padding-left: 20px;
				padding-right: 20px;
				padding-top: 10px;
			}
			.dropdown-menu {
				width: 475px;

				li {
					padding: 15px;
				}
				.post-content {
					height: 350px;
					overflow: hidden;
				}
				.scroller-container {
					height: 300px;
					border-right: 3px solid $gray-200;
					margin-right: 3px;
					cursor: pointer;
					.scroller-thumb {
						height: 40px;
						position: relative;
						right: -6px;
						padding-right: 15px;
    					margin-right: -15px;


						.scroller-thumb-icon {
							width: 9px;
							height: 40px;
							background-color: $primary;
							position: relative;
							display: inline-block;
							border-radius: 3px;
						}
						.thumb-text {
							font-weight: bolder;
							user-select: none;
							position: relative;
							top: -15px;
							padding-right: 10px;
						}
					}
				}
			}
			@include media-breakpoint-down(sm) {
				.dropdown-menu {
					width: 100%;
				}
			}
		}
		.progress-bar {
			display:block;
			z-index: -1;
			position: absolute;
			transition: width 50ms ease-in;
			height: 100%;
		}
	}
	@include media-breakpoint-down(sm) {
		.pagination-block {
			width: 100%;
		}
	}
}

[component="post"] {
	>.post-header [component="user/picture"], >.post-header [component="user/status"] {
		opacity: 1;
	}

	>.post-header .icon:before {
		opacity: 0;
	}

	&.selected {
		background-color: initial;

		>.post-header .icon:before {
			border: 1px solid $success;
    		color: $white;
			background-color: $success;
    		-webkit-transition: .2s ease-in-out all;
    		transition: .2s ease-in-out all;
			content: fa-content($fa-var-check);
    		padding: 14px;
		    border-radius: 50%;
		    opacity: 1;
		    position: absolute;
		    display: inline-block;
		    font: normal normal normal 14px/1 FontAwesome;
		}

		>.post-header [component="user/picture"], >.post-header [component="user/status"] {
			opacity: 0;
		}
	}
}
