/* MyBBForge / neon forum skin
 * A MyBB-native spin on the owner's supplied forum screenshots:
 * black chrome, electric-green branding, purple section bars, glass rows.
 */
:root {
	--hf-black: #050505;
	--hf-deep: #0c0c0d;
	--hf-panel: rgba(26, 26, 28, .92);
	--hf-panel-soft: rgba(42, 42, 45, .82);
	--hf-line: rgba(255, 255, 255, .08);
	--hf-line-bright: rgba(255, 255, 255, .14);
	--hf-text: #e8e8e8;
	--hf-muted: #9c9c9f;
	--hf-green: #46ff38;
	--hf-green-dark: #1dbb28;
	--hf-purple: #3b1d4e;
	--hf-purple-light: #5a2d72;
	--hf-purple-glow: rgba(166, 67, 224, .24);
	--hf-radius: 4px;
}

*,
*:before,
*:after {
	box-sizing: border-box;
}

html {
	background: var(--hf-black);
}

body {
	background:
		linear-gradient(180deg, rgba(0, 0, 0, .35) 0, rgba(0, 0, 0, .08) 30%, rgba(0, 0, 0, .76) 100%),
		url(../../../images/mybbforge-space.png) center top / cover fixed no-repeat,
		#050505;
	color: var(--hf-text);
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
	line-height: 1.45;
	margin: 0;
	min-height: 100vh;
	overflow-x: hidden;
	text-align: center;
}

a,
a:link,
a:visited {
	color: #d6d6d6;
	text-decoration: none;
}

a:hover,
a:active {
	color: var(--hf-green);
	text-decoration: none;
}

button,
input,
select,
textarea {
	font: inherit;
}

img {
	max-width: 100%;
}

ul,
ol {
	margin: 0;
	padding: 0;
}

.clear {
	clear: both;
}

#container {
	background: transparent;
	color: var(--hf-text);
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
	min-width: 0;
	text-align: left;
	width: 100% !important;
}

	.wrapper {
	margin: 0 auto;
		max-width: 1440px;
	min-width: 0;
		width: min(1440px, calc(100% - 32px)) !important;
}

/* The thin utility ticker at the top of the reference layout. */
#hf-ticker {
	background: rgba(0, 0, 0, .84);
	border-bottom: 1px solid rgba(255, 255, 255, .08);
	color: #aaa;
	font-size: 12px;
	height: 24px;
	letter-spacing: .02em;
	overflow: hidden;
	white-space: nowrap;
}

#hf-ticker .wrapper {
	align-items: center;
	display: flex;
	height: 24px;
	overflow: hidden;
	padding: 0;
	position: relative;
	white-space: nowrap;
	width: 100%;
}

#hf-ticker .hf-ticker-track {
	align-items: center;
	animation: hfTickerScroll 32s linear infinite;
	display: flex;
	flex: 0 0 max-content;
	gap: 25px;
	min-width: max-content;
	will-change: transform;
}

#hf-ticker .hf-ticker-track:hover {
	animation-play-state: paused;
}

@keyframes hfTickerScroll {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-50%);
	}
}

#hf-ticker span:after {
	color: var(--hf-green);
	content: "•";
	margin-left: 24px;
}

#hf-ticker a {
	color: #bbb;
}

#hf-ticker a:hover {
	color: var(--hf-green);
}

@media (prefers-reduced-motion: reduce) {
	#hf-ticker .hf-ticker-track,
	.hf-category-head:before,
	.hf-partners-track {
		animation: none;
	}
}

#header {
	background: rgba(0, 0, 0, .16);
	position: relative;
	z-index: 2;
}

#logo {
	background: rgba(0, 0, 0, .50);
	border-bottom: 1px solid rgba(255, 255, 255, .06);
	padding: 16px 0 10px;
}

#logo .wrapper {
	align-items: center;
	display: flex;
	justify-content: center;
}

#logo img {
	display: block;
	filter: drop-shadow(0 0 10px rgba(70, 255, 56, .32));
	height: auto;
	max-width: min(430px, 78vw);
	width: 430px;
}

#logo ul.top_links {
	display: none;
}

#panel {
	background: rgba(22, 22, 23, .84);
	border-bottom: 1px solid rgba(255, 255, 255, .09);
	border-top: 1px solid rgba(255, 255, 255, .08);
	box-shadow: 0 8px 20px rgba(0, 0, 0, .25);
}

.mobile_navbar {
	display: none;
}

#panel .upper {
	background: rgba(15, 15, 16, .92);
	border: 0;
	color: #aaa;
	padding: 5px 0;
}

#panel .upper .wrapper {
	align-items: center;
	display: flex;
	flex-direction: row-reverse;
	gap: 12px;
	justify-content: space-between;
	min-height: 25px;
}

#panel .lower {
	background: rgba(35, 35, 37, .76);
	border-top: 1px solid rgba(255, 255, 255, .07);
	border-bottom: 0;
	color: #8d8d8f;
	padding: 4px 0;
}

#panel .lower .wrapper {
	align-items: center;
	display: flex;
	justify-content: space-between;
	min-height: 28px;
}

#panel ul.menu {
	display: flex;
	flex-wrap: wrap;
	gap: 13px;
	list-style: none;
}

#panel ul.menu li {
	margin: 0;
}

#panel ul.menu a {
	color: #a8a8a8;
	font-size: 13px;
	display: inline-flex;
	align-items: center;
	min-height: 20px;
}

#panel ul.menu a:hover {
	color: var(--hf-green);
}

#panel .welcome {
	color: #ababab;
	font-size: 13px;
}

#panel .welcome a {
	color: #ddd;
	font-weight: bold;
	margin-left: 8px;
}

#panel .welcome a:hover {
	color: var(--hf-green);
}

#search {
	display: flex;
	gap: 4px;
	margin: 0;
	padding: 0;
	position: relative;
}

#search input.textbox {
	background: #141416;
	border: 1px solid #4b4b51;
	border-radius: 4px;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, .55), 0 0 0 1px rgba(0, 0, 0, .2);
	color: #eee;
	font-size: 11px;
	padding: 6px 9px;
	width: 160px;
}

#search input.textbox:focus {
	border-color: var(--hf-purple-light);
	box-shadow: 0 0 0 2px rgba(166, 67, 224, .18), 0 0 12px rgba(166, 67, 224, .14);
	outline: 0;
}

#search .button {
	background: linear-gradient(180deg, #5c3470, #321a40);
	border-color: #8750a6;
	border-radius: 4px;
	font-size: 11px;
	font-weight: bold;
	padding: 6px 11px;
	text-shadow: 0 1px #1a0b20;
}

.hf-search-form {
	margin: 0;
	position: relative;
	width: 100%;
}

.hf-search-form #search {
	align-items: center;
	background: rgba(14, 14, 16, .94);
	border: 1px solid rgba(166, 67, 224, .42);
	border-radius: 6px;
	box-shadow: inset 0 1px rgba(255, 255, 255, .07), 0 0 15px rgba(94, 38, 124, .13);
	padding: 3px;
}

.hf-search-form #search .hf-search-input {
	background: transparent;
	border: 0;
	box-shadow: none;
	flex: 1;
	min-width: 0;
	width: auto;
}

.hf-search-form #search .hf-search-input:focus {
	border: 0;
	box-shadow: none;
}

.hf-search-form #search .hf-search-submit {
	padding: 5px 10px;
}

.hf-search-frame {
	align-items: center;
	background: rgba(14, 14, 16, .94);
	border: 1px solid rgba(166, 67, 224, .42);
	border-radius: 6px;
	box-shadow: inset 0 1px rgba(255, 255, 255, .07), 0 0 15px rgba(94, 38, 124, .13);
	display: flex;
	gap: 7px;
	padding: 4px;
}

.hf-search-icon {
	color: var(--hf-green);
	font-size: 17px;
	line-height: 1;
	padding: 0 3px 1px 5px;
	text-shadow: 0 0 8px rgba(70, 255, 56, .35);
}

.hf-search-form .hf-search-input {
	background: transparent;
	border: 0;
	color: #f4f4f4;
	flex: 1;
	font-size: 12px;
	min-width: 0;
	outline: 0;
	padding: 6px 2px;
}

.hf-search-form .hf-search-input::placeholder {
	color: #88888d;
}

.hf-search-submit {
	background: linear-gradient(180deg, #633879, #341b42);
	border: 1px solid #8750a6;
	border-radius: 4px;
	color: #fff;
	cursor: pointer;
	font-size: 11px;
	font-weight: bold;
	padding: 6px 12px;
}

.hf-search-submit:hover {
	background: linear-gradient(180deg, #784591, #452052);
}

.hf-search-dropdown {
	background: rgba(17, 17, 19, .985);
	border: 1px solid rgba(166, 67, 224, .62);
	border-radius: 0 0 6px 6px;
	box-shadow: 0 10px 28px rgba(0, 0, 0, .62), 0 0 18px rgba(94, 38, 124, .18);
	display: none;
	left: 0;
	overflow: hidden;
	position: absolute;
	right: 0;
	top: calc(100% + 5px);
	z-index: 50;
}

.hf-search-dropdown.is-open {
	display: block;
}

.hf-search-suggestion {
	align-items: center;
	border-bottom: 1px solid rgba(255, 255, 255, .07);
	display: flex;
	gap: 9px;
	padding: 9px 11px;
}

.hf-search-suggestion:last-child {
	border-bottom: 0;
}

.hf-search-suggestion:hover,
.hf-search-suggestion:focus {
	background: rgba(91, 43, 114, .52);
	outline: 0;
}

.hf-search-suggestion-mark {
	color: var(--hf-green);
	font-size: 12px;
}

.hf-search-suggestion-copy {
	min-width: 0;
}

.hf-search-suggestion-title {
	color: #eee;
	display: block;
	font-size: 12px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.hf-search-suggestion-meta {
	color: #929297;
	display: block;
	font-size: 10px;
	margin-top: 2px;
}

.hf-search-status {
	color: #99999f;
	font-size: 11px;
	padding: 11px;
}

.mobile_search_shell {
	display: none;
}

input.textbox,
select,
textarea {
	background: #27272a;
	border: 1px solid #414145;
	border-radius: 2px;
	color: #eee;
	padding: 6px 8px;
}

input.button,
.button {
	background: #3c3c3f;
	border: 1px solid #5a5a5c;
	border-radius: 2px;
	color: #e8e8e8;
	cursor: pointer;
	padding: 5px 10px;
}

input.button:hover,
.button:hover {
	background: var(--hf-purple-light);
	border-color: #8652a0;
	color: #fff;
}

/* Content is intentionally narrow like the supplied forum screenshots. */
#content {
	background: transparent;
	min-height: 420px;
	overflow: visible;
	padding: 12px 0 42px;
}

	#content > .wrapper {
		max-width: none;
		width: calc(100% - 32px) !important;
}

#navigation {
	align-items: flex-start;
	background:
		linear-gradient(90deg, rgba(63, 31, 78, .96), rgba(27, 27, 29, .92) 42%, rgba(18, 18, 20, .88)),
		radial-gradient(circle at 0 0, rgba(70, 255, 56, .12), transparent 34%);
	border: 1px solid rgba(181, 102, 225, .28);
	border-left: 3px solid var(--hf-green);
	border-radius: 4px;
	box-shadow: inset 0 1px rgba(255, 255, 255, .06), 0 4px 14px rgba(0, 0, 0, .24);
	color: #b9b9be;
	display: flex;
	flex-direction: column;
	gap: 4px;
	justify-content: flex-start;
	margin: 0 0 14px;
	padding: 8px 12px 9px;
	text-align: left !important;
	width: 100%;
}

#navigation .hf-breadcrumb-label {
	color: var(--hf-green);
	font-size: 9px;
	font-weight: bold;
	letter-spacing: .16em;
	line-height: 1;
	text-transform: uppercase;
}

#navigation .hf-breadcrumb-trail {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	line-height: 1.3;
	text-align: left;
}

#navigation a,
#navigation .hf-nav-link {
color: #ddd;
display: inline-block;
font-weight: bold;
text-align: left;
}

#navigation a:hover,
#navigation .hf-nav-link:hover {
	color: var(--hf-green);
}

#navigation .active {
	background: rgba(70, 255, 56, .09);
	border: 1px solid rgba(70, 255, 56, .22);
	border-radius: 3px;
	color: #f0ffe9;
	padding: 2px 6px;
}

#navigation .hf-nav-separator {
	color: #9d63ba;
	font-size: 14px;
	line-height: 1;
}

.forumdisplay_context {
	align-items: flex-start;
	color: #a8a8ac;
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin: 0 0 12px;
	text-align: left !important;
	width: 100%;
}

.forumdisplay_context > br {
	display: none;
}

.forumdisplay_context > .smalltext {
	background: rgba(24, 17, 29, .78);
	border-left: 2px solid rgba(166, 67, 224, .66);
	border-radius: 0 3px 3px 0;
	color: #aaaab0;
	display: inline-block;
	font-size: 10px;
	padding: 5px 8px;
	text-align: left;
}

.forumdisplay_context .smalltext strong {
	color: #dcd5e1;
}

.forumdisplay_context a {
	color: var(--hf-green);
}

.hf-users-browsing {
	align-items: center;
	background: linear-gradient(90deg, rgba(21, 32, 23, .94), rgba(16, 17, 19, .84));
	border: 1px solid rgba(70, 255, 56, .23);
	border-left: 3px solid var(--hf-green);
	border-radius: 0 4px 4px 0;
	box-shadow: inset 0 1px rgba(255, 255, 255, .05);
	display: inline-flex;
	flex-wrap: wrap;
	gap: 7px;
	max-width: 100%;
	padding: 6px 9px;
	text-align: left;
}

.hf-users-browsing:before {
	color: var(--hf-green);
	content: "◉";
	font-size: 11px;
	text-shadow: 0 0 7px rgba(70, 255, 56, .45);
}

.hf-users-browsing .hf-meta-label {
	color: #e7ffe4;
	font-size: 9px;
	font-weight: bold;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.hf-users-browsing .hf-users-browsing-copy {
	color: #aaaeb0;
	font-size: 10px;
}

.hf-users-browsing .hf-users-browsing-copy a {
	color: var(--hf-green);
	font-weight: bold;
}

.hf-ad-strip {
	align-items: center;
	display: flex;
	gap: 8px;
	justify-content: center;
	margin: 4px auto 10px;
	max-width: 670px;
}

.hf-ad-strip img {
	background: #111;
	border: 1px solid rgba(255, 255, 255, .16);
	display: block;
	height: 76px;
	object-fit: cover;
	width: 280px;
}

.hf-ad-strip img:nth-child(2) {
	width: 340px;
}

.hf-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	justify-content: center;
	margin: 9px 0 14px;
}

.hf-mobile-categories {
	display: none;
}

.hf-tab {
	background: linear-gradient(#303034, #1f1f21);
	border: 1px solid #444449;
	border-radius: 3px;
	box-shadow: inset 0 1px rgba(255, 255, 255, .08);
	color: #d3d3d3 !important;
	font-size: 11px;
	font-weight: bold;
	padding: 6px 14px;
}

.hf-tab:hover,
.hf-tab.active {
	background: linear-gradient(#4e2a61, #2b1736);
	border-color: #79469a;
	color: #fff !important;
}

.hf-tab.active {
	color: var(--hf-green) !important;
}

.hf-board-message {
	background: rgba(29, 29, 31, .92);
	border: 1px solid var(--hf-line);
	border-radius: 3px;
	color: #a7a7a8;
	margin: 0 0 12px;
	padding: 10px 12px;
}

.hf-board-message strong {
	color: #e4e4e4;
}

.hf-board-message em {
	color: var(--hf-green);
	font-style: normal;
}

/* Compact partner creatives for the Board Statistics surface. */
.hf-partners-cell {
	padding: 0 !important;
}

.hf-partners {
	background:
		linear-gradient(105deg, rgba(18, 18, 22, .98), rgba(29, 20, 36, .94)),
		radial-gradient(circle at 0 0, rgba(70, 255, 56, .10), transparent 42%);
	border-top: 1px solid rgba(181, 102, 225, .22);
	overflow: hidden;
	padding: 9px 10px 10px;
}

.hf-partners-heading {
	align-items: center;
	display: flex;
	gap: 9px;
	justify-content: space-between;
	margin-bottom: 7px;
}

.hf-partners-heading strong {
	color: #f1e9f5;
	font-size: 11px;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.hf-partners-heading span {
	color: #85858d;
	font-size: 9px;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.hf-partners-marquee {
	border: 1px solid rgba(255, 255, 255, .10);
	border-radius: 7px;
	overflow: hidden;
	width: 100%;
}

.hf-partners-track {
	align-items: stretch;
	animation: hfPartnersScroll 30s linear infinite;
	display: flex;
	gap: 8px;
	padding: 6px;
	width: max-content;
}

.hf-partners-marquee:hover .hf-partners-track {
	animation-play-state: paused;
}

@keyframes hfPartnersScroll {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(calc(-50% - 4px));
	}
}

.hf-partner-card {
	align-items: center;
	border: 1px solid rgba(255, 255, 255, .14);
	border-radius: 6px;
	box-shadow: inset 0 1px rgba(255, 255, 255, .08), 0 3px 10px rgba(0, 0, 0, .24);
	display: flex;
	gap: 8px;
	height: 66px;
	overflow: hidden;
	padding: 6px 9px 6px 6px;
	position: relative;
	text-align: left;
	width: 280px;
}

.hf-partner-card:hover {
	border-color: var(--hf-green);
	transform: translateY(-1px);
}

.hf-partner-mybbhub {
	background: linear-gradient(115deg, #0f172a, #164e78 58%, #0ea5e9);
}

.hf-partner-vip {
	background: linear-gradient(115deg, #0d0b10, #2b163b 58%, #4b2467);
}

.hf-partner-image {
	flex: 0 0 84px;
	height: 52px;
	width: 84px;
}

.hf-partner-copy {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.hf-partner-copy strong {
	color: #fff;
	font-size: 12px;
	line-height: 1.15;
	white-space: nowrap;
}

.hf-partner-copy em {
	color: rgba(255, 255, 255, .72);
	font-size: 9px;
	font-style: normal;
	line-height: 1.25;
	white-space: nowrap;
}

.hf-partner-visit {
	align-self: flex-end;
	color: rgba(255, 255, 255, .78);
	font-size: 8px;
	font-weight: bold;
	letter-spacing: .08em;
	white-space: nowrap;
}

/* MyBB tables are the actual forum surface. */
.tborder {
	background: transparent;
	border: 1px solid rgba(255, 255, 255, .10);
	border-collapse: separate;
	border-radius: 3px;
	border-spacing: 0;
	box-shadow: 0 4px 18px rgba(0, 0, 0, .24);
	margin-bottom: 12px;
	overflow: hidden;
	width: 100%;
}

.thead {
	background: linear-gradient(90deg, rgba(66, 33, 83, .98), rgba(55, 26, 70, .96));
	border-bottom: 1px solid rgba(181, 102, 225, .28);
	color: #eee;
	font-size: 12px;
	padding: 8px 10px;
	position: relative;
	text-align: left !important;
	text-shadow: 0 1px #140c18;
}

.thead > div,
.thead strong {
	text-align: left !important;
}

.thead > div:not(.expcolimage) {
	padding-right: 22px;
}

.expcolimage {
	float: right !important;
	margin-left: 8px;
	position: absolute;
	right: 10px;
	text-align: right !important;
	top: 7px;
}

.expcolimage img,
.expcolimage .expander {
	cursor: pointer;
	float: right !important;
	margin: 0;
}

.thead a,
.thead a:link,
.thead a:visited {
	color: #f1e9f5;
}

.tcat {
	background: rgba(25, 25, 27, .96);
	border-bottom: 1px solid var(--hf-line);
	color: #a9a9ab;
	font-size: 11px;
	padding: 7px 10px;
	text-align: left !important;
}

.tcat a,
.tcat a:link,
.tcat a:visited {
	color: #ddd;
}

	.trow1,
	.trow2 {
		background: rgba(35, 35, 38, .92);
	border-bottom: 1px solid rgba(255, 255, 255, .06);
	color: #b5b5b7;
	padding: 9px 10px;
	text-align: left !important;
	vertical-align: top;
}

.trow1:hover,
.trow2:hover {
		background: rgba(64, 49, 69, .92);
}

.tfoot {
	background: rgba(23, 23, 25, .96);
	border-top: 1px solid var(--hf-line);
	color: #929295;
	padding: 7px 10px;
	text-align: left !important;
}

#boardstats .thead,
#boardstats .tcat,
#boardstats .trow1,
#boardstats .trow2,
#boardstats .tfoot {
	text-align: left !important;
}

#boardstats .thead > div {
	text-align: left !important;
}

.trow1:last-child,
.trow2:last-child {
	border-bottom: 0;
}

.smalltext {
	font-size: 11px;
}

.forum_status {
	background: var(--hf-green);
	border-radius: 50%;
	box-shadow: 0 0 6px rgba(70, 255, 56, .55);
	display: inline-block;
	height: 24px;
	position: relative;
	vertical-align: middle;
	width: 24px;
}

.forum_status:before {
	color: #061b09;
	content: "✦";
	font-size: 12px;
	font-weight: bold;
	left: 0;
	line-height: 24px;
	position: absolute;
	text-align: center;
	top: 0;
	width: 100%;
}

.forum_status.forum_off,
.forum_status.forum_offclose,
.forum_status.forum_offlink {
	background: #25252a;
	border: 1px solid #53535c;
	box-shadow: none;
}

.forum_status.forum_off:before {
	color: #a3a3aa;
	content: "•";
}

.forum_status.forum_offclose {
	background: #4a2734;
	border-color: #a55b73;
}

.forum_status.forum_offclose:before {
	color: #ff9bb7;
	content: "×";
	font-size: 16px;
	line-height: 22px;
}

.forum_status.forum_offlink {
	background: #35244d;
	border-color: #895eb2;
}

.forum_status.forum_offlink:before {
	color: #d69cff;
	content: "↗";
	font-size: 14px;
	line-height: 22px;
}

.hf-forum-status-icon {
	background: transparent center / contain no-repeat;
	border: 0;
	box-shadow: none;
	height: 40px;
	width: 40px;
}

.hf-forum-status-icon,
.hf-subforum-icon {
 background-image: url(../../../images/hf-forum-icons/fid-default.png);
}

.hf-forum-status-icon:before {
	content: none;
}

.forum_status.hf-forum-status-icon.forum_off:before,
.forum_status.hf-forum-status-icon.forum_offclose:before,
.forum_status.hf-forum-status-icon.forum_offlink:before {
content: none;
}

.hf-forum-status-icon.forum_off,
.hf-forum-status-icon.forum_offclose,
.hf-forum-status-icon.forum_offlink {
	background-color: transparent;
	border: 0;
	filter: grayscale(1) opacity(.48);
}

.hf-forum-glyph {
	background: transparent center / contain no-repeat;
	border: 0;
	box-shadow: none;
	display: inline-flex;
	float: left;
	font-size: 0;
	height: 34px;
	align-items: center;
	justify-content: center;
	margin: 0 9px 4px 0;
	width: 34px;
}

.hf-forum-glyph.forum_off,
.hf-forum-glyph.forum_offclose,
.hf-forum-glyph.forum_offlink {
	background-color: transparent;
	filter: grayscale(1) opacity(.48);
}

.hf-forum-status-fid-1,
.hf-forum-glyph-fid-1,
.hf-subforum-icon-fid-1 { background-image: url(../../../images/hf-forum-icons/fid-1.png); }
.hf-forum-status-fid-2,
.hf-forum-glyph-fid-2,
.hf-subforum-icon-fid-2 { background-image: url(../../../images/hf-forum-icons/fid-2.png); }
.hf-forum-status-fid-3,
.hf-forum-glyph-fid-3,
.hf-subforum-icon-fid-3 { background-image: url(../../../images/hf-forum-icons/fid-3.png); }
.hf-forum-status-fid-4,
.hf-forum-glyph-fid-4,
.hf-subforum-icon-fid-4 { background-image: url(../../../images/hf-forum-icons/fid-4.png); }
.hf-forum-status-fid-5,
.hf-forum-glyph-fid-5,
.hf-subforum-icon-fid-5 { background-image: url(../../../images/hf-forum-icons/fid-5.png); }
.hf-forum-status-fid-6,
.hf-forum-glyph-fid-6,
.hf-subforum-icon-fid-6 { background-image: url(../../../images/hf-forum-icons/fid-6.png); }
.hf-forum-status-fid-7,
.hf-forum-glyph-fid-7,
.hf-subforum-icon-fid-7 { background-image: url(../../../images/hf-forum-icons/fid-7.png); }
.hf-forum-status-fid-8,
.hf-forum-glyph-fid-8,
.hf-subforum-icon-fid-8 { background-image: url(../../../images/hf-forum-icons/fid-8.png); }
.hf-forum-status-fid-9,
.hf-forum-glyph-fid-9,
.hf-subforum-icon-fid-9 { background-image: url(../../../images/hf-forum-icons/fid-9.png); }
.hf-forum-status-fid-10,
.hf-forum-glyph-fid-10,
.hf-subforum-icon-fid-10 { background-image: url(../../../images/hf-forum-icons/fid-10.png); }

/* Keep unmapped/new forum IDs from becoming blank. The exclusions preserve
   the individual icons above while covering every other forum ID. */
.hf-forum-status-icon:not(.hf-forum-status-fid-1):not(.hf-forum-status-fid-2):not(.hf-forum-status-fid-3):not(.hf-forum-status-fid-4):not(.hf-forum-status-fid-5):not(.hf-forum-status-fid-6):not(.hf-forum-status-fid-7):not(.hf-forum-status-fid-8):not(.hf-forum-status-fid-9):not(.hf-forum-status-fid-10),
.hf-subforum-icon:not(.hf-subforum-icon-fid-1):not(.hf-subforum-icon-fid-2):not(.hf-subforum-icon-fid-3):not(.hf-subforum-icon-fid-4):not(.hf-subforum-icon-fid-5):not(.hf-subforum-icon-fid-6):not(.hf-subforum-icon-fid-7):not(.hf-subforum-icon-fid-8):not(.hf-subforum-icon-fid-9):not(.hf-subforum-icon-fid-10) {
	background-image: url(../../../images/hf-forum-icons/fid-default.png) !important;
}

.hf-category-head {
	background:
		linear-gradient(105deg, rgba(83, 39, 102, .98), rgba(46, 25, 56, .98) 56%, rgba(24, 16, 29, .98)),
		linear-gradient(90deg, transparent, rgba(70, 255, 56, .18), transparent);
	isolation: isolate;
	overflow: hidden;
	position: relative;
}

.hf-category-head:before {
	background: repeating-linear-gradient(115deg, transparent 0 34px, rgba(255, 255, 255, .035) 35px 36px);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
	transform: translateX(-15%);
	animation: hfCategorySweep 11s linear infinite;
	z-index: 0;
}

.hf-category-title {
	position: relative;
	z-index: 2;
}

.hf-category-watermark {
	color: rgba(255, 255, 255, .085);
	font-size: clamp(24px, 5vw, 66px);
	font-weight: 900;
	letter-spacing: .1em;
	line-height: 1;
	max-width: 58%;
	overflow: hidden;
	pointer-events: none;
	position: absolute;
	right: 40px;
	text-overflow: ellipsis;
	text-transform: uppercase;
	top: 50%;
	transform: translateY(-50%);
	white-space: nowrap;
	z-index: 1;
}

@keyframes hfCategorySweep {
	0% {
		transform: translateX(-22%);
	}
	100% {
		transform: translateX(22%);
	}
}

.hf-subforums {
background: transparent;
	border-left: 2px solid rgba(70, 255, 56, .3);
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin-top: 8px;
	padding: 5px 0 5px 8px;
}

.hf-subforums-label {
	color: var(--hf-green);
	display: block;
	font-size: 9px;
	font-weight: bold;
	letter-spacing: .13em;
	margin-bottom: 2px;
	text-transform: uppercase;
}

.hf-subforum-item {
	align-items: center;
	display: flex;
	gap: 6px;
	line-height: 1.25;
	min-height: 25px;
}

.hf-subforum-item a {
	color: #c8c8cc;
	font-size: 11px;
}

.hf-subforum-item a:hover {
	color: var(--hf-green);
}

.hf-subforum-icon {
	background-color: transparent;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	border: 0;
	box-shadow: none;
	display: inline-block;
	flex: 0 0 20px;
	height: 20px;
	margin: 0;
	position: relative;
	width: 20px;
}

.hf-subforum-icon:after {
	content: none;
}

.hf-subforum-icon.subforum_on,
.hf-subforum-icon.subforum_new,
.hf-subforum-icon.subforum_minion {
	background-color: transparent;
}

.hf-subforum-icon.subforum_on:after,
.hf-subforum-icon.subforum_new:after,
.hf-subforum-icon.subforum_minion:after {
	content: none;
}

.hf-paywall-form {
	background: linear-gradient(105deg, rgba(42, 24, 51, .92), rgba(20, 20, 23, .96));
	border: 1px solid rgba(166, 67, 224, .35);
	border-radius: 4px;
	box-shadow: inset 0 1px rgba(255, 255, 255, .05), 0 4px 16px rgba(0, 0, 0, .18);
	margin: 12px 0;
	padding: 13px 15px 10px;
}

.hf-paywall-form legend {
	color: #f1e9f5;
	padding: 0 6px;
}

.hf-paywall-grid {
	align-items: center;
	display: grid;
	gap: 8px 14px;
	grid-template-columns: minmax(150px, .45fr) minmax(220px, 1fr);
}

.hf-paywall-grid label {
	color: #ddd;
}

.hf-paywall-grid label span {
	color: #929297;
	display: block;
	font-size: 10px;
	font-weight: normal;
	margin-top: 2px;
}

.hf-paywall-input {
	align-items: center;
	display: flex;
	gap: 7px;
}

.hf-paywall-input input {
	max-width: 310px;
	width: 100%;
}

.hf-paywall-form p {
	color: #99999f;
	margin: 10px 0 0;
}

.hf-paywall-attachments {
	background: rgba(15, 15, 18, .76);
	border: 1px solid rgba(166, 67, 224, .32);
	border-radius: 4px;
	margin: 4px 16px 12px;
	overflow: hidden;
}

.hf-paywall-attachments-title {
	background: linear-gradient(90deg, rgba(83, 39, 102, .8), rgba(46, 25, 56, .72));
	color: #eee;
	font-size: 10px;
	font-weight: bold;
	letter-spacing: .12em;
	padding: 7px 9px;
	text-transform: uppercase;
}

.hf-attachment-row {
	align-items: center;
	border-top: 1px solid rgba(255, 255, 255, .07);
	display: flex;
	flex-wrap: wrap;
	gap: 7px;
	padding: 8px 9px;
}

.hf-attachment-row:first-of-type {
	border-top: 0;
}

.hf-attachment-row > span:not(.hf-attachment-lock) {
	flex: 1 1 180px;
}

.hf-attachment-row > a:not(.button) {
	flex: 1 1 180px;
}

.hf-attachment-row span span {
	color: #85858c;
	font-size: 10px;
}

.hf-attachment-lock {
	align-items: center;
	background: #25252a;
	border: 1px solid #53535c;
	border-radius: 50%;
	color: #aaa;
	display: inline-flex;
	flex: 0 0 22px;
	font-size: 12px;
	height: 22px;
	justify-content: center;
	width: 22px;
}

.hf-attachment-unlocked .hf-attachment-lock {
	background: #46ff38;
	border-color: #72ff69;
	color: #061b09;
}

.hf-attachment-row em {
	color: var(--hf-green);
	font-size: 10px;
	font-style: normal;
}

.hf-paywall-buy {
	background: linear-gradient(180deg, #633879, #341b42);
	border-color: #8750a6;
	color: #fff !important;
	white-space: nowrap;
}

.forum_legend {
	color: #999;
	display: flex;
	flex-wrap: wrap;
	gap: 7px 12px;
	list-style: none;
	margin: 11px 0 0;
}

.forum_legend dt,
.forum_legend dd {
	align-items: center;
	display: inline-flex;
	margin: 0;
}

.forum_legend dt {
	margin-right: -8px;
}

.pagination {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
}

.pagination a,
.pagination .pagination_current {
	background: #2a2a2c;
	border: 1px solid #454549;
	border-radius: 2px;
	color: #bbb;
	padding: 4px 7px;
}

.pagination a:hover,
.pagination .pagination_current {
	background: var(--hf-purple-light);
	border-color: #8b53a4;
	color: #fff;
}

.quote,
.codeblock {
	background: rgba(0, 0, 0, .28);
	border: 1px solid #444;
	border-left: 3px solid var(--hf-purple-light);
	color: #aaa;
	padding: 8px;
}

.post_body,
.message {
	color: #c2c2c4;
}

.popup_menu {
	background: #242426;
	border: 1px solid #4d4d50;
	box-shadow: 0 8px 22px #000;
	color: #ddd;
	padding: 4px;
}

.popup_menu .popup_item {
	padding: 6px 9px;
}

.popup_menu .popup_item:hover {
	background: var(--hf-purple-light);
	color: #fff;
}

.error,
.success,
.notice {
	background: rgba(38, 38, 40, .94);
	border: 1px solid #4a4a4d;
	border-radius: 3px;
	color: #bbb;
	margin: 10px 0;
	padding: 9px 11px;
}

.error {
	border-color: #8d3e49;
}

.success {
	border-color: #397d45;
}

/* Footer */
#footer {
	background: rgba(20, 20, 21, .96);
	border-top: 1px solid rgba(255, 255, 255, .10);
	color: #a7a7a8;
}

#footer .upper {
	background: rgba(10, 10, 11, .94);
	padding: 10px 0;
}

#footer .upper .wrapper {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px 16px;
	justify-content: center;
}

#footer .footer-brand {
	color: #aaa;
	font-size: 14px;
	font-weight: bold;
	margin-right: 5px;
}

#footer .footer-brand span {
	color: var(--hf-green);
}

#footer ul.bottom_links {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 13px;
	list-style: none;
}

#footer ul.bottom_links a {
	color: #c3c3c3;
	font-size: 13px;
}

#footer ul.bottom_links a:hover {
	color: var(--hf-green);
}

#footer .lower {
	background: #2a2a2b;
	border-top: 1px solid rgba(255, 255, 255, .07);
	padding: 5px 0;
}

#footer .lower .wrapper {
	color: #878789;
	display: flex;
	font-size: 12px;
	justify-content: center;
}

#footer #current_time {
	display: none;
}

#footer #copyright a {
	color: #aaa;
}

/* Guest access controls and the footer content gate. */
#footer .hf-footer-auth {
	align-items: center;
	background:
		linear-gradient(105deg, rgba(57, 29, 74, .94), rgba(16, 16, 18, .96)),
		radial-gradient(circle at 15% 0, rgba(70, 255, 56, .16), transparent 45%);
	border: 1px solid rgba(181, 102, 225, .32);
	border-radius: 5px;
	box-shadow: inset 0 1px rgba(255, 255, 255, .07), 0 4px 16px rgba(0, 0, 0, .3);
	display: flex;
	gap: 14px;
	justify-content: space-between;
	margin: 0 auto 12px;
	padding: 11px 13px;
	width: min(100%, 680px);
}

#footer .hf-footer-auth-copy {
	color: #d9d9dd;
	flex: 1 1 auto;
	min-width: 0;
}

#footer .hf-footer-auth-copy strong {
	color: #fff;
	display: block;
	font-size: 14px;
	margin-bottom: 2px;
}

#footer .hf-footer-auth-copy span {
	color: #a5a5aa;
	display: block;
	font-size: 12px;
}

#footer .hf-footer-auth-actions {
	align-items: center;
	display: flex;
	flex: 0 0 auto;
	gap: 6px;
}

.hf-auth-button,
.hf-auth-submit {
	background: linear-gradient(180deg, #65367c, #351b43);
	border: 1px solid #8953a9;
	border-radius: 3px;
	box-shadow: inset 0 1px rgba(255, 255, 255, .10);
	color: #fff !important;
	cursor: pointer;
	display: inline-block;
	font-size: 13px;
	font-weight: bold;
	padding: 7px 12px;
	text-align: center;
	transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.hf-auth-button:hover,
.hf-auth-submit:hover {
	border-color: var(--hf-green);
	box-shadow: 0 0 12px rgba(70, 255, 56, .20), inset 0 1px rgba(255, 255, 255, .14);
	color: #fff !important;
	transform: translateY(-1px);
}

.hf-auth-button.hf-auth-button-primary,
.hf-auth-submit {
	background: linear-gradient(180deg, #48ff3b, #1cae28);
	border-color: #6dff63;
	color: #071408 !important;
	text-shadow: none;
}

.hf-auth-gate {
	align-items: center;
	background: rgba(3, 3, 5, .78);
	backdrop-filter: blur(7px);
	display: flex;
	inset: 0;
	justify-content: center;
	opacity: 0;
	padding: 24px;
	pointer-events: none;
	position: fixed;
	transition: opacity .24s ease, visibility .24s ease;
	visibility: hidden;
	z-index: 9998;
}

.hf-auth-gate.is-open {
	opacity: 1;
	pointer-events: auto;
	visibility: visible;
}

.hf-auth-backdrop {
	inset: 0;
	position: absolute;
}

.hf-auth-dialog {
	background:
		linear-gradient(145deg, rgba(39, 24, 49, .98), rgba(12, 12, 15, .99) 70%),
		radial-gradient(circle at 0 0, rgba(70, 255, 56, .12), transparent 42%);
	border: 1px solid rgba(181, 102, 225, .56);
	border-radius: 7px;
	box-shadow:
		0 0 0 1px rgba(0, 0, 0, .55),
		0 20px 70px rgba(0, 0, 0, .72),
		0 0 42px rgba(133, 54, 174, .20);
	max-height: calc(100vh - 48px);
	max-width: 760px;
	overflow: auto;
	padding: 25px;
	position: relative;
	transform: translateY(12px) scale(.985);
	transition: transform .24s ease;
	width: 100%;
	z-index: 1;
}

.hf-auth-gate.is-open .hf-auth-dialog {
	transform: translateY(0) scale(1);
}

.hf-auth-gate.is-permanent .hf-auth-close {
	display: none;
}

.hf-auth-close {
	background: rgba(255, 255, 255, .06);
	border: 1px solid rgba(255, 255, 255, .16);
	border-radius: 50%;
	color: #ddd;
	cursor: pointer;
	font-size: 20px;
	height: 30px;
	line-height: 25px;
	position: absolute;
	right: 15px;
	top: 14px;
	width: 30px;
}

.hf-auth-close:hover {
	background: rgba(70, 255, 56, .16);
	border-color: var(--hf-green);
	color: var(--hf-green);
}

.hf-auth-kicker {
	color: var(--hf-green);
	display: block;
	font-size: 10px;
	font-weight: bold;
	letter-spacing: .18em;
	margin-bottom: 5px;
	text-transform: uppercase;
}

.hf-auth-dialog h2 {
	color: #fff;
	font-size: clamp(22px, 4vw, 30px);
	line-height: 1.1;
	margin: 0 42px 7px 0;
}

.hf-auth-dialog > p {
	color: #a7a7ad;
	font-size: 12px;
	margin: 0 0 20px;
	max-width: 580px;
}

.hf-auth-grid {
	display: grid;
	gap: 12px;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.hf-auth-card {
	background: rgba(12, 12, 15, .62);
	border: 1px solid rgba(255, 255, 255, .11);
	border-radius: 5px;
	padding: 15px;
}

.hf-auth-card h3 {
	color: #f0e7f4;
	font-size: 14px;
	margin: 0 0 5px;
}

.hf-auth-card p {
	color: #9999a0;
	font-size: 11px;
	line-height: 1.5;
	margin: 0 0 14px;
}

.hf-auth-field {
	display: block;
	margin: 0 0 10px;
}

.hf-auth-field span {
	color: #bdbdc3;
	display: block;
	font-size: 10px;
	font-weight: bold;
	margin-bottom: 4px;
	text-transform: uppercase;
}

.hf-auth-field input {
	width: 100%;
}

.hf-auth-remember {
	align-items: center;
	color: #aaaab0;
	display: flex;
	font-size: 10px;
	gap: 5px;
	margin: 3px 0 12px;
}

.hf-auth-remember input {
	margin: 0;
}

.hf-auth-submit {
	width: 100%;
}

.hf-auth-register-link {
	display: block;
	margin-top: 9px;
	width: 100%;
}

.hf-auth-note {
	color: #78787f;
	display: block;
	font-size: 10px;
	line-height: 1.55;
	margin-top: 10px;
}

.hf-auth-page #content > .wrapper {
	max-width: 820px;
}

.hf-auth-page-form {
	margin: 0 auto 22px;
	max-width: 700px;
}

.hf-auth-page-form > .tborder {
	margin: 0;
	width: 100% !important;
}

.hf-auth-page-form > .hf-auth-page-submit {
	text-align: center;
}

.hf-auth-page-form > .hf-auth-page-submit .button {
	min-width: 150px;
}

/* ------------------------------------------------------------------
 * Registration experience
 * Give the native MyBB registration form a branded, readable surface
 * without changing its fields, validation, or server-side behavior.
 * ------------------------------------------------------------------ */
body.hf-auth-page #content > .wrapper {
max-width: 1120px;
}

.hf-registration-hero {
background:
linear-gradient(112deg, rgba(48, 24, 61, .96), rgba(14, 14, 17, .96) 62%),
radial-gradient(circle at 0 0, rgba(70, 255, 56, .12), transparent 42%);
border: 1px solid rgba(181, 102, 225, .35);
border-left: 3px solid var(--hf-green);
border-radius: 5px;
box-shadow: inset 0 1px rgba(255, 255, 255, .07), 0 8px 26px rgba(0, 0, 0, .28);
margin: 0 auto 12px;
max-width: 1100px;
overflow: hidden;
padding: 22px 25px 17px;
position: relative;
text-align: left;
}

.hf-registration-hero:after {
color: rgba(70, 255, 56, .08);
content: "JOIN";
font-size: 76px;
font-weight: 900;
letter-spacing: .08em;
line-height: 1;
position: absolute;
right: 24px;
top: 17px;
}

.hf-registration-kicker {
color: var(--hf-green);
display: block;
font-size: 9px;
font-weight: bold;
letter-spacing: .2em;
margin-bottom: 6px;
text-transform: uppercase;
}

.hf-registration-hero h1 {
color: #fff;
font-size: clamp(22px, 3vw, 31px);
letter-spacing: -.02em;
margin: 0;
position: relative;
z-index: 1;
}

.hf-registration-hero p {
color: #b8b8bd;
font-size: 12px;
margin: 5px 0 17px;
position: relative;
z-index: 1;
}

.hf-registration-steps {
align-items: center;
display: flex;
flex-wrap: wrap;
gap: 7px;
position: relative;
z-index: 1;
}

.hf-registration-steps span {
background: rgba(255, 255, 255, .05);
border: 1px solid rgba(255, 255, 255, .10);
border-radius: 3px;
color: #85858b;
font-size: 10px;
padding: 5px 9px;
}

.hf-registration-steps span.is-active {
background: rgba(70, 255, 56, .10);
border-color: rgba(70, 255, 56, .38);
color: #eaffea;
}

.hf-registration-steps span.is-active:first-letter {
color: var(--hf-green);
}

.hf-registration-form {
margin: 0 auto 24px;
max-width: 1100px;
}

.hf-registration-form > .tborder {
margin: 0;
width: 100% !important;
}

.hf-registration-titlebar {
padding: 0 !important;
}

.hf-registration-titlebar > div {
align-items: center;
display: flex;
justify-content: space-between;
gap: 12px;
padding: 11px 15px;
}

.hf-registration-titlebar strong {
color: #fff;
font-size: 13px;
}

.hf-registration-titlebar span {
color: #b993c9;
font-size: 10px;
font-weight: normal;
}

.hf-registration-column {
background: rgba(19, 19, 22, .82) !important;
padding: 16px !important;
vertical-align: top;
}

.hf-registration-column + .hf-registration-column {
border-left: 1px solid rgba(255, 255, 255, .10);
}

.hf-registration-form fieldset {
background: linear-gradient(145deg, rgba(43, 43, 47, .88), rgba(25, 25, 28, .92));
border: 1px solid rgba(255, 255, 255, .18);
border-radius: 5px;
box-shadow: inset 0 1px rgba(255, 255, 255, .05), 0 4px 14px rgba(0, 0, 0, .16);
margin: 0 0 12px;
padding: 13px 14px 14px;
}

.hf-registration-form fieldset:last-child {
margin-bottom: 0;
}

.hf-registration-form fieldset legend {
color: #f4f0f7;
font-size: 11px;
font-weight: bold;
padding: 0 7px;
}

.hf-registration-form fieldset legend strong {
color: #f4f0f7;
}

.hf-registration-form fieldset table {
border-spacing: 0 5px;
}

.hf-registration-form .smalltext {
color: #aaaab0;
font-size: 10px;
}

.hf-registration-form label {
color: #cfcfd3;
}

#registration_form input.textbox,
#registration_form select,
#registration_form textarea {
background: rgba(10, 10, 12, .70);
border-color: rgba(255, 255, 255, .16);
border-radius: 3px;
min-height: 29px;
transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

#registration_form input.textbox:focus,
#registration_form select:focus,
#registration_form textarea:focus {
background: rgba(17, 17, 20, .94);
border-color: rgba(70, 255, 56, .72);
box-shadow: 0 0 0 2px rgba(70, 255, 56, .10), 0 0 13px rgba(70, 255, 56, .12);
outline: none;
}

#registration_form input.checkbox {
accent-color: var(--hf-green);
}

.hf-registration-actions {
background: linear-gradient(90deg, transparent, rgba(59, 29, 78, .50), transparent);
border-top: 1px solid rgba(181, 102, 225, .20);
margin-top: 12px;
padding: 16px 10px 2px;
}

.hf-registration-submit {
background: linear-gradient(180deg, #4aff3c, #1aa925) !important;
border-color: #76ff6c !important;
box-shadow: 0 0 18px rgba(70, 255, 56, .16), inset 0 1px rgba(255, 255, 255, .25);
color: #071408 !important;
font-size: 12px;
font-weight: bold;
min-width: 230px;
padding: 9px 18px !important;
text-shadow: none;
}

.hf-registration-submit:hover {
box-shadow: 0 0 24px rgba(70, 255, 56, .30), inset 0 1px rgba(255, 255, 255, .32);
transform: translateY(-1px);
}

	/* ------------------------------------------------------------------
	 * Forum layout hardening
	 * Keep colors on rows instead of individual cells, give generated
	 * MyBB markup predictable hooks, and make posts usable on phones.
	 * ------------------------------------------------------------------ */
	#content {
		padding-top: 16px;
	}

	#panel .upper .wrapper > .hf-search-form {
		flex: 0 1 380px;
		width: 380px;
	}

	#content > .wrapper > .tborder,
	#content > .wrapper > .forum_index,
	#content > .wrapper > .thread_view {
		max-width: none;
		width: 100% !important;
	}

	#content > .wrapper {
		max-width: none;
		padding-left: 8px;
		padding-right: 8px;
		width: 100% !important;
	}

	#navigation {
		margin-bottom: 14px;
		width: 100%;
	}

	.forumdisplay_context {
		color: #a8a8ac;
		margin: 0 0 12px;
		text-align: left !important;
	}

	.forumdisplay_context a {
		color: var(--hf-green);
	}

	.tborder {
		table-layout: auto;
	}

	/* Keep every forum surface full-width and preserve rounded card edges
	 * when MyBB adds its generated table rows and side panels. */
	.tborder,
	.forum_index,
	.thread_list,
	.thread_view {
		border-radius: 8px;
		max-width: 100%;
		min-width: 0;
		width: 100% !important;
	}

	.hf-mobile-category,
	.hf-board-message,
	.forumdisplay_context,
	.threadlist_toolbar,
	.forumdisplay_footer {
		border-radius: 8px;
	}

	.threadlist_toolbar,
	.forumdisplay_footer {
		background: rgba(18, 18, 21, .82);
		border: 1px solid rgba(255, 255, 255, .10);
		padding: 8px 10px;
	}

	.forum_index > thead > tr:first-child > td.hf-category-head,
	.thread_view > tbody > tr:first-child > td.thread_titlebar {
		border-radius: 8px 8px 0 0;
	}

	.forum_index > tbody > tr:last-child > td:first-child,
	.thread_view > tbody > tr:last-child > td:first-child {
		border-bottom-left-radius: 8px;
	}

	.forum_index > tbody > tr:last-child > td:last-child,
	.thread_view > tbody > tr:last-child > td:last-child {
		border-bottom-right-radius: 8px;
	}

	/* A forum row is one visual surface. Cells are transparent so the
	 * hover state cannot break into separate colored blocks. */
	.tborder tr.forum_row,
	.tborder tr.thread_row {
		background: rgba(35, 35, 38, .92);
		transition: background-color .16s ease;
	}

	.tborder tr.forum_row > td,
	.tborder tr.thread_row > td {
		background: transparent !important;
	}

	.tborder tr.forum_row:hover,
	.tborder tr.thread_row:hover {
		background: rgba(64, 49, 69, .96);
	}

	.tborder tr:hover > td.trow1,
	.tborder tr:hover > td.trow2,
	.tborder tr:hover > td[class*="trow"] {
		background: rgba(64, 49, 69, .96) !important;
	}

	.tborder tr > td.trow1,
	.tborder tr > td.trow2 {
		background: rgba(35, 35, 38, .92) !important;
	}

	.tborder tr.forum_row:hover > td,
	.tborder tr.thread_row:hover > td {
		background: transparent !important;
	}

	.forum_index .tcat,
	.thread_list .tcat {
		background: rgba(35, 35, 38, .92);
		color: #d8d8da;
	}

	.forum_index tr:hover > td.tcat,
	.thread_list tr:hover > td.tcat {
		background: rgba(64, 49, 69, .96);
	}

	.forum_index td,
	.thread_list td {
		vertical-align: middle;
	}

	.forum_index td:last-child,
	.thread_list td:last-child {
		min-width: 150px;
	}

	.forum_index .smalltext,
	.thread_list .smalltext {
		line-height: 1.35;
	}

	/* Thread/forum status icons are CSS shapes, not dependent on a
	 * particular image pack being installed with the theme. */
	.thread_status {
		background-image: none !important;
		border: 1px solid rgba(255, 255, 255, .28);
		border-radius: 3px;
		box-shadow: 0 0 0 1px rgba(0, 0, 0, .28), 0 0 7px rgba(255, 255, 255, .08);
		display: inline-block;
		height: 14px;
		min-width: 14px;
		position: relative;
		vertical-align: -2px;
		width: 14px;
	}

	.thread_status:after {
		background: currentColor;
		border-radius: 50%;
		content: "";
		height: 4px;
		left: 4px;
		position: absolute;
		top: 4px;
		width: 4px;
	}

	.thread_status.newfolder:after {
		background: transparent;
		border-radius: 0;
		content: "✦";
		font-size: 12px;
		font-weight: bold;
		height: auto;
		left: 1px;
		line-height: 12px;
		top: 0;
		width: 12px;
	}

	.thread_status.newhotfolder:after {
		background: transparent;
		content: "★";
		font-size: 10px;
		height: auto;
		left: 1px;
		line-height: 12px;
		top: 0;
		width: 12px;
	}

	.thread_status.hotfolder:after {
		background: transparent;
		border-radius: 0;
		content: "◆";
		font-size: 9px;
		height: auto;
		left: 1px;
		line-height: 12px;
		top: 0;
		width: 12px;
	}

	.thread_status.folder:after {
		content: "•";
		font-size: 12px;
		height: auto;
		left: 1px;
		line-height: 12px;
		top: 0;
		width: 12px;
	}

	.thread_status.dot_folder:after {
		background: transparent;
		border-radius: 0;
		content: "✓";
		font-size: 10px;
		font-weight: bold;
		height: auto;
		left: 1px;
		line-height: 12px;
		top: 0;
		width: 12px;
	}

	.thread_status.closefolder:after {
		background: transparent;
		content: "×";
		font-size: 13px;
		font-weight: bold;
		height: auto;
		left: 1px;
		line-height: 12px;
		top: 0;
		width: 12px;
	}

	.thread_status.newfolder,
	.thread_status.newhotfolder {
		background: #35d94d !important;
		color: #09240d;
	}

	.thread_status.newhotfolder {
		background: #ff9d39 !important;
		color: #3a1b00;
	}

	.thread_status.hotfolder {
		background: #bc55d9 !important;
		color: #210b28;
	}

	.thread_status.folder {
		background: #696a70 !important;
		color: #17181a;
	}

	.thread_status.dot_folder {
		background: #4e7890 !important;
		color: #d8fbff;
	}

	.thread_status.closefolder {
		background: #793f4c !important;
		color: #ffdbe2;
	}

	/* MyBB can assign the posts-by-you folder class before the closed
	 * state. The explicit thread value keeps a closed thread visually
	 * closed instead of showing a blue check icon. */
	.thread_status.thread_closed_1 {
		background: #793f4c !important;
		border-color: #c16a7b;
		color: #ffdbe2;
	}

	.thread_status.thread_closed_1:after {
		background: transparent;
		content: "×";
		font-size: 13px;
		font-weight: bold;
		height: auto;
		left: 1px;
		line-height: 12px;
		top: 0;
		width: 12px;
	}

	.thread_legend,
	.forum_legend {
		align-items: stretch;
		background: rgba(14, 14, 16, .72);
		border: 1px solid var(--hf-line);
		border-radius: 4px;
		display: flex;
		flex-wrap: wrap;
		gap: 5px;
		list-style: none;
		margin: 12px 0;
		padding: 7px;
	}

	.thread_legend dd,
	.forum_legend dt,
	.forum_legend dd {
		align-items: center;
		background: rgba(35, 35, 38, .92);
		border: 1px solid rgba(255, 255, 255, .08);
		border-radius: 3px;
		display: inline-flex;
		gap: 5px;
		margin: 0;
		min-height: 27px;
		padding: 4px 7px;
	}

	.thread_legend,
	.forum_legend {
		justify-content: flex-start;
	}

	.thread_attachment_icon {
		display: inline-block;
		margin: 0 0 0 4px;
		vertical-align: middle;
	}

	.thread_attachment_icon img {
		height: 13px;
		opacity: .9;
		vertical-align: middle;
		width: 13px;
	}

	.thread_status_cell {
		white-space: nowrap;
		width: 52px !important;
	}

	.forum_legend dt {
		border-right: 0;
		margin-right: -5px;
		padding-right: 2px;
	}

	.forum_legend dd {
		border-left: 0;
		padding-left: 2px;
	}

	.thread_topbar,
	.thread_bottombar,
	.thread_footer_tools,
	.threadlist_toolbar,
	.forumdisplay_footer {
		align-items: flex-start;
		display: flex;
		flex-wrap: wrap;
		gap: 10px;
		justify-content: space-between;
		margin: 0 0 10px;
		width: 100%;
	}

	.thread_topbar .float_left,
	.thread_topbar .float_right,
	.thread_bottombar .float_left,
	.thread_bottombar .float_right,
	.thread_footer_tools .float_left,
	.thread_footer_tools .float_right,
	.threadlist_toolbar .float_left,
	.threadlist_toolbar .float_right,
	.forumdisplay_footer .float_left,
	.forumdisplay_footer .float_right {
		float: none !important;
		margin: 0;
	}

	.thread_topbar .float_right,
	.thread_bottombar .float_right {
		margin-left: auto;
	}

	.thread_topbar {
		margin-bottom: 0;
	}

	.thread_topbar + .float_right {
		margin-top: 0 !important;
		padding-right: 0 !important;
	}

	.thread_topbar .new_reply_button,
	.new_reply_button {
		background: linear-gradient(180deg, #633879, #341b42);
		border-color: #a066c0;
		box-shadow: 0 0 14px rgba(166, 67, 224, .18), inset 0 1px rgba(255, 255, 255, .12);
		font-size: 14px;
		font-weight: bold;
		padding: 10px 17px;
	}

	.new_thread_button {
		font-size: 14px;
		font-weight: bold;
		min-height: 38px;
		padding: 9px 18px;
	}

	.thread_list > tbody > tr:first-child > td.thead {
		display: table-cell !important;
		position: relative;
		vertical-align: middle;
		width: 100%;
	}

	.thread_list > tbody > tr:first-child > td.thead > .float_right {
		float: right !important;
		margin-left: auto;
		max-width: 72%;
		padding-right: 0;
	}

	.thread_list > tbody > tr:first-child > td.thead > div:not(.float_right) {
		margin-right: 12px;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.thread_list > tbody > tr:first-child > td.thead .smalltext {
		font-size: 13px;
	}

	.forumdisplay_footer {
		justify-content: flex-start;
	}

	.forumdisplay_footer > .float_left {
		margin-right: auto;
	}

	.forumdisplay_footer .forumdisplay_tools {
		margin-left: auto;
	}

	.thread_view {
		clear: both;
		margin-top: 0 !important;
		overflow: visible;
	}

	.thread_view > tbody > tr > #posts_container,
	.thread_view #posts_container {
		padding: 0 !important;
	}

	.thread_titlebar {
		min-height: 38px;
		position: relative;
	}

	.thread_titlebar > div {
		padding-right: 0 !important;
	}

	.thread_titlebar .thread_toggle {
		float: right;
		margin-left: 12px;
		margin-right: 112px;
		position: relative;
		z-index: 3;
	}

	.thread_titlebar .thread_toggle a {
		color: #f1e9f5;
	}

	.thread_titlebar .thread_subject {
		padding-right: 230px !important;
	}

	.thread_view #posts_container {
		padding: 0;
	}

	.thread_view #posts {
		display: flex;
		flex-direction: column;
		gap: 12px;
	}

	#posts .post {
		background: rgba(23, 23, 26, .96);
		border: 1px solid rgba(255, 255, 255, .12);
		border-radius: 4px;
		box-shadow: 0 5px 20px rgba(0, 0, 0, .28);
		display: grid;
		grid-template-areas:
			"author content"
			"controls controls";
		grid-template-columns: minmax(155px, 190px) minmax(0, 1fr);
		margin: 0;
		min-width: 0;
		overflow: visible;
		width: 100%;
	}

	#posts .post_author {
		border-radius: 8px 0 0 8px;
	}

	#posts .post_content {
		border-radius: 0 8px 8px 0;
		min-width: 0;
		overflow: hidden;
	}

	#posts .post:first-child {
		overflow: visible;
	}

	#posts .post_author {
		background:
			linear-gradient(180deg, rgba(46, 31, 52, .96), rgba(25, 25, 29, .98) 58%),
			radial-gradient(circle at 50% 0, rgba(70, 255, 56, .12), transparent 58%);
		border-right: 1px solid rgba(181, 102, 225, .28);
		grid-area: author;
		min-width: 0;
		padding: 14px 10px;
		position: sticky;
		top: 16px;
		text-align: center;
	}

	#posts .author_avatar {
		background: linear-gradient(135deg, rgba(70, 255, 56, .24), rgba(181, 102, 225, .42));
		border: 1px solid rgba(70, 255, 56, .72);
		border-radius: 16px;
		box-shadow:
			0 0 0 3px rgba(181, 102, 225, .18),
			0 0 18px rgba(70, 255, 56, .18),
			inset 0 0 0 1px rgba(255, 255, 255, .20);
		display: flex;
		height: 126px;
		align-items: center;
		justify-content: center;
		margin: 0 auto 10px;
		padding: 6px;
		position: relative;
		width: 126px;
	}

	#posts .author_avatar img {
		border: 1px solid rgba(255, 255, 255, .38);
		border-radius: 10px;
		display: inline-block;
		height: auto;
		max-height: 110px;
		max-width: 110px;
		object-fit: cover;
		width: auto;
	}

	#posts .author_information {
		color: #dedee2;
		overflow-wrap: anywhere;
	}

	#posts .author_information .largetext a {
		color: var(--hf-green);
		font-size: 15px;
		text-shadow: 0 0 8px rgba(70, 255, 56, .26);
	}

	#posts .author_statistics {
		background: rgba(5, 5, 7, .30);
		border: 1px solid rgba(255, 255, 255, .10);
		border-radius: 8px;
		color: #aaaab0;
		font-size: 11px;
		line-height: 1.55;
		margin-top: 10px;
		padding: 24px 8px 8px;
		position: relative;
		text-align: left;
	}

	#posts .author_statistics:before {
		color: var(--hf-green);
		content: "PROFILE STATS";
		font-size: 9px;
		font-weight: bold;
		letter-spacing: .16em;
		position: absolute;
		left: 8px;
		top: 7px;
	}

	#posts .author_stat_line {
		align-items: baseline;
		border-bottom: 1px solid rgba(255, 255, 255, .07);
		display: flex;
		gap: 5px;
		justify-content: space-between;
		padding: 3px 0;
	}

	#posts .author_stat_line:last-of-type {
		border-bottom: 0;
	}

	#posts .author_stat_label {
		color: #85858c;
		font-size: 10px;
		text-transform: uppercase;
	}

	#posts .author_stat_line strong {
		color: #e4e4e8;
		font-weight: bold;
		text-align: right;
	}

	#posts .author_stat_extra {
		color: #a5a5ab;
		margin-top: 5px;
	}

#posts .author_stat_extra .author_stat_line {
color: #a5a5ab;
}

#posts .author_stat_extra .author_stat_line a {
color: #e4e4e8;
}

#posts .author_stat_extra .author_stat_line a:hover {
color: var(--hf-green);
}

	#posts .post_content {
		display: flex;
		flex-direction: column;
		grid-area: content;
		min-width: 0;
		position: relative;
		padding: 0;
	}

	#posts .post_anchor {
		line-height: 1.2;
		position: absolute;
		right: 12px;
		text-align: right;
		top: 10px;
		z-index: 4;
	}

	#posts .post_anchor > div {
		align-items: center;
		display: flex;
		float: none !important;
		gap: 5px;
		justify-content: flex-end;
	}

	#posts .post_anchor a {
		color: #e8c8f5;
		font-weight: bold;
	}

	#posts .post:first-child .post_anchor {
		right: 12px;
		top: -31px;
	}

	#posts .post_body {
		color: #d5d5d8;
		font-size: 13px;
		line-height: 1.65;
		min-height: 140px;
		overflow-wrap: anywhere;
		padding: 18px 16px;
	}

	#posts .post_body {
		flex: 1 1 auto;
	}

	#posts .post_body img,
	#posts .signature img {
		height: auto;
		max-width: 100%;
	}

	#posts .signature {
		border-top: 1px solid rgba(255, 255, 255, .08);
		color: #929297;
		font-size: 11px;
		margin: 0 16px;
		padding: 10px 0;
	}

	#posts .post_meta {
		color: #85858a;
		font-size: 11px;
		margin-top: auto;
		min-height: 42px;
		padding: 0 16px 10px;
		position: relative;
	}

	#posts .post_date {
		color: #aaa;
		display: block;
		font-size: 11px;
		margin: 0 0 4px;
	}

	#posts .post_ip {
		color: #85858a;
		display: block;
		text-align: left;
	}

	#posts .post_controls {
		background: rgba(16, 16, 18, .98);
		border-top: 1px solid rgba(255, 255, 255, .10);
		display: flex;
		flex-wrap: wrap;
		gap: 6px;
		grid-area: controls;
		justify-content: space-between;
		padding: 7px 9px;
	}

	#posts .postbit_buttons {
		display: flex;
		flex-wrap: wrap;
		gap: 4px;
	}

	#posts .postbit_buttons a {
		background: #303034;
		border: 1px solid #4b4b50;
		border-radius: 3px;
		color: #c9c9cc;
		display: inline-block;
		font-size: 11px;
		padding: 4px 7px;
	}

	#posts .postbit_buttons a:hover {
		background: var(--hf-purple-light);
		border-color: #9b5abb;
		color: #fff;
	}

	#posts .post_meta > .float_right {
		bottom: 10px;
		position: absolute;
		right: 16px;
	}

	.thread_tools {
		display: flex;
		flex-wrap: wrap;
		gap: 6px 12px;
		list-style: none;
		margin: 0;
		padding: 0;
	}

	.thread_tools a {
		color: #c7c7ca;
	}

	.thread_tools a:hover {
		color: var(--hf-green);
	}

	#footer {
		clear: both;
		position: relative;
	}

	#quick_reply_form {
		width: 100%;
	}

	#quick_reply_form textarea {
		display: block;
		min-height: 150px;
		width: 100% !important;
	}

	#quick_reply_form table {
		width: 100%;
	}

	@media (max-width: 720px) {
	body {
		background-attachment: scroll;
		background-position: center top;
		background-size: auto 980px;
	}

		.wrapper,
		#content > .wrapper {
		width: 100% !important;
	}

	.mobile_navbar {
		align-items: center;
		background: #1d1d1f;
		border-bottom: 1px solid rgba(255, 255, 255, .08);
		display: flex;
		height: 52px;
		justify-content: space-between;
		position: relative;
		z-index: 10;
	}

	.mobile_account_icon {
		background: linear-gradient(180deg, #4e285c, #321c3d);
		border-right: 1px solid rgba(255, 255, 255, .08);
		display: block;
		height: 52px;
		margin-left: 0;
		position: relative;
		width: 62px;
	}

	.mobile_account_icon .mobile_account_avatar {
		display: none;
		height: 38px;
		left: 12px;
		object-fit: cover;
		position: absolute;
		top: 7px;
		width: 38px;
	}

	.mobile_account_icon.has-avatar .mobile_account_avatar {
		border: 1px solid var(--hf-green);
		border-radius: 50%;
		display: block;
	}

	.mobile_account_icon.has-avatar:before,
	.mobile_account_icon.has-avatar:after {
		display: none;
	}

	.mobile_account_icon:before {
		background: #f1f1f1;
		border-radius: 50%;
		box-shadow: 0 0 0 2px rgba(0, 0, 0, .35);
		content: "";
		height: 15px;
		left: 23px;
		position: absolute;
		top: 7px;
		width: 15px;
	}

	.mobile_account_icon:after {
		background: #f1f1f1;
		border-radius: 14px 14px 7px 7px;
		bottom: 6px;
		box-shadow: 0 0 0 2px rgba(0, 0, 0, .35);
		content: "";
		height: 23px;
		left: 14px;
		position: absolute;
		width: 34px;
	}

	.mobile_auth_links {
		align-items: center;
		display: flex;
		gap: clamp(26px, 9vw, 58px);
		margin-left: auto;
		margin-right: auto;
		padding-top: 2px;
	}

	.mobile_auth_links a {
		color: var(--hf-green) !important;
		font-size: 17px;
		font-weight: bold;
		text-shadow: 0 0 7px rgba(70, 255, 56, .25);
	}

	.mobile_menu_toggle {
		align-items: center;
		background: #4b2c59;
		border: 0;
		color: #eee;
		cursor: pointer;
		display: flex;
		font-size: 21px;
		height: 52px;
		justify-content: center;
		padding: 0;
		width: 48px;
	}

	.mobile_menu_toggle:hover {
		background: var(--hf-purple-light);
	}

	#panel {
		background: transparent;
		border: 0;
		box-shadow: none;
	}

	#panel .upper {
		display: none;
	}

	.mobile_search_shell {
		display: none;
	}

	#panel.mobile_menu_open .upper {
		background: rgba(18, 18, 20, .98);
		border-bottom: 1px solid rgba(181, 102, 225, .32);
		display: block;
		padding: 8px 10px;
	}

	#panel.mobile_menu_open .upper .wrapper {
		display: block;
	}

	#panel.mobile_menu_open .upper .wrapper > .hf-search-form {
		display: block;
		width: 100%;
	}

	#panel .lower {
		display: none;
	}

	#panel.mobile_menu_open .lower {
		background: rgba(22, 22, 24, .98);
		border-bottom: 1px solid rgba(181, 102, 225, .32);
		display: block;
		padding: 8px 10px;
	}

	#panel.mobile_menu_open .lower .wrapper {
		align-items: stretch;
		display: flex;
		flex-direction: column;
	}

	#panel.mobile_menu_open ul.menu {
		display: flex;
		flex-direction: column;
		gap: 0;
	}

	#panel.mobile_menu_open ul.menu a {
		background: rgba(59, 29, 78, .55);
		border-bottom: 1px solid rgba(255, 255, 255, .08);
		display: block;
		padding: 9px 8px;
	}

	#hf-ticker .wrapper {
		justify-content: flex-start;
		width: max-content;
	}

	#logo {
		padding: 26px 0 19px;
	}

	#logo img {
		max-width: 96vw;
		width: 430px;
	}

	#hf-ticker {
		height: 30px;
		line-height: 30px;
	}

	#panel .lower .wrapper {
		justify-content: center;
	}

	#panel ul.menu {
		justify-content: center;
	}

	.hf-ad-strip {
		align-items: stretch;
		gap: 0;
		max-width: none;
		overflow: hidden;
	}

	.hf-ad-strip img,
	.hf-ad-strip img:nth-child(2) {
		height: 94px;
		width: 100%;
	}

	.hf-ad-strip a:nth-child(2) {
		display: none;
	}

	.hf-tabs {
		display: none;
	}

	.hf-mobile-categories {
		display: grid;
		gap: 8px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		margin: 9px 12px 14px;
	}

	.hf-mobile-category {
		background: linear-gradient(180deg, rgba(67, 33, 82, .98), rgba(37, 21, 45, .98));
		border: 1px solid rgba(166, 67, 224, .27);
		border-radius: 3px;
		box-shadow: inset 0 1px rgba(255, 255, 255, .07), 0 4px 12px rgba(0, 0, 0, .25);
		color: #eee !important;
		font-size: 14px;
		font-weight: bold;
		padding: 12px 8px;
		text-align: center;
	}

	.hf-mobile-category:first-child,
	.hf-mobile-category:hover {
		background: linear-gradient(180deg, rgba(75, 41, 93, .99), rgba(38, 22, 47, .99));
		border-color: rgba(70, 255, 56, .32);
		color: var(--hf-green) !important;
	}

	.hf-board-message {
		display: none;
	}

	#content {
		padding-top: 0;
		padding-bottom: 22px;
	}

	#navigation {
border-left: 3px solid var(--hf-green);
		border-radius: 0;
		border-right: 0;
		margin-bottom: 10px;
		padding: 6px 7px;
	}

		.tborder {
			display: table;
			table-layout: auto;
			width: 100%;
	}

	.forum_index {
		background: rgba(22, 22, 24, .94);
		border: 0;
		border-radius: 0;
		box-shadow: none;
		margin: 0 0 18px;
	}

	.forum_index > thead > tr > td.thead {
		background: linear-gradient(90deg, rgba(83, 39, 102, .99), rgba(46, 25, 56, .98));
		border-bottom: 1px solid rgba(181, 102, 225, .28);
		font-size: 14px;
		padding: 11px 10px;
	}

	.forum_index > thead > tr > td.thead .smalltext {
		color: #a8a8ae;
		display: block;
		font-size: 10px;
		font-weight: normal;
		line-height: 1.35;
		margin-top: 3px;
	}

	.forum_index > tbody > tr:first-child {
		display: none;
	}

	.forum_index > tbody > tr.forum_row {
		background: rgba(35, 35, 38, .92);
		border-bottom: 1px solid rgba(255, 255, 255, .10);
		display: grid;
grid-template-columns: 48px minmax(0, 1fr);
	}

	.forum_index > tbody > tr.forum_row > td {
		background: transparent !important;
		border: 0;
		display: block;
		min-width: 0;
		padding: 13px 7px;
	}

	.forum_index > tbody > tr.forum_row > td:first-child {
		grid-column: 1;
		grid-row: 1;
padding: 12px 4px;
		width: auto;
	}

	.forum_index > tbody > tr.forum_row > td:nth-child(2) {
		grid-column: 2;
		grid-row: 1;
		padding: 12px 10px 13px 3px;
	}

	.forum_index > tbody > tr.forum_row > td:nth-child(2) > strong {
		display: block;
		font-size: 15px;
		line-height: 1.25;
		margin-bottom: 4px;
	}

	.forum_index > tbody > tr.forum_row > td:nth-child(2) .smalltext {
		color: #b4b4b8;
		font-size: 12px;
		line-height: 1.45;
	}

	.forum_index > tbody > tr.forum_row > td:nth-child(n+3) {
		display: none;
	}

	.forum_index > tbody > tr:not(.forum_row) td {
		background: rgba(46, 27, 55, .70);
		padding: 9px 10px;
	}

	.thread_list td:nth-child(n+4) {
		display: none;
	}

	.thread_list thead .tcat:nth-child(n+4),
	.thread_list tbody tr:first-child td:nth-child(n+4) {
		display: none;
	}

	.hf_search_results tr td:nth-child(n+4),
	.hf_search_results tr th:nth-child(n+4) {
		display: none;
	}

	.hf_search_results td {
		padding: 9px 6px;
	}

		.tborder td,
		.tborder th {
			max-width: none;
		overflow-wrap: anywhere;
		word-break: break-word;
	}

		.forum_index,
		.thread_list {
			font-size: 11px;
		}

		.forum_index td:last-child,
		.thread_list td:last-child {
			min-width: 0;
		}

		.forum_index td,
		.thread_list td {
			padding: 8px 6px;
			white-space: normal !important;
		}

		.thread_topbar,
		.thread_bottombar,
		.thread_footer_tools,
		.threadlist_toolbar,
		.forumdisplay_footer {
			align-items: stretch;
			flex-direction: column;
		}

		.thread_topbar > *,
		.thread_bottombar > *,
		.thread_footer_tools > *,
		.threadlist_toolbar > *,
		.forumdisplay_footer > * {
			width: 100%;
		}

		.thread_topbar .float_right,
		.thread_bottombar .float_right {
			margin-left: 0;
			text-align: left;
		}

		.hf-partner-card {
			width: 245px;
		}

		.hf-partner-copy em {
			max-width: 118px;
			overflow: hidden;
			text-overflow: ellipsis;
		}

		#posts .post {
			grid-template-areas:
				"author"
				"content"
				"controls";
			grid-template-columns: 1fr;
		}

		#posts .post_author {
			border-bottom: 1px solid rgba(255, 255, 255, .10);
			border-right: 0;
			padding: 11px 12px;
			position: static;
			border-radius: 8px 8px 0 0;
			text-align: left;
		}

		#posts .post_content {
			border-radius: 0 0 8px 8px;
		}

		#posts .author_avatar {
			float: left;
			height: 70px;
			margin: 0 10px 0 0;
			padding: 4px;
			width: 70px;
		}

		#posts .author_avatar img {
			height: 58px;
			width: 58px;
		}

		#posts .author_statistics {
			clear: both;
			margin-top: 9px;
			padding-top: 8px;
		}

		#posts .post_body {
			min-height: 100px;
			padding: 14px 12px;
		}

		#posts .post_date {
			display: block;
			float: none;
			margin: 3px 0 0;
		}

		.thread_titlebar .thread_toggle {
			float: none;
			margin: 0 0 4px;
			text-align: right;
		}

		.thread_titlebar .thread_subject {
			padding-right: 0 !important;
		}

		#posts .post:first-child .post_anchor {
			right: 8px;
			top: 8px;
		}

		#posts .post_controls {
			align-items: stretch;
			flex-direction: column;
		}

		#posts .postbit_buttons {
			width: 100%;
		}

		#posts .postbit_buttons a {
			flex: 1 1 auto;
			text-align: center;
		}

		#footer .upper {
			padding: 9px 0;
		}

		#footer .hf-footer-auth {
			align-items: stretch;
			flex-direction: column;
			margin-bottom: 10px;
			width: calc(100% - 20px);
		}

		#footer .hf-footer-auth-actions {
			width: 100%;
		}

		#footer .hf-footer-auth-actions .hf-auth-button {
			flex: 1 1 50%;
		}

		#footer ul.bottom_links {
			justify-content: center;
			text-align: center;
		}

	#footer .upper .wrapper {
		align-items: center;
		flex-direction: column;
	}

	#search {
		width: 100%;
	}

	#search input.textbox {
		flex: 1;
		width: auto;
	}

		.hf-paywall-grid {
			grid-template-columns: 1fr;
		}

		.hf-auth-grid {
			grid-template-columns: 1fr;
		}

.hf-registration-hero {
padding: 18px 15px 14px;
}

.hf-registration-hero:after {
font-size: 48px;
right: 12px;
top: 16px;
}

.hf-registration-steps {
gap: 5px;
}

.hf-registration-steps span {
font-size: 9px;
padding: 4px 6px;
}

.hf-registration-card,
.hf-registration-card > tbody,
.hf-registration-card > tbody > tr,
.hf-registration-card > tbody > tr > td {
display: block;
width: 100% !important;
}

.hf-registration-titlebar > div {
align-items: flex-start;
flex-direction: column;
gap: 3px;
}

.hf-registration-column {
padding: 12px !important;
}

.hf-registration-column + .hf-registration-column {
border-left: 0;
border-top: 1px solid rgba(255, 255, 255, .10);
}

.hf-registration-submit {
width: 100%;
}

		.hf-auth-gate {
			padding: 12px;
		}

		.hf-auth-dialog {
			max-height: calc(100vh - 24px);
			padding: 19px 15px;
		}

		.hf-category-watermark {
			font-size: 28px;
			right: 12px;
		}

		.hf-paywall-attachments {
			margin-left: 9px;
			margin-right: 9px;
		}
}

	@media (max-width: 420px) {
	body,
	#container {
		font-size: 11px;
	}

	#logo img {
		width: 290px;
	}

	.hf-tab {
		flex-basis: calc(50% - 4px);
	}

		.thead,
	.tcat,
	.trow1,
	.trow2 {
		padding-left: 7px;
		padding-right: 7px;
	}

		.forum_index td:nth-child(1),
		.thread_list td:nth-child(1) {
			width: 1%;
		}

		.thread_legend,
		.forum_legend {
			display: grid;
			grid-template-columns: 1fr 1fr;
		}
}
		
/* =========================================================
   MYBB FORUM FID ICONS
   ========================================================= */

.forum_row .forum_status.hf-forum-status-icon {
    display: inline-block !important;

    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;

    background-color: transparent !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;

    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;

    opacity: 1 !important;
    filter: none !important;
}

/* Remove the old MyBB bullet/icon */
.forum_row .forum_status.hf-forum-status-icon::before {
    content: none !important;
}


/* =========================================================
   DEFAULT ICON
   ========================================================= */

.hf-forum-status-icon {
    background-image: url(/images/hf-forum-icons/fid-default.png) !important;
}


/* =========================================================
   FID 1
   ========================================================= */

.hf-forum-status-fid-1 {
    background-image: url(/images/hf-forum-icons/fid-1.png) !important;
}


/* =========================================================
   FID 2
   ========================================================= */

.hf-forum-status-fid-2 {
    background-image: url(/images/hf-forum-icons/fid-2.png) !important;
}


/* =========================================================
   FID 3
   ========================================================= */

.hf-forum-status-fid-3 {
    background-image: url(../../../images/hf-forum-icons/fid-3.png) !important;
}


/* =========================================================
   FID 4
   ========================================================= */

.hf-forum-status-fid-4 {
    background-image: url(/images/hf-forum-icons/fid-4.png) !important;
}


/* =========================================================
   FID 5
   ========================================================= */

.hf-forum-status-fid-5 {
    background-image: url(/images/hf-forum-icons/fid-5.png) !important;
}


/* =========================================================
   FID 6
   ========================================================= */

.hf-forum-status-fid-6 {
    background-image: url(/images/hf-forum-icons/fid-6.png) !important;
}


/* =========================================================
   FID 7
   ========================================================= */

.hf-forum-status-fid-7 {
    background-image: url(/images/hf-forum-icons/fid-7.png) !important;
}


/* =========================================================
   FID 8
   ========================================================= */

.hf-forum-status-fid-8 {
    background-image: url(/images/hf-forum-icons/fid-8.png) !important;
}


/* =========================================================
   FID 9
   ========================================================= */

.hf-forum-status-fid-9 {
    background-image: url(/images/hf-forum-icons/fid-9.png) !important;
}


/* =========================================================
   FID 10
   ========================================================= */

.hf-forum-status-fid-10 {
    background-image: url(/images/hf-forum-icons/fid-10.png) !important;
}

/* Readability pass: keep the compact HF look while making everyday forum
   text easier to scan on desktop and mobile. */
body,
#container {
    font-size: 14px;
}

.smalltext,
.smalltext a,
.forum_index > tbody > tr.forum_row > td:nth-child(2) .smalltext {
    font-size: 12px;
}

.forum_index > tbody > tr.forum_row > td:nth-child(2) > strong {
    font-size: 16px;
}

#posts .post_body,
.post_body {
    font-size: 14px;
    line-height: 1.6;
}

.lastpost,
.lastpost a,
.forum_index td:last-child .smalltext,
.thread_list td:last-child .smalltext {
    font-size: 13px;
    line-height: 1.45;
}

/* =========================================================
   FINAL POLISH PASS
   ========================================================= */

/* MyBB emits several notice class names. Keep them consistent and use
   semantic accent classes from the templates below. */
.hf-alert,
.pm_alert,
.red_alert,
.error,
.success,
.notice {
    align-items: flex-start;
    background:
        linear-gradient(105deg, rgba(42, 27, 52, .97), rgba(18, 18, 21, .97)),
        radial-gradient(circle at 0 0, rgba(166, 67, 224, .18), transparent 42%);
    border: 1px solid rgba(181, 102, 225, .34);
    border-left: 4px solid var(--hf-purple-light);
    border-radius: 7px;
    box-shadow: inset 0 1px rgba(255, 255, 255, .06), 0 5px 16px rgba(0, 0, 0, .28);
    color: #dedde2;
    display: flex;
    font-size: 14px;
    gap: 11px;
    line-height: 1.5;
    margin: 0 0 12px;
    min-height: 48px;
    padding: 12px 44px 12px 14px;
    position: relative;
    text-align: left;
}

.hf-alert:before,
.pm_alert:before,
.red_alert:before,
.error:before,
.success:before,
.notice:before {
    color: var(--hf-purple-light);
    content: "!";
    flex: 0 0 22px;
    font-size: 15px;
    font-weight: 900;
    line-height: 22px;
    text-align: center;
}

.hf-alert a,
.pm_alert a,
.red_alert a,
.error a,
.success a,
.notice a {
    color: #f0cfff;
    font-weight: bold;
    text-decoration: underline;
    text-decoration-color: rgba(240, 207, 255, .35);
    text-underline-offset: 2px;
}

.hf-alert a:hover,
.pm_alert a:hover,
.red_alert a:hover,
.error a:hover,
.success a:hover,
.notice a:hover {
    color: var(--hf-green);
}

.hf-alert .float_right,
.pm_alert .float_right {
    margin: 0;
    position: absolute;
    right: 11px;
    top: 11px;
}

.hf-alert .float_right a,
.pm_alert .float_right a {
    align-items: center;
    background: rgba(255, 255, 255, .07);
    border: 1px solid rgba(255, 255, 255, .15);
    border-radius: 50%;
    display: flex;
    height: 22px;
    justify-content: center;
    text-decoration: none;
    width: 22px;
}

.hf-alert .float_right a:hover,
.pm_alert .float_right a:hover {
    background: rgba(70, 255, 56, .14);
    border-color: var(--hf-green);
}

.hf-alert .float_right img,
.pm_alert .float_right img {
    height: 11px;
    opacity: .9;
    width: 11px;
}

.hf-alert-pm,
.pm_alert {
    background:
        linear-gradient(105deg, rgba(48, 27, 63, .98), rgba(19, 20, 23, .98)),
        radial-gradient(circle at 0 0, rgba(70, 255, 56, .12), transparent 42%);
    border-color: rgba(181, 102, 225, .46);
    border-left-color: var(--hf-green);
}

.hf-alert-pm:before,
.pm_alert:before {
    color: var(--hf-green);
    content: "✉";
}

.hf-alert-activation {
    background:
        linear-gradient(105deg, rgba(66, 47, 24, .97), rgba(24, 20, 16, .98)),
        radial-gradient(circle at 0 0, rgba(255, 177, 58, .16), transparent 42%);
    border-color: rgba(255, 177, 58, .38);
    border-left-color: #ffb13a;
}

.hf-alert-activation:before {
    color: #ffb13a;
    content: "✓";
}

.hf-alert-danger,
.error {
    background:
        linear-gradient(105deg, rgba(65, 27, 35, .97), rgba(24, 17, 20, .98)),
        radial-gradient(circle at 0 0, rgba(255, 79, 102, .14), transparent 42%);
    border-color: rgba(255, 102, 121, .36);
    border-left-color: #ff6079;
}

.hf-alert-danger:before,
.error:before {
    color: #ff7187;
    content: "!";
}

.hf-alert-success,
.success {
    border-left-color: var(--hf-green);
}

.hf-alert-success:before,
.success:before {
    color: var(--hf-green);
    content: "✓";
}

/* Make the forum surface easier to scan on desktop. */
.forum_index {
    font-size: 14px;
}

.forum_index > tbody > tr.forum_row > td {
    padding-bottom: 15px;
    padding-top: 15px;
}

.forum_index > tbody > tr.forum_row > td:nth-child(2) > strong {
    font-size: 17px;
}

.forum_index > tbody > tr.forum_row > td:nth-child(2) .smalltext {
    font-size: 13px;
    line-height: 1.5;
}

.forum_index .forum_status.hf-forum-status-icon {
    height: 46px !important;
    min-height: 46px !important;
    min-width: 46px !important;
    width: 46px !important;
}

/* Reserve the expander's space. text-overflow is deliberately disabled so
   the watermark never produces an ellipsis beside the control. */
.hf-category-head .hf-category-watermark {
    max-width: calc(100% - 160px);
    right: 46px;
    text-overflow: clip;
    z-index: 1;
}

.hf-category-head .expcolimage {
    background: rgba(46, 25, 56, .72);
    border-radius: 4px;
    padding: 2px;
    right: 8px;
    top: 6px;
    z-index: 4;
}

/* Exactly two partner cards; no duplicated marquee copies. */
.hf-partners-marquee {
    overflow: visible;
}

.hf-partners-track {
    animation: none;
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 8px;
    width: 100%;
}

.hf-partner-card {
    width: auto;
}

/* Stable hooks for private-message lists. */
.hf-pm-table {
    table-layout: fixed;
}

.hf-pm-table .hf-pm-subject {
    overflow-wrap: anywhere;
}

.hf-pm-table .hf-pm-date {
    white-space: normal !important;
}

.hf-pm-table .hf-pm-check {
    text-align: center;
}

@media (max-width: 720px) {
    .hf-alert,
    .pm_alert,
    .red_alert,
    .error,
    .success,
    .notice {
        font-size: 13px;
        margin-bottom: 10px;
        padding: 11px 39px 11px 10px;
    }

    .forum_index,
    .forum_index > thead,
    .forum_index > tbody,
    .forum_index > thead > tr,
    .forum_index > tbody > tr {
        display: block !important;
        width: 100% !important;
    }

    .forum_index > thead > tr > td,
    .forum_index > tbody > tr:not(.forum_row) > td {
        display: none !important;
    }

    .forum_index > thead > tr > td.hf-category-head {
        display: block !important;
    }

    .forum_index > tbody > tr.forum_row {
        display: grid !important;
        grid-template-columns: 58px minmax(0, 1fr) !important;
        min-height: 92px;
    }

    .forum_index > tbody > tr.forum_row > td {
        display: block !important;
        min-width: 0 !important;
        padding-bottom: 16px !important;
        padding-top: 16px !important;
        width: auto !important;
    }

    .forum_index > tbody > tr.forum_row > td:first-child {
        grid-column: 1;
        grid-row: 1;
        padding-left: 5px !important;
        padding-right: 5px !important;
    }

    .forum_index > tbody > tr.forum_row > td:nth-child(2) {
        grid-column: 2;
        grid-row: 1;
        padding-left: 3px !important;
        padding-right: 10px !important;
    }

    .forum_index > tbody > tr.forum_row > td:nth-child(2) > strong {
        font-size: 17px;
    }

    .forum_index > tbody > tr.forum_row > td:nth-child(2) .smalltext {
        font-size: 13px;
        line-height: 1.5;
    }

    .forum_index .forum_status.hf-forum-status-icon {
        height: 46px !important;
        min-height: 46px !important;
        min-width: 46px !important;
        width: 46px !important;
    }

    .hf-category-head .hf-category-watermark {
        max-width: calc(100% - 104px);
        right: 40px;
        font-size: clamp(22px, 9vw, 38px);
    }

    .hf-category-head .expcolimage {
        right: 7px;
    }

    .hf-partners-track {
        grid-template-columns: 1fr;
    }

    .hf-partner-card {
        min-height: 66px;
    }

    .hf-pm-table,
    .hf-pm-table > tbody,
    .hf-pm-table > tbody > tr {
        display: block;
        width: 100%;
    }

    .hf-pm-table > tbody > tr:first-child,
    .hf-pm-table > tbody > tr:nth-child(2) {
        display: none;
    }

    .hf-pm-table .hf-pm-row {
        align-items: center;
        display: grid;
        grid-template-columns: 28px 28px minmax(0, 1fr) 28px;
        padding: 10px 8px;
    }

    .hf-pm-table .hf-pm-row > td {
        display: block;
        min-width: 0;
        padding: 5px 4px;
        width: auto !important;
    }

    .hf-pm-table .hf-pm-row > td:nth-child(4),
    .hf-pm-table .hf-pm-row > td:nth-child(5) {
        display: none;
    }

    .hf-pm-table .hf-pm-subject {
        font-size: 13px;
        grid-column: 3;
        grid-row: 1;
    }

    .hf-pm-table .hf-pm-check {
        grid-column: 4;
        grid-row: 1;
    }
}

/* READABILITY SCALE + MYBBFORGE BRAND REVAMP */
html {
    font-size: 16px;
}

body,
#container {
    font-size: 15px;
    line-height: 1.55;
}

#content {
    font-size: 15px;
}

#logo {
    background:
        linear-gradient(180deg, rgba(8, 8, 10, .72), rgba(27, 12, 36, .88)),
        radial-gradient(circle at 50% 0, rgba(166, 67, 224, .25), transparent 58%);
    border-bottom-color: rgba(166, 67, 224, .34);
    box-shadow: 0 8px 26px rgba(0, 0, 0, .34);
}

#logo img {
    filter:
        drop-shadow(0 0 8px rgba(166, 67, 224, .38))
        drop-shadow(0 0 13px rgba(70, 255, 56, .25));
}

.smalltext,
.smalltext a {
    font-size: 13px;
    line-height: 1.5;
}

.tborder td,
.tborder th {
    font-size: 14px;
}

.forum_index > thead > tr > td.thead,
.thread_list > thead > tr > td.thead {
    font-size: 15px;
    letter-spacing: .01em;
}

.forum_index > thead > tr > td.thead .smalltext,
.thread_list > thead > tr > td.thead .smalltext {
    font-size: 12px;
}

.forum_index > tbody > tr.forum_row > td {
    padding-bottom: 17px;
    padding-top: 17px;
}

.forum_index > tbody > tr.forum_row > td:nth-child(2) > strong {
    font-size: 19px;
    line-height: 1.3;
}

.forum_index > tbody > tr.forum_row > td:nth-child(2) .smalltext {
    font-size: 14px;
    line-height: 1.55;
}

.forum_index > tbody > tr.forum_row > td:nth-child(3),
.forum_index > tbody > tr.forum_row > td:nth-child(4) {
    font-size: 15px;
}

.forum_index > tbody > tr.forum_row > td:nth-child(5),
.forum_index > tbody > tr.forum_row > td:nth-child(5) .smalltext,
.forum_index > tbody > tr.forum_row > td:nth-child(5) a,
.lastpost,
.lastpost a,
.thread_list td:last-child .smalltext {
    font-size: 14px;
    line-height: 1.5;
}

.forum_index > tbody > tr.forum_row > td:nth-child(5) a {
    font-weight: 700;
}

.thread_list .tcat,
.forum_index .tcat {
    font-size: 13px;
}

.button,
button,
input.button {
    font-size: 14px;
    line-height: 1.3;
    min-height: 34px;
    padding: 7px 13px;
}

/* Keep the paid-files control left-aligned, with the live message directly
   below it and immediately above the forum listing. */
#content > .wrapper > .paidattachments-sidebar-toggle-row {
    align-items: center;
    display: flex;
    justify-content: flex-start !important;
    margin: 0 0 9px;
    min-height: 34px;
    text-align: left !important;
}

#content > .wrapper > .paidattachments-sidebar-toggle-row .float_right {
    float: none !important;
    margin-left: 0 !important;
}

#content > .wrapper > .paidattachments-sidebar-toggle-row > * {
    float: none !important;
    margin-left: 0 !important;
    text-align: left !important;
}

#content > .wrapper > .paidattachments-sidebar-toggle-row a,
#content > .wrapper > .paidattachments-sidebar-toggle-row button,
#content > .wrapper > .paidattachments-sidebar-toggle-row input {
    margin-left: 0 !important;
}

#content > .wrapper > .hf-board-message {
    background:
        linear-gradient(105deg, rgba(39, 18, 53, .98), rgba(17, 22, 19, .96)),
        radial-gradient(circle at 0 0, rgba(70, 255, 56, .13), transparent 46%);
    border: 1px solid rgba(181, 102, 225, .36);
    border-left: 4px solid var(--hf-green);
    box-shadow: inset 0 1px rgba(255, 255, 255, .07), 0 5px 18px rgba(0, 0, 0, .28);
    display: block !important;
    font-size: 14px;
    line-height: 1.55;
    margin: 0 0 14px;
    padding: 12px 16px;
    text-align: left;
}

#content > .wrapper > .hf-board-message strong {
    color: #fff;
    font-size: 15px;
}

#content > .wrapper > .hf-board-message em {
    color: var(--hf-green);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .03em;
}

.paidattachments-index-layout {
    gap: 14px;
}

.paidattachments-index-forums {
    min-width: 0;
}

@media (max-width: 720px) {
    body,
    #container,
    #content {
        font-size: 15px;
    }

    #content > .wrapper {
        padding-left: 8px;
        padding-right: 8px;
    }

    .smalltext,
    .smalltext a {
        font-size: 13px;
    }

    #content > .wrapper > .paidattachments-sidebar-toggle-row {
        margin-bottom: 8px;
        padding-left: 0;
    }

    #content > .wrapper > .hf-board-message {
        font-size: 14px;
        margin-bottom: 12px;
        padding: 11px 12px;
    }

    #content > .wrapper > .hf-board-message strong {
        font-size: 15px;
    }

    #content > .wrapper > .hf-board-message em {
        display: inline;
        font-size: 11px;
    }

    .forum_index > tbody > tr.forum_row {
        grid-template-columns: 52px minmax(0, 1fr) !important;
        min-height: 0;
    }

    .forum_index > tbody > tr.forum_row > td {
        padding-bottom: 13px !important;
        padding-top: 13px !important;
    }

    .forum_index > tbody > tr.forum_row > td:nth-child(2) > strong {
        font-size: 18px;
    }

    .forum_index > tbody > tr.forum_row > td:nth-child(2) .smalltext {
        font-size: 14px;
        line-height: 1.5;
    }

    /* Hide Threads and Posts (including the 0 / 0 values), but retain a
       readable Last Post block when that forum has an actual last post. */
    .forum_index > tbody > tr.forum_row > td:nth-child(3),
    .forum_index > tbody > tr.forum_row > td:nth-child(4) {
        display: none !important;
    }

    .forum_index > tbody > tr.forum_row > td:nth-child(5) {
        display: block !important;
        grid-column: 2;
        grid-row: 2;
        min-width: 0 !important;
        padding: 0 10px 15px 3px !important;
        text-align: left !important;
        width: auto !important;
    }

    /* MyBB renders an empty forum's "Never" value as plain text, while a
       populated forum uses the smalltext last-post template. */
    .forum_index > tbody > tr.forum_row > td:nth-child(5):not(:has(.smalltext)) {
        display: none !important;
    }

    .forum_index > tbody > tr.forum_row > td:nth-child(5) .smalltext,
    .forum_index > tbody > tr.forum_row > td:nth-child(5) a {
        font-size: 13px;
        line-height: 1.45;
    }

    .forum_index > tbody > tr.forum_row > td:nth-child(5) a {
        font-size: 14px;
    }
}


		