.hidden {
	display: none;
}

.darkenwrapper {
	display: none;
	position: relative;
	z-index: 44;
}

.loading_indicator {
	display: none;
	margin-top: -50px;
	margin-left: -50px;
	height: 50px;
	width: 50px;
	position: fixed;
	left: 50%;
	top: 50%;
	z-index: 51;
	vertical-align: -0.125em;
	border: 0.25em solid currentColor;
	border-right-color: transparent;
	border-radius: 50%;
	-webkit-animation: 0.75s linear infinite spinner-border;
	animation: 0.75s linear infinite spinner-border;
}

.branding h1,
.branding p {
	margin: 0;
}

.site_logo {
	background-image: url(./images/site_logo.svg);
	background-repeat: no-repeat;
	display: inline-block;
	width: 149px;
	height: 52px;
}

.header-avatar img {
	max-width: 25px;
	max-height: 25px;
}

.user-section {
	flex-direction: row-reverse;
}

.quick-links > .dropdown-toggle::after,
.notifications.dropdown-toggle::after,
.responsive-menu-footer .dropdown-toggle::after {
	display: none;
}

.notifications-list ul {
	max-height: 360px;
	overflow: auto;
}

.crumb:not(:first-child)::before {
	content: "\2039";
	font-weight: bold;
	padding: 0 0.5em;
}

.icon-mark {
	opacity: 0;
	position: absolute;
	top: 30%;
	right: 0;
	background-color: var(--bs-light);
	transition: opacity 250ms ease-in;
}

.notification-item:hover .icon-mark {
	opacity: 1;
}

.notification-list img {
	max-width: 50px;
	max-height: 50px;
}

.notifications ~ .dropdown-menu {
	width: clamp(250px, 90vw, 340px);
}

.username {
	text-decoration: none;
}

.username-coloured {
	font-weight: bold;
	display: inline !important;
	padding: 0 !important;
	text-decoration: none;
}

.postlink, .attachment-filename {
	word-wrap: break-word;
	word-break: break-word;
}

.forum-icon {
	display: flex;
	grid-row: 1 / -1;
	grid-column: 1 / -1;
	font-size: calc(var(--bs-body-font-size) * 2);
	color: var(--bs-light);
}

.unread-icon-link {
	grid-row: 1 / -1;
	grid-column: 1 / -1;
}


/* Icon styles
---------------------------------------- */
.fa.icon-blue,
a:hover .fa.icon-blue {
	color: var(--bs-blue, #196db5);
}

.fa.icon-green,
a:hover .fa.icon-green {
	color: var(--bs-green, #1b9a1b);
}

.fa.icon-red,
a:hover .fa.icon-red {
	color: var(--bs-pink, #bc2a4d);
}

.fa.icon-orange,
a:hover .fa.icon-orange {
	color: var(--bs-orange, #ff6600);
}

.fa.icon-bluegray,
a:hover .fa.icon-bluegray {
	color: var(--bs-gray-700, #536482);
}

.fa.icon-gray,
a:hover .fa.icon-gray {
	color: var(--bs-gray-600, #777777);
}

.fa.icon-lightgray,
a:hover .fa.icon-lightgray {
	color: rgba(var(--bs-secondary-rgb), 0.6);
}

.fa.icon-black,
a:hover .fa.icon-black {
	color: var(--bs-gray-dark, #333333);
}

/* Post poll styles
----------------------------------------*/

fieldset.polls ul {
	min-height: 20px;
}

.vote-submitted {
	font-size: 1.2em;
	font-weight: bold;
	text-align: center;
}

/* Post poll styles
----------------------------------------*/

fieldset.polls dl {
	border-top-color: #dcdee2;
	border-top-color: var(--bs-gray-300);
	color: rgba(var(--bs-secondary-rgb), 0.9);
}

fieldset.polls dl.voted {
	color: rgb(var(--bs-black-rgb,#000000));
}

fieldset.polls .resultbar div {
	min-width: 20px;
}

/* BB Code styles
----------------------------------------*/
/* Quote block */
blockquote {
	font-size: 0.95em;
	margin: 1em 1px 1em 10px;
	padding: 5px;
	border-inline-start: 3px solid var(--bs-primary);
	background-color: rgba(var(--bs-secondary-rgb), .2);
}

blockquote blockquote {
	/* Nested quotes */
	font-size: 1em;
	margin: 2em 1px 2em 15px;
	background-color: rgba(var(--bs-secondary-rgb), .1);
}

blockquote blockquote blockquote {
	/* Nested quotes */
	background-color: rgba(var(--bs-secondary-rgb), .2);
}

blockquote cite {
	/* Username/source of quoter */
	font-style: normal;
	font-weight: bold;
	display: block;
	font-size: 0.9em;
}

blockquote cite cite {
	font-size: 1em;
}

blockquote cite:before,
.uncited:before {
	padding-right: 5px;
}

blockquote cite > span {
	float: right;
	font-weight: normal;
}

blockquote cite:before,
.uncited:before {
	content: '\f10d';
}

blockquote cite:before,
.uncited:before {
	display: inline-block;
	font-family: FontAwesome;
	font-weight: normal;
	font-style: normal;
	font-variant: normal;
	font-size: 14px;
	line-height: 1;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

blockquote cite:before,
.uncited:before {
	padding-right: 5px;
}

.postbody .content li blockquote {
	overflow: inherit;
	margin-left: 0;
}

/* Code block */
.codebox {
	background-color: var(--bs-light);
	border: 1px solid var(--bs-gray-400);
	font-size: 1em;
	margin: 1em 0 1.2em 0;
	word-wrap: normal;
}

.codebox p {
	text-transform: uppercase;
	border-bottom: 1px solid var(--bs-gray-400);
	margin-bottom: 0;
	padding: 3px;
	font-size: 0.8em !important;
	font-weight: bold;
	display: block;
}

blockquote .codebox {
	margin-left: 0;
}

.codebox code {
	overflow: auto;
	display: block;
	height: auto;
	max-height: 200px;
	padding: 5px 3px;
	font: 0.9em Monaco, "Andale Mono", "Courier New", Courier, monospace;
	line-height: 1.3em;
	color: var(--bs-green);
}

/* Attachments
----------------------------------------*/
.attachbox {
	font-size: 0.8rem;
	width: max-content;
	border: 1px dashed transparent;
}

.attachbox dd {
	overflow-x: auto;
	overflow-y: hidden;
}

.attachbox p {
	line-height: 110%;
	font-weight: normal;
	color: rgba(var(--bs-secondary-rgb), 0.9);
}

.attachbox p.stats {
	line-height: 110%;
	font-weight: normal;
	color: rgba(var(--bs-secondary-rgb), 0.9);
}

.attach-image {
	margin: 3px 0;
	max-width: 100%;
}

.attach-image img {
	border: 1px solid rgba(var(--bs-secondary-rgb), 0.6);
	cursor: default;
}

/* Inline image thumbnails */

dl.thumbnail dd {
	font-style: italic;
	color: rgba(var(--bs-secondary-rgb), 0.9);
}

.attachbox dl.thumbnail dd {
	font-size: 100%;
}

dl.thumbnail dt a:hover img {
	border: 1px solid rgba(var(--bs-primary-rgb), 0.5);
}

.pm-message .attachbox {
	background-color: var(--bs-light);
}

dl.thumbnail dt a:hover {
	background-color: var(--bs-gray-200);
}

/* Tables
----------------------------------------*/
.postprofile {
	display: grid;
	grid-template-areas:
		"img ."
		"img rank";
	grid-template-columns: minmax(0px, max-content) auto;
	align-items: center;
}

.postprofile li:first-child {
	grid-area: img;
}

.postprofile .profile-rank {
	grid-area: rank;
}

@media (max-width: 768px) {
	.postprofile .avatar-container img, .postprofile svg {
		max-width: 40px;
		height: auto;
	}
	.postprofile {
		border-bottom: 1px solid var(--bs-gray-300);
	}
	.no-avatar-icon {
		font-size: 2.5rem;
	}
}

@media (min-width: 768px) {
	.avatar-container img {
		max-width: 100%;
		height: auto;
	}
	.postprofile {
		border-inline-start: 1px solid var(--bs-gray-300);
	}
	.no-avatar-icon {
		font-size: 5.625rem;
	}
}

.contact-icon {
	background-repeat: no-repeat;
	display: block;
	height: 16px;
	width: 16px;
}

/* Icon images
---------------------------------------- */

.contact-icon {
	background-image: url("./images/icons_contact.png");
}

/* Profile & navigation icons */
.pm-icon {
	background-position: 0 0;
}
.email-icon {
	background-position: -21px 0;
}
.jabber-icon {
	background-position: -80px 0;
}
.phpbb_icq-icon {
	background-position: -61px 0;
}
.phpbb_wlm-icon {
	background-position: -182px 0;
}
.phpbb_aol-icon {
	background-position: -244px 0;
}
.phpbb_website-icon {
	background-position: -40px 0;
}
.phpbb_youtube-icon {
	background-position: -98px 0;
}
.phpbb_facebook-icon {
	background-position: -119px 0;
}
.phpbb_skype-icon {
	background-position: -161px 0;
}
.phpbb_twitter-icon {
	background-position: -203px 0;
}
.phpbb_yahoo-icon {
	background-position: -224px 0;
}

.contact-icons {
	min-width: 0;
	padding: 0;
	font-size: 0;
}


.column1 ul > li > *:not(:first-child),
.column2 ul > li > *:not(:first-child) {
	justify-self: start;
}


.notification_list img {
	max-width: 50px;
	max-height: 50px;
}

.notifications_avatar > *:first-child {
	align-self: center;
}

/* PM Styles
----------------------------------------*/
/* PM Message history */
.current {
	color: rgb(var(--bs-black-rgb)) !important;
}

/* PM marking colours */
.pmlist li.pm_message_reported_colour,
.pm_message_reported_colour {
	border-color: var(--bs-pink) !important;
}

.pmlist li.pm_marked_colour,
.pm_marked_colour {
	border-color: var(--bs-orange) !important;
}

.pmlist li.pm_replied_colour,
.pm_replied_colour {
	border-color: var(--bs-gray-600) !important;
}

.pmlist li.pm_friend_colour,
.pm_friend_colour {
	border-color: var(--bs-primary) !important;
}

.pmlist li.pm_foe_colour,
.pm_foe_colour {
	border-color: rgb(var(--bs-black-rgb)) !important;
}

.active {
	--bs-bg-opacity: 0.1;
	background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity));
}

.active:hover {
	color: var(--bs-white);
}

#minitabs .end-0 {
	right: auto !important;
}

.smilies {
	vertical-align: text-bottom;
}

.emoji {
	min-height: 18px;
	min-width: 18px;
	height: 1em;
	width: 1em;
}