@font-face {
	font-family: "Droid Sans";
	src: url(../../../images/space-cadet/fonts/droid-sans/DroidSans-Regular.woff2) format("woff2"),
		url(../../../images/space-cadet/fonts/droid-sans/DroidSans-Regular.ttf) format("truetype");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Droid Sans";
	src: url(../../../images/space-cadet/fonts/droid-sans/DroidSans-Bold.woff2) format("woff2"),
		url(../../../images/space-cadet/fonts/droid-sans/DroidSans-Bold.ttf) format("truetype");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

html,
body {
	background-color: #171b1d;
	background-image: url(../../../images/space-cadet/backgrounds/scbg.png);
	background-repeat: repeat;
}

html {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

body,
#container,
input,
textarea,
select,
button {
	color: #ccc;
	font-family: "Droid Sans", Arial, Helvetica, sans-serif;
	}

body,
#container {
	font-size: 14px;
}

#container { min-width: 0; }

a:link,
a:visited { color: #7289da; }

a:hover,
a:active {
	color: #b56ac4;
	text-decoration: none;
}

.wrapper {
	box-sizing: border-box;
	width: 92%;
	min-width: 0;
	max-width: 1600px;
}

#logo {
	min-height: 115px;
	padding: 0 0 20px;
	background-color: #151515;
	background-image: linear-gradient(rgba(8, 8, 12, 0.18), rgba(8, 8, 12, 0.18)), url(../../../images/space-cadet/banner-bg.jpg);
	background-position: center;
	background-size: 108% auto;
	background-repeat: no-repeat;
	border-bottom: 1px solid #262626;
}

.header_banner_content {
	position: relative;
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	justify-content: center;
	box-sizing: border-box;
	min-height: 140px;
	padding-top: 20px;
}

.header_nav {
	position: relative;
	z-index: 200;
	width: 100%;
	background: rgba(8, 8, 12, 0.58);
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.28);
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
}

.header_nav .wrapper {
	position: relative;
}

#logo img {
	display: block;
	max-width: 420px;
	width: auto;
	height: auto;
}

#logo ul.top_links {
	box-sizing: border-box;
	width: 100%;
	margin: 0 auto;
	padding: 5px 7px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 6px;
}

#logo ul.menu li {
	margin: 0;
	display: block;
}

#header ul.menu li a {
	padding: 8px 10px;
	background-image: none;
	border-radius: 3px;
	color: #fff;
}

#header ul.menu li a i {
	color: #7289da;
	font-size: 13px;
}

#header ul.menu li a:hover { background-color: #262626; }

#panel .upper {
	background: #0e0e0e;
	border-color: #262626 #101010;
}

#panel .lower {
	background: #181818;
	color: #969696;
	border-color: #262626;
}

#panel .upper .wrapper,
#panel .lower .wrapper {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}

.header_account {
	position: absolute;
	right: 0;
	bottom: -20px;
	z-index: 100;
	display: flex;
	align-items: stretch;
}

.header_account_member,
.header_messages { position: relative; }

.header_guest_account {
	position: absolute;
	right: 0;
	bottom: -20px;
	padding: 8px 10px;
	background: rgba(8, 8, 12, 0.7);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 4px;
	color: #ccc;
}

.header_guest_account a { margin-left: 8px; }

.header_account_toggle {
	display: flex;
	align-items: center;
	height: 100%;
	box-sizing: border-box;
	padding: 8px 10px;
	background: rgba(8, 8, 12, 0.7);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 4px;
	color: #fff;
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
}

.header_account_toggle:link,
.header_account_toggle:visited,
.header_account_toggle:hover,
.header_account_toggle:active,
.header_messages_toggle:link,
.header_messages_toggle:visited,
.header_messages_toggle:hover,
.header_messages_toggle:active { color: #fff; }

.header_account_toggle:hover { background: rgba(24, 24, 30, 0.88); }

.header_messages_toggle {
	display: flex;
	align-items: center;
	height: 100%;
	box-sizing: border-box;
	padding: 8px 10px;
	background: rgba(8, 8, 12, 0.7);
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-left: 0;
	border-radius: 0 4px 4px 0;
	color: #fff;
}

.header_account_member .header_account_toggle { border-radius: 4px 0 0 4px; }

.header_messages_toggle:hover { background: rgba(24, 24, 30, 0.88); }

.header_messages_count {
	margin-left: 8px;
	padding: 2px 6px;
	background: #666;
	border-radius: 2px;
	color: #fff;
	font-weight: bold;
	line-height: 1.2;
}

.header_messages_count:not([data-count="0"]) {
	background: #a8aaf4;
	color: #12131b;
	box-shadow: inset 0 0 0 1px #c8c9ff, 0 0 8px rgba(168, 170, 244, 0.3);
}

.space_cadet_redirect_page {
	box-sizing: border-box;
	min-height: 100vh;
	margin: 0;
	padding: clamp(48px, 12vh, 120px) 16px;
	display: grid;
	place-items: start center;
	background: #111315;
	color: #d8d8df;
}

.space_cadet_redirect_panel {
	box-sizing: border-box;
	width: min(680px, 100%);
	max-width: 720px;
	margin: 0 auto;
	overflow: hidden;
	border: 1px solid #3c3d4d;
	border-radius: 7px;
	background: linear-gradient(145deg, #1c1c22, #18181d);
	box-shadow: 0 18px 48px rgba(0, 0, 0, 0.38), 0 0 24px rgba(114, 137, 218, 0.08);
}

.space_cadet_redirect_title {
	margin: 0;
	padding: 14px 18px;
	border-left: 3px solid #8f91e8;
	background: #151518;
	color: #f0f0f4;
	font-size: 13px;
	line-height: 1.3;
	text-transform: uppercase;
}

.space_cadet_redirect_content {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 28px 24px 24px;
}

.space_cadet_redirect_icon {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border: 1px solid #55578a;
	border-radius: 50%;
	background: #242536;
	color: #b9baff;
	font-size: 16px;
	box-shadow: inset 0 0 0 4px rgba(143, 145, 232, 0.05);
}

.space_cadet_redirect_message {
	padding: 18px 0 16px;
	color: #eeeef4;
	font-size: 14px;
	text-align: center;
	line-height: 1.55;
}

.space_cadet_redirect_message p { margin: 0; }

.space_cadet_redirect_progress {
	width: min(320px, 80%);
	height: 3px;
	overflow: hidden;
	border-radius: 999px;
	background: #30313b;
}

.space_cadet_redirect_progress span {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: inherit;
	background: linear-gradient(90deg, #7289da, #b56ac4);
	transform-origin: left;
	animation: space-cadet-redirect-progress 2s linear forwards;
}

@keyframes space-cadet-redirect-progress {
	from { transform: scaleX(0); }
	to { transform: scaleX(1); }
}

.space_cadet_redirect_action {
	display: flex;
	justify-content: center;
	padding-top: 17px;
	text-align: center;
}

.space_cadet_redirect_action a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	color: #b9baff;
	font-size: 12px;
	line-height: 1.3;
}

.space_cadet_redirect_action a:hover {
	color: #fff;
	text-decoration: underline;
}

.space_cadet_redirect_action a:focus-visible {
	outline: 2px solid #a8aaf4;
	outline-offset: 2px;
}

@media (prefers-reduced-motion: reduce) {
	.space_cadet_redirect_progress span {
		animation: none;
		transform: scaleX(1);
	}
}

.header_account_toggle .fa-circle-user { color: #7289da; }

.header_account_chevron {
	margin-left: 3px;
	font-size: 9px;
	color: #aaa;
}

.header_account_menu {
	position: absolute !important;
	top: calc(100% + 2px) !important;
	left: auto !important;
	right: 0;
	box-sizing: border-box;
	min-width: 155px;
	padding: 5px 0;
	margin: 0;
	list-style: none;
	background: #2f2f32;
	border: 1px solid #444;
	border-radius: 3px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);
}

.header_account_menu li { margin: 0; }

.header_messages_menu { min-width: 130px; }

.popup_menu.header_account_menu li > a,
.popup_menu.header_account_menu .popup_item {
	box-sizing: border-box;
	display: block;
	padding: 7px 12px;
	background: #2f2f32;
	color: #eee;
	white-space: nowrap;
}

.popup_menu.header_account_menu li > a:hover,
.popup_menu.header_account_menu .popup_item:hover {
	background: #414145;
	color: #fff;
}

.header_extras_menu {
	z-index: 1000 !important;
	box-sizing: border-box;
	min-width: 170px;
	padding: 5px 0;
	background: #2f2f32;
	border: 1px solid #444;
	border-radius: 3px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);
}

.header_extras_menu .popup_item_container { margin: 0; }

.popup_menu.header_extras_menu .popup_item {
	box-sizing: border-box;
	display: block;
	padding: 7px 12px;
	background: #2f2f32;
	color: #eee;
	white-space: nowrap;
}

.popup_menu.header_extras_menu .popup_item:hover {
	background: #414145;
	color: #fff;
}

#panel ul.menu {
	margin: 0;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px 18px;
}

#panel ul.menu li {
	margin: 0;
	display: inline-block;
}

#panel a i {
	color: #7289da;
	font-size: 12px;
}

#panel .upper,
#panel .lower {
	padding: 3px 0;
}

#panel .lower a {
	display: inline-block;
	padding: 4px 2px;
}

#panel .lower a:hover { color: #fff; }

#panel .lower ul.panel_links,
#panel .lower ul.user_links { float: none; }

#panel .lower br.clear { display: none; }

#panel .lower a:link,
#panel .lower a:visited,
#panel .lower a:hover,
#panel .lower a:active { color: #ccc; }

#search {
	order: 2;
	float: none;
	display: flex;
	gap: 5px;
}

#search input { margin: 0; }

#search input.textbox {
	background: #181818;
	border-color: #4a4a4a;
	box-shadow: inset 0 1px 2px #0a0a0a;
}

#search input.textbox:hover { border-color: #606060; }

#search input.textbox:focus {
	background: #1d1d1d;
	border-color: #7289da;
	box-shadow: 0 0 0 1px rgba(114, 137, 218, 0.25);
}

/* Keep the quick-login modal within one cohesive Space Cadet palette. */
#quick_login {
	width: 350px;
	max-width: 100%;
	background: #161619;
	border: 1px solid #34343a;
	border-radius: 4px;
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.6);
	color: #d8d8df;
}

#quick_login .tborder {
	background: #1c1c20;
	border: 0;
	border-collapse: collapse;
	border-spacing: 0;
	border-radius: 3px;
	box-shadow: none;
}

#quick_login .thead {
	padding: 9px 10px;
	background: #17171a;
	border: 0;
	box-shadow: none;
	color: #eeeef4;
	text-shadow: none;
}

#quick_login .trow1,
#quick_login .trow2 {
	background: #1c1c20;
	border: 0;
	color: #d8d8df;
}

#quick_login .tborder > tbody > tr:nth-child(2) > td:first-child,
#quick_login .tborder > tbody > tr:nth-child(3) > td:first-child {
	box-sizing: border-box;
	width: 28%;
	padding-top: 14px;
	padding-right: 8px;
	text-align: right;
	vertical-align: top;
}

#quick_login input.textbox {
	width: 100%;
	max-width: 190px;
	background: #17171a;
	border-color: #484850;
	color: #eeeef4;
}

#quick_login input.textbox:hover {
	background: #1d1d22;
	border-color: #5b5b65;
}

#quick_login input.textbox:focus {
	background: #1d1d22;
	border-color: #7c7edc;
	box-shadow: 0 0 0 2px rgba(124, 126, 220, 0.24);
}

#quick_login .lost_password:link,
#quick_login .lost_password:visited { color: #aeb1ff; }

#quick_login .lost_password:hover,
#quick_login .lost_password:active { color: #d6d7ff; }

#quick_login input[type="checkbox"] { accent-color: #7c7edc; }

#quick_login input.button {
	background: #303268;
	border-color: #5f61b8;
	color: #f5f5ff;
}

#quick_login input.button:hover,
#quick_login input.button:focus {
	background: #41438a;
	border-color: #8d90ed;
	color: #fff;
}

#content {
	box-sizing: border-box;
	padding: 18px 0 28px;
	background: transparent;
	color: #d3d3d3;
}

#content .navigation { color: #aaa; }

#content .navigation a:link,
#content .navigation a:visited { color: #7289da; }

.tborder {
	background: #161616;
	border: 1px solid #0d0d0d;
	border-radius: 3px;
	box-shadow: inset 0 0 1px 1px #262626, 0 8px 24px rgba(0, 0, 0, 0.22);
	overflow: hidden;
}

.thead {
	background: #151515;
	padding: 10px;
	color: #fff;
	border-left: 3px solid #7289da;
	border-bottom-color: #080808;
	box-shadow: inset 0 0 1px 1px #292929;
	text-transform: uppercase;
	text-shadow: 1px 1px 0 #070707;
}

.thead a:link,
.thead a:visited,
.thead a:hover,
.thead a:active,
.tcat a:link,
.tcat a:visited,
.tcat a:hover,
.tcat a:active { color: #fff; }

.tcat {
	background: #202020;
	padding: 7px 10px;
	color: #ccc;
	border-top-color: #111;
	border-bottom-color: #303030;
}

.trow1 { background: #181818; }
.trow2 { background: #1c1c1c; }

/* Forum states use local Font Awesome badges instead of MyBB's sprite. */
.forum_status {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 38px;
	height: 30px;
	background: transparent;
	border: 0;
	color: #7289da;
	font-family: "Font Awesome 6 Free";
	font-size: 24px;
	font-weight: 900;
	line-height: 1;
}

.forum_status::before { content: "\f11b"; }

.forum_status.forum_off {
	color: #777;
	opacity: 0.65;
}

.forum_status.forum_offclose {
	color: #888;
	opacity: 0.75;
}

.forum_status.forum_offclose::after,
.forum_status.forum_offlink::after {
	position: absolute;
	right: -2px;
	bottom: -1px;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 14px;
	height: 14px;
	background: #111;
	border: 1px solid #3b3b3b;
	border-radius: 50%;
	color: #aaa;
	font-size: 8px;
}

.forum_status.forum_offclose::after { content: "\f023"; }

.forum_status.forum_offlink {
	color: #888;
	opacity: 0.75;
}

.forum_status.forum_offlink::after { content: "\f061"; }

.forum_legend .forum_status {
	width: 38px;
	height: 28px;
	font-size: 22px;
}

.forum_threads,
.forum_posts {
	box-sizing: border-box;
	width: 68px;
	text-align: center;
}

.forum_lastpost {
	box-sizing: border-box;
	width: 220px;
	padding-left: 6px;
	text-align: left;
}

.forum_row td {
	background: #181818;
	border-left-color: transparent;
	border-right-color: transparent;
	border-top-color: #101010;
	border-bottom-color: #242424;
}

.forum_row:last-child td { border-bottom-color: transparent; }

.forum_threadlist .trow_sep {
	padding: 7px 10px;
	font-weight: 700;
}

.forum_threadlist .thread_sep_announcement {
	background: #a0a3f2;
	border-bottom: 1px solid #7c7edc;
	color: #20202a;
	text-shadow: 0 1px rgba(255, 255, 255, 0.3);
}

.forum_threadlist .thread_sep_sticky {
	background: #7c7edc;
	border-bottom: 1px solid #5f61b8;
	color: #fff;
	text-shadow: 0 1px rgba(32, 32, 42, 0.45);
}

.forum_threadlist .thread_sep_normal {
	background: #242427;
	border-bottom: 1px solid #35353a;
	color: #c7c7cc;
}

.forum_threadlist .inline_row td,
.forum_threadlist .announcement_row td {
	background: #181818;
	border-left-color: transparent;
	border-right-color: transparent;
	border-top-color: #101010;
	border-bottom-color: #242424;
	transition: background-color 0.15s ease;
}

.forum_threadlist .inline_row:hover td { background: #1f1f22; }

.forum_threadlist .inline_row td.trow_shaded {
	background: #2b191c;
	border-top-color: #4d292f;
	border-bottom-color: #4d292f;
}

.forum_threadlist .inline_row td.trow_deleted {
	background: #24202e;
	border-top-color: #493d60;
	border-bottom-color: #493d60;
}

.forum_threadlist .inline_row td.trow_selected,
.forum_threadlist tr.trow_selected td { background: #23232a; }

.index_layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 300px);
	align-items: start;
	gap: 18px;
}

.forum_page_description {
	box-sizing: border-box;
	margin: 0 0 14px;
	padding: 10px 12px;
	border-left: 3px solid #66689f;
	border-radius: 3px;
	background: #18181c;
	color: #aaaab2;
	line-height: 1.5;
	overflow-wrap: anywhere;
}

.forum_page_description:empty { display: none; }

.index_forums,
.index_sidebar { min-width: 0; }

.sidebar_panel {
	margin-bottom: 18px;
	background: #181818;
	border: 1px solid #292929;
}

.sidebar_panel .thead {
	box-sizing: border-box;
	margin: 0;
	padding: 10px;
	font-size: 12px;
}

.sidebar_content { padding: 12px; }

.social_links {
	display: grid;
	grid-template-columns: repeat(6, 1fr);
	gap: 7px;
}

.social_links a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 30px;
	border-radius: 3px;
	color: #fff;
	font-size: 16px;
	transition: filter 0.15s ease, transform 0.15s ease;
}

@media (hover: hover) and (pointer: fine) {
	.social_links a::after {
		content: attr(aria-label);
		position: absolute;
		left: 50%;
		bottom: calc(100% + 7px);
		z-index: 20;
		padding: 4px 7px;
		border: 1px solid #414145;
		border-radius: 3px;
		background: #101012;
		box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
		color: #eee;
		font-size: 11px;
		font-weight: 400;
		line-height: 1.2;
		white-space: nowrap;
		opacity: 0;
		pointer-events: none;
		transform: translate(-50%, 3px);
		transition: opacity 0.15s ease, transform 0.15s ease;
	}

	.social_links a:hover::after,
	.social_links a:focus-visible::after {
		opacity: 1;
		transform: translate(-50%, 0);
	}
}

.social_links a:hover {
	filter: brightness(1.15);
	transform: translateY(-1px);
}

.social_links .discord { background: #5865f2; }
.social_links .instagram { background: #c13584; }
.social_links .facebook { background: #4267b2; }
.social_links .twitter { background: #1da1f2; }
.social_links .telegram { background: #229ed9; }
.social_links .youtube { background: #f00; }

.latest_posts {
	margin: 0;
	padding: 0;
	list-style: none;
}

.latest_posts li {
	padding: 0 0 10px;
	margin: 0 0 10px;
	border-bottom: 1px solid #292929;
}

.latest_posts li:last-child {
	padding-bottom: 0;
	margin-bottom: 0;
	border-bottom: 0;
}

.latest_posts > li > a {
	font-weight: bold;
	font-size: 12px;
	line-height: 1.35;
	white-space: normal;
	overflow-wrap: anywhere;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.latest_posts .activity_meta,
.latest_posts time {
	display: block;
	margin-top: 3px;
	color: #999;
	font-size: 11px;
}

.latest_posts .activity_details {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 8px;
	margin-top: 3px;
}

.latest_posts .activity_details .activity_meta,
.latest_posts .activity_details time {
	display: inline;
	min-width: 0;
	margin-top: 0;
}

.latest_posts .activity_details time {
	flex: 0 0 auto;
	text-align: right;
}

.trow1,
.trow2 {
	color: #ccc;
	padding: 9px 10px;
	border-color: #101010 #292929 #292929 #101010;
}

.trow_shaded,
.trow_selected,
tr.trow_selected td {
	background: #23232a;
	color: #fff;
}

.tfoot {
	background: #181818;
	color: #ccc;
	border-top: 1px solid #101010;
	border-bottom: 1px solid #262626;
}

.tfoot a:link,
.tfoot a:visited { color: #ccc; }

.tfoot a:hover,
.tfoot a:active { color: #fff; }

table,
.smalltext,
.navigation { color: #ccc; }

.smalltext { font-size: 12px; }

.navigation .active { color: #aaa; }

input.textbox,
textarea,
select {
	box-sizing: border-box;
	padding: 6px 8px;
	background: #18181a;
	border: 1px solid #414145;
	border-radius: 3px;
	box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.35);
	color: #ddd;
	font-size: 13px;
	line-height: 1.35;
	transition: background-color 0.15s, border-color 0.15s, box-shadow 0.15s;
}

input.textbox { min-height: 32px; }

textarea {
	min-height: 90px;
	resize: vertical;
}

select {
	min-height: 32px;
	color-scheme: dark;
}

input.textbox::placeholder,
textarea::placeholder {
	color: #777;
	opacity: 1;
}

input.textbox:hover,
textarea:hover,
select:hover {
	background: #1d1d20;
	border-color: #56565c;
}

input.textbox:focus,
textarea:focus,
select:focus {
	background: #1d1d20;
	border-color: #7289da;
	box-shadow: 0 0 0 2px rgba(114, 137, 218, 0.22);
	outline: 0;
}

input.error,
input.invalid_field,
textarea.error,
select.error {
	border-color: #c75555;
	box-shadow: 0 0 0 1px rgba(199, 85, 85, 0.2);
}

div.error {
	background: #30213a;
	border-color: #76518a;
	color: #eee5f2;
}

div.error p,
div.error ul,
div.error li { color: #eee5f2; }

div.error p em { color: #fff; }

div.error a:link,
div.error a:visited {
	color: #b9c6ff;
	font-weight: 700;
	text-decoration: underline;
}

div.error a:hover,
div.error a:active { color: #fff; }

/* Keep warning forms readable and make the projected warning level distinct. */
form[action="warnings.php"] > table.tborder > tbody > tr > .trow1 { background: #181818; }
form[action="warnings.php"] > table.tborder > tbody > tr > .trow2 { background: #242126; }

form[action="warnings.php"] dd.types > .tborder {
	box-sizing: border-box;
	height: 20px;
	background: #101010;
}

form[action="warnings.php"] dd.types > .tborder > .trow1,
form[action="warnings.php"] dd.types > .tborder > .trow2 {
	box-sizing: border-box;
	height: 16px;
	padding: 0;
	border: 0;
}

form[action="warnings.php"] dd.types > .tborder > .trow1 { background: #303268; }
form[action="warnings.php"] dd.types > .tborder > .trow2 { background: #7289da; }

input.valid,
input.valid_field,
textarea.valid,
select.valid { border-color: #438a57; }

input[type="checkbox"],
input[type="radio"] {
	width: 16px;
	height: 16px;
	margin: 0 5px 0 0;
	accent-color: #7289da;
	vertical-align: -3px;
}

input.button,
button,
a.button:link,
a.button:visited {
	box-sizing: border-box;
	min-height: 32px;
	padding: 6px 11px;
	background: #29292c;
	border: 1px solid #414145;
	border-radius: 3px;
	box-shadow: inset 0 1px rgba(255, 255, 255, 0.04);
	color: #ddd;
	cursor: pointer;
	font-size: 12px;
	line-height: 1.2;
	transition: background-color 0.15s, border-color 0.15s, color 0.15s;
}

input.button:hover,
input.button:focus,
button:hover,
button:focus,
a.button:hover,
a.button:focus,
a.button:active {
	background: #3a3a3e;
	border-color: #7289da;
	color: #fff;
	outline: 0;
}

input.button:focus-visible,
button:focus-visible,
a.button:focus-visible {
	box-shadow: 0 0 0 2px rgba(114, 137, 218, 0.25);
}

input:disabled,
textarea:disabled,
select:disabled,
button:disabled,
.button.disabled {
	cursor: not-allowed;
	opacity: 0.5;
}

div.sceditor-dropdown {
	background: #1f2024;
	border-color: #4b4d55;
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.35);
	color: #ddd;
	font-family: "Droid Sans", Arial, Helvetica, sans-serif;
	line-height: 1.35;
}

div.sceditor-dropdown label {
	color: #f1f1f1;
	line-height: 1.35;
}

div.sceditor-dropdown input,
div.sceditor-dropdown textarea {
	box-sizing: border-box;
	width: 100%;
	background: #141416;
	border-color: #555862;
	color: #eee;
}

div.sceditor-dropdown input:focus,
div.sceditor-dropdown textarea:focus {
	border-color: #8298e8;
	box-shadow: 0 0 0 2px rgba(114, 137, 218, 0.22);
}

div.sceditor-dropdown .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 32px;
	background: #33446d;
	border-color: #617ed0;
	color: #fff;
	line-height: 1.2;
}

div.sceditor-dropdown .button:hover,
div.sceditor-dropdown .button:focus {
	background: #566fc0;
	border-color: #8298e8;
	color: #fff;
}

a.button.new_thread_button:link,
a.button.new_thread_button:visited,
a.button.new_thread_button:hover,
a.button.new_thread_button:active,
a.button.new_reply_button:link,
a.button.new_reply_button:visited,
a.button.new_reply_button:hover,
a.button.new_reply_button:active,
form[action^="newreply.php"] input.button[name="submit"],
form[action^="newthread.php"] input.button[name="submit"],
#quick_reply_submit {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	min-height: 32px;
	margin: 2px;
	padding: 6px 11px;
	background: #33446d;
	border: 1px solid #617ed0;
	border-radius: 3px;
	box-shadow: inset 0 1px rgba(255, 255, 255, 0.08);
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	line-height: 1.2;
	text-decoration: none;
}

a.button.new_thread_button:hover,
a.button.new_reply_button:hover,
form[action^="newreply.php"] input.button[name="submit"]:hover,
form[action^="newthread.php"] input.button[name="submit"]:hover,
#quick_reply_submit:hover {
	background: #566fc0;
	border-color: #8298e8;
}

form[action^="newreply.php"] input.button[name="previewpost"],
form[action^="newreply.php"] input.button[name="savedraft"],
form[action^="newthread.php"] input.button[name="previewpost"],
form[action^="newthread.php"] input.button[name="savedraft"] {
	box-sizing: border-box;
	min-height: 32px;
	margin: 2px;
	padding: 6px 11px;
	background: #29292c;
	border: 1px solid #414145;
	border-radius: 3px;
	box-shadow: inset 0 1px rgba(255, 255, 255, 0.04);
	color: #ddd;
	font-size: 12px;
	line-height: 1.2;
}

form[action^="newreply.php"] input.button[name="previewpost"]:hover,
form[action^="newreply.php"] input.button[name="savedraft"]:hover,
form[action^="newthread.php"] input.button[name="previewpost"]:hover,
form[action^="newthread.php"] input.button[name="savedraft"]:hover {
	background: #3a3a3e;
	border-color: #5b5b61;
	color: #fff;
}

a.button.new_thread_button span,
a.button.new_reply_button span {
	display: inline-flex;
	align-items: center;
	padding: 0;
	background: none;
}

a.button.new_thread_button span::before,
a.button.new_reply_button span::before {
	margin-right: 6px;
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
}

a.button.new_thread_button span::before { content: "\f044"; }
a.button.new_reply_button span::before { content: "\f3e5"; }

.pagination {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px;
	padding-top: 10px;
	margin-bottom: 5px;
	font-size: 12px;
}

.tfoot .pagination,
.tcat .pagination { padding-top: 0; }

.pagination .pages,
.pagination a,
.pagination .pagination_current {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 30px;
	margin: 0;
	padding: 5px 9px;
	border: 1px solid #414145;
	border-radius: 3px;
	line-height: 1.2;
}

.pagination .pages {
	background: #18181a;
	border-color: #303034;
	color: #aaa;
	font-weight: 400;
}

.pagination a {
	background: #29292c;
	box-shadow: inset 0 1px rgba(255, 255, 255, 0.04);
	color: #ccc;
}

.pagination a:hover,
.pagination a:focus {
	background: #3a3a3e;
	border-color: #7289da;
	color: #fff;
	text-decoration: none;
}

.pagination .pagination_current {
	background: #667bc4;
	border-color: #8497dc;
	box-shadow: inset 0 1px rgba(255, 255, 255, 0.15), 0 0 0 1px rgba(114, 137, 218, 0.16);
	color: #fff;
	font-weight: 700;
}

.pagination .go_page {
	min-width: 30px;
	padding-right: 7px;
	padding-left: 7px;
}

.pagination .go_page img {
	margin: 0;
	filter: brightness(0) invert(1);
	opacity: 0.75;
}

.drop_go_page {
	box-sizing: border-box;
	padding: 8px;
	background: #2f2f32;
	border: 1px solid #444;
	border-radius: 3px;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);
	color: #ddd;
}

.drop_go_page .textbox {
	box-sizing: border-box;
	width: 62px;
	margin: 0 4px;
	padding: 5px 6px;
	background: #18181a;
	border: 1px solid #4b4b50;
	border-radius: 3px;
	color: #eee;
}

blockquote,
.codeblock {
	background: #141414;
	border-color: #262832;
}

.codeblock code {
	box-sizing: border-box;
	max-width: 100%;
	overflow-x: hidden;
	overflow-y: auto;
	white-space: pre-wrap;
	overflow-wrap: anywhere;
	word-break: break-word;
}

/* Responsive postbit: author sidebar on desktop, compact author row on mobile. */
.post.classic {
	display: grid;
	grid-template-columns: 220px minmax(0, 1fr);
	padding-top: 0;
	margin-bottom: 16px;
	background: #111;
	border: 1px solid #292929;
}

.post.classic .post_author {
	box-sizing: border-box;
	grid-column: 1;
	float: none;
	width: auto;
	margin: 0;
	padding: 16px 14px;
	background: #0d0d0d;
	border: 0;
	border-right: 1px solid #292929;
	color: #ccc;
}

.post.classic .post_author div.author_avatar {
	float: none;
	margin: 0 0 10px;
	text-align: center;
}

.post.classic .post_author div.author_avatar img {
	background: #181818;
	border-color: #383838;
}

.post.classic .post_author div.author_information {
	float: none;
	padding: 0;
	text-align: center;
}

.post.classic .author_information .largetext {
	display: inline-block;
	margin-bottom: 3px;
	font-size: 16px;
	line-height: 1.25;
}

.post.classic .author_information > .smalltext {
	display: inline-block;
	color: #85858b;
	font-size: 11px;
	line-height: 1.45;
}

.post.classic .author_information > .smalltext img {
	max-width: 100%;
	margin-top: 3px;
}

.post.classic .post_author div.author_statistics {
	float: none;
	margin: 10px 0 0;
	padding: 10px 6px 3px;
	border-top-color: #333;
	color: #aaa;
	line-height: 1.5;
}

.post_moderator_info {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid #333;
	overflow-wrap: anywhere;
}

.post_moderator_info_title {
	display: block;
	margin-bottom: 6px;
	text-align: center;
	color: #888;
}

.post.classic .post_content {
	box-sizing: border-box;
	grid-column: 2;
	float: none;
	width: auto;
	min-width: 0;
	padding: 14px 16px 10px;
	background: #1a1a1a;
}

.post.classic .post_head {
	display: flow-root;
	min-height: 28px;
	margin-bottom: 10px;
	padding-bottom: 8px;
	border-bottom: 1px solid #353535;
}

.post .post_head .post_date {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 3px;
	min-height: 26px;
	color: #929298;
	font-size: 11px;
	letter-spacing: 0.01em;
}

.post .post_head .post_date > i {
	margin-right: 2px;
	color: #667bc4;
}

.post .post_head .post_edit {
	display: block;
	flex-basis: 100%;
	margin-top: 3px;
}

.post .post_head .edited_post {
	display: inline;
	color: #77777d;
	font-size: 10px;
	font-style: italic;
	line-height: 1.5;
}

.post .post_head .edited_post i {
	margin-right: 3px;
	color: #68686e;
	font-size: 9px;
}

.post .post_head .edited_post a:link,
.post .post_head .edited_post a:visited { color: #8c8c93; }

.post .post_head .edited_post a:hover,
.post .post_head .edited_post a:active { color: #b0b0b7; }

.post_number {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-left: 12px;
}

.post_number > a:link,
.post_number > a:visited {
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	box-sizing: border-box;
	padding: 3px 8px;
	background: #242427;
	border: 1px solid #3a3a3e;
	border-radius: 3px;
	color: #aeb8d8;
	font-size: 11px;
	font-weight: 700;
	text-decoration: none;
}

.post_number > a:hover,
.post_number > a:active {
	background: #33446d;
	border-color: #617ed0;
	color: #fff;
}

.post.classic .post_author div.author_statistics {
	font-size: 11px;
}

.post.classic .author_stat {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 10px;
	padding: 2px 0;
}

.post.classic .author_stat_label {
	color: #77777d;
	font-weight: 400;
}

.post.classic .author_stat_value {
	min-width: 0;
	color: #b5b5ba;
	font-weight: 600;
	text-align: right;
	overflow-wrap: anywhere;
}

.post.classic .author_stat_value a:link,
.post.classic .author_stat_value a:visited { color: #9ba8d5; }

.post.classic .author_stat_value a:hover,
.post.classic .author_stat_value a:active { color: #c0c9ea; }

.post.classic .post_body {
	min-height: 110px;
	color: #ddd;
}

.post.classic .post_controls {
	grid-column: 1 / -1;
	background: #101010;
	border-top: 1px solid #292929;
	border-bottom: 0;
}

.post.classic .postbit_buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
}

.postbit_buttons > a:link,
.postbit_buttons > a:visited,
.postbit_buttons > a:hover,
.postbit_buttons > a:active {
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	min-height: 24px;
	margin: 0;
	padding: 4px 7px;
	background: #29292c;
	border: 1px solid #414145;
	border-radius: 3px;
	box-shadow: inset 0 1px rgba(255, 255, 255, 0.04);
	color: #ddd;
	font-size: 11px;
	line-height: 1.2;
	text-decoration: none;
	transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.postbit_buttons > a:hover {
	background: #33446d;
	border-color: #617ed0;
	color: #fff;
}

.postbit_buttons a span {
	display: inline-flex;
	align-items: center;
	height: auto;
	padding: 0;
	background: none;
}

.postbit_buttons a span::before {
	width: 14px;
	margin-right: 5px;
	color: #9ca8c9;
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	text-align: center;
}

.postbit_buttons a:hover span::before { color: #fff; }
.postbit_buttons a.postbit_find span::before { content: "\f002"; }
.postbit_buttons a.postbit_reputation_add span::before { content: "\2b"; }
.postbit_buttons a.postbit_email span::before { content: "\f0e0"; }
.postbit_buttons a.postbit_website span::before { content: "\f0ac"; }
.postbit_buttons a.postbit_pm span::before { content: "\f075"; }
.postbit_buttons a.postbit_quote span::before { content: "\f10e"; }
.postbit_buttons a.postbit_multiquote span::before,
.postbit_buttons a.postbit_multiquote_on span::before { content: "\f24d"; }
.postbit_buttons a.postbit_edit span::before { content: "\f304"; }
.postbit_buttons a.postbit_qdelete span::before,
.postbit_buttons a.postbit_delete_pm span::before { content: "\f2ed"; }
.postbit_buttons a.postbit_qrestore span::before { content: "\f2ea"; }
.postbit_buttons a.postbit_report span::before { content: "\f024"; }
.postbit_buttons a.postbit_warn span::before { content: "\f071"; }
.postbit_buttons a.postbit_purgespammer span::before { content: "\f51a"; }
.postbit_buttons a.postbit_reply_pm span::before { content: "\f3e5"; }
.postbit_buttons a.postbit_reply_all span::before { content: "\f122"; }
.postbit_buttons a.postbit_forward_pm span::before { content: "\f064"; }

.postbit_buttons > a.postbit_qdelete,
.postbit_buttons > a.postbit_delete_pm,
.postbit_buttons > a.postbit_purgespammer {
	background: #3a2527;
	border-color: #69383d;
}

.postbit_buttons > a.postbit_qdelete span::before,
.postbit_buttons > a.postbit_delete_pm span::before,
.postbit_buttons > a.postbit_purgespammer span::before { color: #dc777e; }

.postbit_buttons > a.postbit_qdelete:hover,
.postbit_buttons > a.postbit_delete_pm:hover,
.postbit_buttons > a.postbit_purgespammer:hover {
	background: #6f292f;
	border-color: #bb5961;
}

.postbit_buttons > a.postbit_warn,
.postbit_buttons > a.postbit_report {
	background: #3a3222;
	border-color: #66563a;
}

.postbit_buttons > a.postbit_warn span::before,
.postbit_buttons > a.postbit_report span::before { color: #d1a855; }

.postbit_buttons > a.postbit_warn:hover,
.postbit_buttons > a.postbit_report:hover {
	background: #705321;
	border-color: #b98a37;
}

.postbit_buttons > a.postbit_qrestore {
	background: #24382a;
	border-color: #3d6548;
}

.postbit_buttons > a.postbit_qrestore span::before { color: #73bd85; }

.postbit_buttons > a.postbit_qrestore:hover {
	background: #28613a;
	border-color: #55a96b;
}

#footer .upper {
	background: #151515;
	border-color: #262626;
}

.boardstats_footer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
}

.boardstats_links {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.boardstats_links li { margin: 0; }

.boardstats_links a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-height: 30px;
	padding: 5px 9px;
	background: #202020;
	border: 1px solid #303030;
	border-radius: 3px;
	color: #aaa;
}

.boardstats_links a:hover {
	background: #262832;
	border-color: #7289da;
	color: #fff;
	text-decoration: none;
}

.boardstats_links i {
	margin-right: 5px;
	font-size: 13px;
}

.boardstats_selectors {
	display: flex;
	align-items: center;
	gap: 8px;
}

.boardstats_selectors .language,
.boardstats_selectors .theme { float: none; }

.site_footer {
	box-sizing: border-box;
	padding: 4px 0 18px;
	color: #969696;
	text-align: center;
}

.site_footer #copyright {
	display: block;
	float: none;
	font-size: 11px;
	line-height: 1.35;
}

.site_footer #debug {
	float: none;
	margin: 7px 0 0;
	text-align: center;
}

.profile_actions {
	margin-bottom: 10px;
	text-align: right;
}

.profile_header_card {
	background: #111;
	border-color: #5a4c70;
	border-radius: 5px;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.05),
		0 0 0 1px rgba(111, 78, 181, 0.13),
		0 16px 26px -14px rgba(111, 78, 181, 0.3),
		0 24px 38px -20px rgba(0, 0, 0, 0.72);
}

.profile_tabs { margin-top: 16px; }

.profile_tablist {
	display: flex;
	align-items: flex-end;
	gap: 3px;
	overflow-x: auto;
}

.profile_tab {
	margin: 0;
	padding: 10px 16px;
	background: #181818;
	border: 1px solid #292929;
	border-bottom: 0;
	border-radius: 3px 3px 0 0;
	color: #bbb;
	font-weight: bold;
	white-space: nowrap;
	cursor: pointer;
}

.profile_tab:hover,
.profile_tab:focus {
	background: #202020;
	border-color: #3a3d4c;
	color: #fff;
	outline: 0;
}

.profile_tab.is_active {
	background: #181818;
	border-color: #7289da #292929 #181818;
	color: #fff;
	box-shadow: inset 0 3px 0 #7289da;
}

.profile_tabpanel {
	padding: 16px;
	background: #181818;
	border: 1px solid #292929;
}

.profile_tabpanel[hidden] { display: none; }

.profile_tabpanel > .tborder,
.profile_tabpanel > table:first-child { margin-top: 0; }

.profile_tabpanel > br:first-child { display: none; }

.profile_tabpanel .trow1,
.profile_tabpanel .trow2 {
	background: #181818;
	border-left-color: transparent;
	border-right-color: transparent;
	border-top-color: transparent;
	border-bottom-color: #292929;
}

.profile_tabpanel tr:last-child > .trow1,
.profile_tabpanel tr:last-child > .trow2 {
	border-bottom-color: transparent;
}

/* Breadcrumbs form a compact connected ribbon with angled segment ends. */
.breadcrumb_trail {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	row-gap: 5px;
	min-width: 0;
	margin: 0 0 10px;
	font-size: 12px;
}

#content .breadcrumb_trail .breadcrumb_item {
	position: relative;
	display: inline-block;
	box-sizing: border-box;
	max-width: min(360px, 45vw);
	margin-left: -9px;
	padding: 7px 20px 7px 22px;
	overflow: hidden;
	background: #242427;
	clip-path: polygon(0 0, calc(100% - 13px) 0, 100% 50%, calc(100% - 13px) 100%, 0 100%, 13px 50%);
	color: #c8c8cf;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.25;
	text-overflow: ellipsis;
	text-shadow: 0 1px #000;
	white-space: nowrap;
}

#content .breadcrumb_trail .breadcrumb_item:first-child {
	margin-left: 0;
	padding-left: 13px;
	clip-path: polygon(0 0, calc(100% - 13px) 0, 100% 50%, calc(100% - 13px) 100%, 0 100%);
}

#content .breadcrumb_trail a.breadcrumb_item:hover,
#content .breadcrumb_trail a.breadcrumb_item:focus-visible {
	background: #393941;
	color: #fff;
	text-decoration: none;
	outline: 0;
}

#content .breadcrumb_trail .breadcrumb_current {
	background: #31313a;
	color: #fff;
}

.breadcrumb_separator {
	display: block;
	width: 0;
	height: 0;
	overflow: hidden;
}

/* Help documents use consistent panels instead of alternating stock rows. */
.help_section { margin-bottom: 16px; }

.help_section + br { display: none; }

.help_section_description {
	padding: 9px 11px;
	background: #242427;
	border-bottom: 1px solid #35353a;
	color: #c7c7cc;
}

.help_document_entry,
.help_result_entry {
	padding: 11px;
	background: #181818 !important;
	border-color: #101010 #292929 #292929 #101010;
}

.help_document_row:hover .help_document_entry,
.help_result_row:hover .help_result_entry { background: #1f1f22 !important; }

.help_document_entry > strong > a {
	display: inline-block;
	margin-bottom: 3px;
	font-size: 14px;
}

.help_document_entry .smalltext {
	color: #bdbdc4;
	line-height: 1.45;
}

.help_document .scaleimages {
	padding: 14px;
	background: #181818;
	line-height: 1.55;
}

.help_results_heading {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 8px 14px;
}

.help_search_again {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 5px 8px;
	background: #202023;
	border: 1px solid #3b3b44;
	border-radius: 3px;
	color: #d2d2d8 !important;
	font-size: 11px;
	font-weight: 700;
}

.help_search_again:hover,
.help_search_again:focus-visible {
	background: #292934;
	border-color: #667bc4;
	color: #fff !important;
}

.help_result_title {
	display: inline-block;
	margin-bottom: 8px;
	font-size: 13px;
	font-weight: 700;
}

.help_result_excerpt {
	color: #c4c4ca;
	font-style: normal;
	line-height: 1.55;
	overflow-wrap: anywhere;
}

.help_search_panel .trow1 { background: #181818; }

.help_search_panel form {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px 20px;
}

.help_search_panel form > .float_left {
	float: none;
	padding: 0 !important;
}

/* Calendar colors stay within the Space Cadet palette. */
.calendar_controls_top { margin-bottom: 12px; }

.calendar_controls_top form { margin: 0; }
.space_cadet_calendar { table-layout: fixed; }

.space_cadet_calendar .calendar_week_column { width: 34px; }

.space_cadet_calendar .calendar_week_header { padding: 0; }

.space_cadet_calendar tbody > tr > .tcat {
	box-sizing: border-box;
	width: 34px;
	padding: 6px 3px;
}

.space_cadet_calendar .tcat {
	background: #202023;
	border-bottom-color: #35353a;
	color: #d4d4dc;
}

.space_cadet_calendar .calendar_daybit_external {
	background: #151517;
	color: #777985;
}

.space_cadet_calendar .trow1,
.space_cadet_calendar .trow2 {
	background: #1a1a1d;
	border-color: #101010 #303036 #303036 #101010;
}

.space_cadet_calendar .calendar_daybit_current {
	background: #a0a3f2;
	border-color: #7c7edc;
	color: #20202a;
}

.space_cadet_calendar .calendar_daybit_current a:link,
.space_cadet_calendar .calendar_daybit_current a:visited,
.space_cadet_calendar .calendar_daybit_current a:hover,
.space_cadet_calendar .calendar_daybit_current a:active { color: #303268; }

.space_cadet_calendar .calendar_today_label {
	margin-bottom: 7px;
	color: #303268;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.04em;
	line-height: 1.2;
	text-transform: uppercase;
}

.space_cadet_calendar .calendar_event_item {
	position: relative;
	margin: 0 0 5px !important;
	padding-left: 12px;
}

.space_cadet_calendar .calendar_event_item::before {
	content: "";
	position: absolute;
	top: 0.55em;
	left: 2px;
	width: 5px;
	height: 5px;
	background: #a0a3f2;
	border-radius: 50%;
}

.space_cadet_calendar .calendar_daybit_current .calendar_event_item::before { background: #303268; }

.space_cadet_calendar .calendar_daybit_today {
	background: #7c7edc;
	border-color: #5f61b8;
	color: #fff;
}

.space_cadet_calendar .calendar_daybit_today a { color: #fff; }

/* Weekly and mini calendar palette. */
.space_cadet_weekview .calendar_weekday_heading {
	padding: 7px 10px;
	background: #181818;
	border-top: 1px solid #292929;
	border-bottom: 0;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	text-align: center;
	text-decoration: underline;
	text-decoration-color: #a0a3f2;
	text-underline-offset: 3px;
}

.space_cadet_weekview .calendar_weekday_content {
	height: 44px;
	padding: 10px;
	background: #181818;
	border-bottom: 1px solid #292929;
	color: #ccc;
}

.space_cadet_weekview .calendar_week_item {
	position: relative;
	margin-bottom: 5px;
	padding-left: 13px;
}

.space_cadet_weekview .calendar_week_item:last-child { margin-bottom: 0; }

.space_cadet_weekview .calendar_week_item::before {
	content: "";
	position: absolute;
	top: 0.55em;
	left: 2px;
	width: 5px;
	height: 5px;
	background: #a0a3f2;
	border-radius: 50%;
}

.space_cadet_mini_calendar .trow1,
.space_cadet_mini_calendar .trow2 {
	background: #181818;
	border-color: #101010 #292929 #292929 #101010;
}

.space_cadet_mini_calendar .trow_sep {
	background: #a0a3f2;
	border-color: #7c7edc;
	color: #20202a;
}

.space_cadet_mini_calendar .trow_sep a:link,
.space_cadet_mini_calendar .trow_sep a:visited,
.space_cadet_mini_calendar .trow_sep a:hover,
.space_cadet_mini_calendar .trow_sep a:active { color: #303268; }

/* Responsive member directory. */
.memberlist_table { table-layout: fixed; }

.memberlist_heading_content {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
}

.memberlist_title {
	order: 1;
	white-space: nowrap;
}

.memberlist_alpha {
	order: 2;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 3px;
}

.memberlist_alpha a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-width: 27px;
	min-height: 27px;
	padding: 4px !important;
	background: #202023;
	border: 1px solid #303035;
	border-radius: 3px;
}

.memberlist_alpha a:hover {
	background: #30303a;
	border-color: #7289da;
}

.memberlist_user > td {
	background: #181818;
	border-left-color: transparent;
	border-right-color: transparent;
	border-top-color: #101010;
	border-bottom-color: #292929;
}

.memberlist_user:hover > td { background: #1d1d20; }

.memberlist_avatar { width: 82px; }

.memberlist_avatar_image {
	display: block;
	box-sizing: border-box;
	width: 70px;
	height: 70px;
	object-fit: cover;
	border: 1px solid #383838;
	background: #111;
}

.memberlist_identity { overflow-wrap: anywhere; }

.memberlist_identity > a {
	font-size: 14px;
	font-weight: 700;
}

.memberlist_search_panel input.textbox,
.memberlist_search_panel select { box-sizing: border-box; }

.memberlist_exact_username {
	display: block;
	margin-top: 6px;
}

.memberlist_quick_search .select2-container .select2-choice {
	background: #181818;
	border-color: #44444a;
	box-shadow: none;
	color: #ddd;
}

.memberlist_quick_search .select2-container .select2-choice .select2-arrow {
	background: #242428;
	border-left-color: #44444a;
}

.memberlist_quick_search .select2-container .select2-default { color: #999; }

.select2-drop.memberlist_username_dropdown {
	background: #181818 !important;
	border-color: #44444a !important;
	color: #ddd !important;
}

.select2-drop.memberlist_username_dropdown .select2-search input {
	background: #111 !important;
	border-color: #44444a !important;
	color: #eee !important;
}

.select2-drop.memberlist_username_dropdown .select2-results {
	background: #181818 !important;
	color: #ddd !important;
}

.select2-drop.memberlist_username_dropdown .select2-results .select2-no-results,
.select2-drop.memberlist_username_dropdown .select2-results .select2-searching {
	background: #202023 !important;
	color: #bbb !important;
}

.select2-drop.memberlist_username_dropdown .select2-results .select2-highlighted {
	background: #303268 !important;
	color: #fff !important;
}

.search_form .select2-container { max-width: 100%; }

.search_form select[name="forums[]"] option:checked {
	background: #a0a3f2 linear-gradient(0deg, #a0a3f2, #a0a3f2);
	box-shadow: 0 0 0 100px #a0a3f2 inset;
	color: #101014;
}

.search_form .select2-container .select2-choice {
	background: #181818;
	border-color: #44444a;
	box-shadow: none;
	color: #ddd;
}

.search_form .select2-container .select2-choice .select2-arrow {
	background: #242428;
	border-left-color: #44444a;
}

.search_form .select2-container .select2-default { color: #999; }

.select2-drop.search_username_dropdown {
	background: #181818 !important;
	border-color: #44444a !important;
	color: #ddd !important;
}

.select2-drop.search_username_dropdown .select2-search input {
	background: #111 !important;
	border-color: #44444a !important;
	color: #eee !important;
}

.select2-drop.search_username_dropdown .select2-results {
	background: #181818 !important;
	color: #ddd !important;
}

.select2-drop.search_username_dropdown .select2-results .select2-no-results,
.select2-drop.search_username_dropdown .select2-results .select2-searching {
	background: #202023 !important;
	color: #bbb !important;
}

.select2-drop.search_username_dropdown .select2-results .select2-highlighted {
	background: #303268 !important;
	color: #fff !important;
}

.usercp_summary_identity > td { border-bottom: 0 !important; }

.usercp_referral_row {
	padding-top: 0 !important;
	border-top: 0 !important;
}

.usercp_referral_row .usercp_referral_callout { margin-top: 0; }

.usercp_referral_callout {
	margin-top: 8px;
	padding: 10px 12px;
	background: #15151a;
	border: 1px solid #383842;
	border-radius: 4px;
	color: #bbb;
}

.usercp_referral_actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 6px;
}

.usercp_referral_url {
	flex: 1 1 260px;
	min-width: 0;
	font-weight: 700;
	overflow-wrap: anywhere;
}

.usercp_referral_copy {
	flex: 0 0 auto;
	min-height: 36px;
}

.pm_compose_form .select2-container { max-width: 100%; }

.pm_compose_form .select2-container-multi .select2-choices {
	background: #181818;
	border-color: #44444a;
	box-shadow: none;
}

.pm_compose_form .select2-container-multi .select2-choices .select2-search-field input {
	background: transparent !important;
	color: #ddd;
}

.pm_compose_form .select2-container-multi .select2-search-choice {
	background: #242428;
	border-color: #44444a;
	box-shadow: none;
	color: #ddd;
}

.select2-drop.pm_recipient_dropdown {
	background: #181818 !important;
	border-color: #44444a !important;
	color: #ddd !important;
}

.select2-drop.pm_recipient_dropdown .select2-search input {
	background: #111 !important;
	border-color: #44444a !important;
	color: #eee !important;
}

.select2-drop.pm_recipient_dropdown .select2-results {
	background: #181818 !important;
	color: #ddd !important;
}

.select2-drop.pm_recipient_dropdown .select2-results .select2-no-results,
.select2-drop.pm_recipient_dropdown .select2-results .select2-searching {
	background: #202023 !important;
	color: #bbb !important;
}

.select2-drop.pm_recipient_dropdown .select2-results .select2-highlighted {
	background: #303268 !important;
	color: #fff !important;
}

.footer_credit_separator {
	margin: 0 3px;
	color: #666;
}

#footer a:link,
#footer a:visited,
#footer a:hover,
#footer a:active { color: #ccc; }

/* Search results: unified panel, quieter rows, and integrated controls. */
.search_results_pagination {
	margin: 0 0 8px;
	border-collapse: collapse;
}

.search_results_table {
	border-collapse: separate;
	border-spacing: 0;
	background: #111;
	border-color: #30303a;
	border-radius: 4px;
	box-shadow: 0 10px 26px rgba(0, 0, 0, 0.2);
	overflow: hidden;
}

.search_results_table .thead {
	padding: 11px 12px;
	border-bottom: 1px solid #34343d;
}

.search_results_table .search_results_columns .tcat {
	padding: 9px 10px;
	background: #202023;
	border: 0;
	border-bottom: 1px solid #34343d;
	color: #aaaab2;
}

.search_results_table .search_results_columns a { color: #d3d3d8; }

.search_results_table .search_result_row > td {
	padding: 11px 10px;
	background: #18181a;
	border: 0;
	border-bottom: 1px solid #2b2b31;
	vertical-align: middle;
}

.search_results_table .search_result_row:last-child > td { border-bottom: 0; }

.search_results_table .search_result_row:hover > td { background: #1d1d21; }

.search_results_table .search_result_status,
.search_results_table .search_result_icon,
.search_results_table .search_result_row > td:last-child {
	background: #141416;
}

.search_results_table .search_result_subject {
	min-width: 240px;
	line-height: 1.5;
}

.search_results_table .search_result_subject > table td {
	padding: 5px 0 0;
	border: 0;
}

.search_results_table .search_result_meta { color: #c0c0c5; }

.search_results_threads_table .search_result_forum {
	text-align: center;
	white-space: nowrap;
}

.search_results_footer {
	margin-top: 8px;
	border-collapse: collapse;
}

.search_results_footer td { padding: 0; }

.search_results_footer form {
	display: inline-flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 6px;
	margin: 0;
	padding: 8px;
	background: #18181a;
	border: 1px solid #30303a;
	border-radius: 4px;
}

.search_results_footer form select,
.search_results_footer form .button { min-height: 34px; }

.search_result_mobile_stats,
.search_result_mobile_footer,
.search_result_mobile_side,
.search_result_mobile_forum,
.search_result_mobile_label,
.thread_mobile_lastpost,
.thread_mobile_rating { display: none; }

@media (max-width: 760px) {
	.search_results_table,
	.search_results_table > tbody { display: block; }

	.search_results_table .search_results_columns { display: none; }

	.search_results_table > tbody > tr:first-child,
	.search_results_table > tbody > tr:first-child > .thead {
		display: block;
		box-sizing: border-box;
		width: 100%;
	}

	.search_results_table .search_result_row {
		position: relative;
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		gap: 0 14px;
		box-sizing: border-box;
		width: 100%;
		margin: 0;
		padding: 7px 30px 7px 10px;
		background: #18181a;
		border: 0;
		border-bottom: 2px solid #554a68;
		border-radius: 0;
	}

	.search_results_table .search_result_row:last-child { border-bottom: 0; }

	.search_results_table .search_result_row > td {
		display: block;
		box-sizing: border-box;
		width: auto;
		padding: 2px 4px;
		background: transparent;
		border: 0;
		text-align: left;
	}

	.search_results_table .search_result_status,
	.search_results_table .search_result_icon { display: none !important; }

	.search_results_table .search_result_forum,
	.search_results_table .search_result_replies,
	.search_results_table .search_result_views { display: none !important; }

	.search_results_table .search_result_subject {
		grid-column: 1 / -1;
		min-width: 0;
		padding-bottom: 2px;
	}

	.search_results_table .search_result_meta { display: none !important; }

	.search_results_table .search_result_mobile_stats {
		display: flex;
		float: right;
		gap: 12px;
		margin: 0 28px 8px 14px;
		color: #d0d0d5;
		text-align: right;
	}

	.search_results_table .search_result_mobile_stats strong,
	.search_results_table .search_result_mobile_footer strong {
		display: inline;
		margin: 0;
		color: #85858d;
		font-size: 11px;
	}

	.search_results_table .search_result_mobile_footer {
		clear: both;
		display: flex;
		align-items: flex-end;
		justify-content: space-between;
		gap: 16px;
		margin-top: 12px;
		padding-top: 4px;
	}

	.search_results_table .search_result_mobile_footer > span:last-child { text-align: right; }
	.search_results_threads_table .search_result_subject .author { margin-top: 1px; }

	.search_results_threads_table .search_result_mobile_label { display: inline; }

	.search_results_threads_table .search_result_mobile_forum {
		display: block;
		margin-top: 2px;
		color: #c0c0c5;
	}

	.search_results_threads_table .search_result_mobile_forum strong { color: #85858d; }

	.search_results_threads_table .search_result_subject {
		position: relative;
		display: block;
		padding-right: 235px;
	}

	.search_results_threads_table .search_result_mobile_identity { min-width: 0; }

	.search_results_threads_table .search_result_mobile_side {
		position: absolute;
		right: 0;
		bottom: 0;
		display: flex;
		flex-direction: column;
		align-items: flex-end;
		gap: 3px;
		min-width: max-content;
		text-align: right;
	}

	.search_results_threads_table .search_result_mobile_stats {
		float: none;
		margin: 0;
	}

	.search_results_threads_table .search_result_mobile_footer {
		align-items: center;
		justify-content: flex-end;
		margin-top: 0;
		padding-top: 0;
		text-align: right;
	}

	.search_results_threads_table .search_result_mobile_footer > span:last-child { text-align: right; }

	.search_results_threads_table .search_result_mobile_footer > span { white-space: nowrap; }

	.search_results_threads_table .search_result_mobile_lastposter {
		display: inline;
		margin: 0 0 0 4px;
	}

	.search_result_mobile_lastposter {
		display: block;
		margin-top: 3px;
		text-align: right;
	}

	.search_results_table .search_result_row > td:last-child {
		position: absolute;
		top: 12px;
		right: 12px;
		padding: 0;
	}

	.search_results_footer,
	.search_results_footer tbody,
	.search_results_footer tr,
	.search_results_footer td { display: block; width: 100%; }

	.search_results_footer form {
		box-sizing: border-box;
		justify-content: flex-start;
		width: 100%;
	}

	.search_results_footer form select {
		flex: 1 1 180px;
		min-width: 0;
	}

	.calendar_weekview_layout,
	.calendar_weekview_layout > tbody,
	.calendar_weekview_layout > tbody > tr {
		display: block;
		width: 100%;
	}

	.calendar_weekview_layout > tbody > tr {
		display: flex;
		flex-direction: column;
	}

	.calendar_weekview_main,
	.calendar_weekview_sidebar {
		display: block;
		box-sizing: border-box;
		width: 100% !important;
	}

	.calendar_weekview_sidebar {
		order: -1;
		padding: 0 0 10px !important;
	}

	.calendar_weekview_sidebar .space_cadet_mini_calendar {
		width: 100% !important;
	}

	.calendar_scroll {
		width: 100%;
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		border-right: 1px solid #292929;
		scrollbar-color: #7289da #181818;
		scrollbar-width: thin;
	}

	.calendar_scroll .space_cadet_calendar {
		width: 700px;
		min-width: 700px;
	}

	.space_cadet_calendar .calendar_week_header,
	.space_cadet_calendar tbody > tr > .tcat {
		position: sticky;
		left: 0;
		z-index: 2;
		box-shadow: 1px 0 #35353a;
	}

	.space_cadet_calendar .calendar_week_header { z-index: 3; }

	.space_cadet_calendar td { height: 82px !important; }

	.space_cadet_calendar .thead,
	.space_cadet_calendar .tcat { height: auto !important; }

	.memberlist_table,
	.memberlist_table > tbody {
		display: block;
		width: 100%;
	}

	.memberlist_heading,
	.memberlist_heading > td { display: block; }

	.memberlist_heading_content {
		display: flex;
		align-items: stretch;
		flex-direction: column;
		padding: 0;
	}

	.memberlist_title { margin-bottom: 9px; }

	.memberlist_alpha {
		justify-content: flex-start;
		gap: 4px;
	}

	.memberlist_columns { display: none; }

	.memberlist_user {
		display: grid;
		grid-template-columns: 76px minmax(0, 1fr);
		box-sizing: border-box;
		margin-top: 10px;
		background: #181818;
		border: 1px solid #33333a;
		border-radius: 3px;
		overflow: hidden;
	}

	.memberlist_user > td {
		display: block;
		box-sizing: border-box;
		width: auto;
		background: transparent !important;
		border: 0;
	}

	.memberlist_avatar {
		grid-column: 1;
		grid-row: 1;
		padding: 10px 4px 10px 10px;
	}

	.memberlist_avatar_image {
		width: 60px;
		height: 60px;
	}

	.memberlist_identity {
		grid-column: 2;
		grid-row: 1;
		padding: 10px;
	}

	.memberlist_stat {
		grid-column: 1 / -1;
		display: flex !important;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding: 7px 10px !important;
		text-align: right;
	}

	.memberlist_stat::before {
		content: attr(data-label);
		color: #999;
		font-size: 12px;
		font-weight: 700;
		text-align: left;
	}

	.memberlist_search_panel,
	.memberlist_search_panel > tbody,
	.memberlist_search_panel tr,
	.memberlist_search_panel td {
		display: block;
		box-sizing: border-box;
		width: 100% !important;
	}

	.memberlist_search_panel tr:nth-child(2) { display: none; }

	#logo {
		background-size: cover;
		background-position: center;
	}

	.wrapper { width: calc(100% - 20px); }
	#logo { min-height: 0; }

	.header_banner_content,
	#panel .upper .wrapper,
	#panel .lower .wrapper {
		align-items: flex-start;
		flex-direction: column;
	}

	.header_banner_content { min-height: 115px; }

	#logo img { max-width: 100%; }
	#logo ul.top_links { justify-content: center; }

	.header_account {
		position: relative;
		right: auto;
		bottom: auto;
		align-self: flex-end;
		margin: auto 0 -20px;
	}

	.header_guest_account {
		position: relative;
		right: auto;
		bottom: auto;
		align-self: flex-end;
		margin: auto 0 -20px;
	}

	#search {
		order: 0;
		width: 100%;
	}

	#search input.textbox {
		box-sizing: border-box;
		min-width: 0;
		flex: 1;
	}

	.index_layout { grid-template-columns: minmax(0, 1fr); }
	.index_sidebar { margin-top: 4px; }

	.forum_threads,
	.forum_posts { display: none; }

	.forum_row > td:first-child {
		width: 42px;
		padding-right: 4px;
		padding-left: 6px;
	}

	.forum_row > td:nth-child(2) {
		padding-right: 4px;
		padding-left: 4px;
	}

	.forum_row .forum_lastpost {
		width: 38%;
		padding-right: 6px;
		padding-left: 4px;
		white-space: normal !important;
	}

	#content { font-size: 15px; }

	.portal_layout,
	.portal_layout > tbody,
	.portal_layout > tbody > tr,
	.portal_layout > tbody > tr > td {
		display: block;
		box-sizing: border-box;
		width: 100%;
	}

	.portal_layout .portal_spacer,
	.portal_layout .portal_sidebar_extras { display: none; }

	.portal_layout .portal_sidebar,
	.portal_layout .portal_main {
		min-width: 0;
		padding: 0;
	}

	.portal_layout .portal_main { margin-top: 4px; }

	.portal_main .scaleimages,
	.portal_main .scaleimages p { overflow-wrap: anywhere; }

	.portal_main img { max-width: 100%; }

	.forum_threadlist,
	.forum_threadlist > tbody {
		display: block;
		box-sizing: border-box;
		width: 100%;
	}

	.forum_threadlist .threadlist_title_row,
	.forum_threadlist .threadlist_title_row > .thead,
	.forum_threadlist .thread_separator_row,
	.forum_threadlist .thread_separator_row > .trow_sep {
		display: block;
		box-sizing: border-box;
		width: 100%;
	}

	.forum_threadlist .threadlist_columns,
	.forum_threadlist .inline_row {
		display: grid;
		grid-template-columns: 38px minmax(0, 1fr) minmax(92px, 28%) 34px;
		grid-template-rows: repeat(3, minmax(20px, auto)) auto;
		box-sizing: border-box;
		width: 100%;
	}

	.forum_threadlist .threadlist_columns { grid-template-columns: minmax(0, 1fr) 34px; grid-template-rows: auto; }

	.forum_threadlist .inline_row { background: #181818; }

	.forum_threadlist .inline_row:hover { background: #1f1f22; }

	.forum_threadlist .inline_row.trow_shaded,
	.forum_threadlist .inline_row:has(.thread_main_cell.trow_shaded) { background: #2b191c; }

	.forum_threadlist .inline_row.trow_deleted,
	.forum_threadlist .inline_row:has(.thread_main_cell.trow_deleted) { background: #24202e; }

	.forum_threadlist .inline_row > td { background: transparent !important; }

	.forum_threadlist .inline_row:has(.thread_main_cell.trow_shaded) > .thread_rating_cell,
	.forum_threadlist .inline_row:has(.thread_main_cell.trow_deleted) > .thread_rating_cell { background: inherit !important; }

	.forum_threadlist .inline_row.trow_shaded > td,
	.forum_threadlist .inline_row > .thread_main_cell.trow_shaded ~ td,
	.forum_threadlist .inline_row > td.trow_shaded { background: #2b191c !important; }

	.forum_threadlist .inline_row.trow_deleted > td,
	.forum_threadlist .inline_row > .thread_main_cell.trow_deleted ~ td,
	.forum_threadlist .inline_row > td.trow_deleted { background: #24202e !important; }

	.forum_threadlist .threadlist_columns > td,
	.forum_threadlist .inline_row > td { display: none; }

	.forum_threadlist .threadlist_columns > .thread_main_header,
	.forum_threadlist .threadlist_columns > .thread_mod_header,
	.forum_threadlist .inline_row > .thread_status_cell,
	.forum_threadlist .inline_row > .thread_main_cell,
	.forum_threadlist .inline_row > .thread_mod_cell {
		display: block;
		box-sizing: border-box;
	}

	.forum_threadlist .announcement_row {
		display: grid;
		grid-template-columns: 38px minmax(0, 1fr);
		box-sizing: border-box;
		width: 100%;
	}

	.forum_threadlist .announcement_row > td { display: none; }

	.forum_threadlist .announcement_row > td:nth-child(1),
	.forum_threadlist .announcement_row > td:nth-child(3) {
		display: block;
		box-sizing: border-box;
	}


	.forum_threadlist .thread_icon_cell,
	.forum_threadlist .thread_replies_header,
	.forum_threadlist .thread_replies_cell,
	.forum_threadlist .thread_views_header,
	.forum_threadlist .thread_views_cell,
	.forum_threadlist .thread_rating_header,
	.forum_threadlist .thread_rating_cell,
	.forum_threadlist .thread_lastpost_header,
	.forum_threadlist .thread_lastpost_cell { display: none; }

	.forum_threadlist .inline_row > .thread_replies_cell,
	.forum_threadlist .inline_row > .thread_views_cell,
	.forum_threadlist .inline_row > .thread_rating_cell,
	.forum_threadlist .inline_row > .thread_lastpost_cell {
		display: flex;
		align-items: baseline;
		justify-content: space-between;
		gap: 6px;
		box-sizing: border-box;
		grid-column: 3;
		width: auto;
		padding: 1px 6px;
		border: 0;
		color: #d0d0d5;
		font-size: 11px;
		line-height: 1.3;
		text-align: right;
		white-space: normal !important;
	}

	.forum_threadlist .inline_row > .thread_replies_cell { grid-row: 1; }
	.forum_threadlist .inline_row > .thread_views_cell { grid-row: 2; }
	.forum_threadlist .inline_row > .thread_rating_cell { grid-row: 3; }
	.forum_threadlist .inline_row > .thread_lastpost_cell {
		grid-column: 2 / -1;
		grid-row: 4;
		padding: 8px;
	}

	.forum_threadlist .inline_row > .thread_replies_cell::before,
	.forum_threadlist .inline_row > .thread_views_cell::before,
	.forum_threadlist .inline_row > .thread_rating_cell::before,
	.forum_threadlist .inline_row > .thread_lastpost_cell::before {
		content: attr(data-label) ":";
		display: inline;
		margin: 0;
		color: #85858d;
		font-weight: 700;
	}

	.forum_threadlist .inline_row > .thread_rating_cell .star_rating { display: none !important; }

	.forum_threadlist .inline_row > .thread_rating_cell .thread_mobile_rating { display: inline !important; }


	.forum_threadlist .inline_row > .thread_lastpost_cell .lastpost { display: none; }

	.forum_threadlist .thread_mobile_lastpost {
		display: flex;
		align-items: baseline;
		justify-content: space-between;
		gap: 12px;
		flex: 1 1 auto;
		text-align: right;
	}

	.forum_threadlist .inline_row > .thread_status_cell { grid-column: 1; grid-row: 1 / -1; }
	.forum_threadlist .inline_row > .thread_main_cell { grid-column: 2; grid-row: 1 / 4; }
	.forum_threadlist .inline_row > .thread_mod_cell { grid-column: 4; grid-row: 1 / 4; }
	.forum_threadlist .inline_row > .thread_status_cell,
	.forum_threadlist .inline_row > .thread_main_cell,
	.forum_threadlist .inline_row > .thread_mod_cell { border: 0; }

	.forum_threadlist .inline_row + .inline_row { border-top: 1px solid #484052; }

	.forum_threadlist .thread_status_cell {
		width: 34px;
		padding-right: 4px;
		padding-left: 8px;
	}

	.forum_threadlist .thread_main_header,
	.forum_threadlist .thread_main_cell {
		width: auto;
		padding: 10px 8px;
	}

	.forum_threadlist .thread_main_cell > div > span {
		display: block;
		font-size: 15px;
		font-weight: 600;
		line-height: 1.35;
		overflow-wrap: anywhere;
	}

	.forum_threadlist .inline_row .trow_deleted .soft_deleted_thread_notice {
		display: inline-flex;
		margin-top: 3px;
		padding: 0;
		border: 0;
		background: transparent;
		color: #c3addf;
		font-size: 11px;
		line-height: 1.3;
	}

	.forum_threadlist .inline_row .trow_shaded .unapproved_thread_notice {
		display: inline-flex;
		margin-top: 3px;
		padding: 0;
		border: 0;
		background: transparent;
		color: #e69aa2;
		font-size: 11px;
		line-height: 1.3;
	}



	.forum_threadlist .thread_main_cell .author,
	.forum_threadlist .thread_main_cell .thread_start_datetime {
		font-size: 12px;
		font-weight: 400;
	}

	.forum_threadlist .thread_mod_header,
	.forum_threadlist .thread_mod_cell {
		width: 28px;
		padding-right: 7px;
		padding-left: 4px;
	}

	.forum_threadlist .thead .float_right {
		float: none;
		margin-bottom: 5px;
		text-align: left;
	}

	.boardstats_footer {
		align-items: flex-start;
		flex-direction: column;
	}

	.post.classic { grid-template-columns: minmax(0, 1fr); }

	.post.classic .post_author {
		grid-column: 1;
		display: flex;
		align-items: center;
		gap: 12px;
		padding: 10px;
		border-right: 0;
		border-bottom: 1px solid #292929;
	}

	.post.classic .post_author div.author_avatar {
		flex: 0 0 auto;
		margin: 0;
	}

	.post.classic .post_author div.author_avatar img {
		box-sizing: border-box;
		max-width: 64px;
		max-height: 64px;
	}

	.post.classic .post_author div.author_information {
		flex: 1 1 auto;
		min-width: 0;
		text-align: left;
	}

	.post.classic .post_author div.author_statistics {
		flex: 0 1 auto;
		margin: 0;
		padding: 0 0 0 12px;
		border-top: 0;
		border-left: 1px solid #333;
	}

	.post.classic .post_content {
		grid-column: 1;
		padding: 12px;
	}

	.post.classic .post_body { min-height: 0; }

	.post.classic .post_controls {
		display: flex;
		align-items: stretch;
		flex-direction: column;
		gap: 6px;
		padding: 7px;
	}

	.post.classic .postbit_buttons {
		float: none;
		width: 100%;
		min-width: 0;
	}

	.post.classic .author_buttons { justify-content: flex-start; }
	.post.classic .post_management_buttons { justify-content: flex-end; }

	.post.classic .postbit_buttons > a {
		min-height: 32px;
		padding: 6px 9px;
	}

	.post.classic .postbit_buttons a span {
		min-width: 0;
		overflow-wrap: anywhere;
	}
}

@media (max-width: 480px) {
	.index_forums .forum_columns {
		grid-template-columns: 40px minmax(0, 1fr);
	}

	.index_forums .forum_columns > td:first-child { grid-column: 1 / -1; }

	.index_forums .forum_columns > td:last-child { display: none; }

	.breadcrumb_trail { row-gap: 4px; }

	#content .breadcrumb_trail .breadcrumb_item {
		max-width: calc(100vw - 36px);
		padding-top: 7px;
		padding-bottom: 7px;
	}

	.help_search_panel form { align-items: stretch; flex-direction: column; }

	.help_results_heading { align-items: stretch; flex-direction: column; }

	.help_search_again {
		justify-content: center;
		box-sizing: border-box;
		width: 100%;
		min-height: 36px;
	}

	.help_search_panel input.textbox {
		box-sizing: border-box;
		width: 100%;
	}

	.help_search_panel .button { min-height: 38px; }

	.wrapper { width: calc(100% - 16px); }

	#logo ul.top_links {
		gap: 2px 4px;
		padding: 4px;
	}

	#header ul.menu li a {
		padding: 7px 6px;
		font-size: 13px;
	}

	.header_banner_content {
		min-height: 100px;
		padding-top: 12px;
	}

	.header_guest_account,
	.header_account { margin-bottom: -14px; }

	#content {
		padding: 12px 0 20px;
		font-size: 15px;
	}

	.index_forums > .tborder { margin-bottom: 12px; }

	.index_forums > br.clear { display: none; }

	.thead { padding: 8px; }

	.trow1,
	.trow2 { padding: 8px; }


	.portal_layout .thead,
	.portal_layout .tcat,
	.portal_layout .trow1,
	.portal_layout .trow2 { padding: 10px; }

	.portal_main .tfixed > tbody > tr:first-child {
		display: flex;
		align-items: flex-start;
		flex-direction: column;
		gap: 10px;
	}

	.portal_main .tfixed > tbody > tr:first-child > td {
		display: block;
		box-sizing: border-box;
		width: 100%;
	}

	.portal_main .tfixed > tbody > tr:first-child > td:first-child { text-align: left !important; }

	.portal_main .tfixed > tbody > tr:first-child > td:first-child img {
		width: auto !important;
		height: auto !important;
		max-width: 96px;
		max-height: 96px;
	}

	.portal_main .trow2[align="right"] { text-align: left; }

	.post.classic .post_body {
		font-size: 16px;
		line-height: 1.55;
	}

	.post.classic .post_author div.author_statistics { display: none; }

	.post.classic .post_controls { gap: 8px; }

	.post.classic .postbit_buttons {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 6px;
	}

	.post.classic .postbit_buttons > a {
		justify-content: center;
		width: 100%;
		min-height: 40px;
		padding: 8px;
		text-align: center;
	}

	.post.classic .postbit_buttons a span { justify-content: center; }

	.post.classic .postbit_buttons > a:only-child { grid-column: 1 / -1; }

}

@media (max-width: 340px) {
	.post.classic .postbit_buttons { grid-template-columns: minmax(0, 1fr); }
	.post.classic .postbit_buttons > a:only-child { grid-column: auto; }
}
@media (max-width: 760px) {
	.calendar_controls_form .trow1 > table,
	.calendar_controls_form .trow1 > table > tbody,
	.calendar_controls_form .trow1 > table > tbody > tr { display: block; width: 100%; }

	.calendar_controls_form .trow1 > table > tbody > tr > td {
		display: block;
		box-sizing: border-box;
		width: 100%;
	}

	.calendar_controls_form .trow1 > table > tbody > tr > td:first-child {
		margin-bottom: 12px;
		line-height: 1.5;
	}

	.calendar_controls_form .trow1 > table > tbody > tr > td:last-child {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 6px;
		text-align: left !important;
	}

	.calendar_controls_form .trow1 > table > tbody > tr > td:last-child > span {
		flex-basis: 100%;
		margin-bottom: 2px;
	}

	.calendar_controls_form select { flex: 1 1 110px; min-width: 0; }
	.calendar_controls_form br { display: none; }

	.calendar_controls_form .trow1 > table > tbody > tr > td:last-child > a {
		flex-basis: 100%;
		margin-top: 4px;
	}
}

@media (max-width: 760px) {
	.search_form_table,
	.search_form_table > tbody {
		display: flex;
		flex-direction: column;
		box-sizing: border-box;
		width: 100%;
	}

	.search_form_table > tbody > tr { display: contents; }

	.search_form_table > tbody > tr > td {
		box-sizing: border-box;
		width: 100% !important;
		max-width: 100%;
		order: 20;
		overflow-wrap: anywhere;
	}

	.search_form_table > tbody > tr:nth-child(1) > td { order: 1; }
	.search_form_table > tbody > tr:nth-child(2) > td:nth-child(1) { order: 2; }
	.search_form_table > tbody > tr:nth-child(3) > td:nth-child(1) { order: 3; }
	.search_form_table > tbody > tr:nth-child(2) > td:nth-child(2) { order: 4; }
	.search_form_table > tbody > tr:nth-child(3) > td:nth-child(2) { order: 5; }
	.search_form_table > tbody > tr:nth-child(4) > td:nth-child(1) { order: 6; }
	.search_form_table > tbody > tr:nth-child(5) > td:nth-child(1) { order: 7; }
	.search_form_table > tbody > tr:nth-child(4) > td:nth-child(2) { order: 8; }
	.search_form_table > tbody > tr:nth-child(5) > td:nth-child(2) { order: 9; }
	.search_form_table > tbody > tr:nth-child(6) > td { order: 10; }
	.search_form_table > tbody > tr:nth-child(7) > td { order: 11; }
	.search_form_table > tbody > tr:nth-child(8) > td { order: 12; }
	.search_form_table > tbody > tr:nth-child(9) > td { order: 13; }

	.search_form_table table,
	.search_form_table table tbody,
	.search_form_table table tr,
	.search_form_table table td {
		box-sizing: border-box;
		max-width: 100%;
	}

	.search_form_table input.textbox,
	.search_form_table select,
	.search_form .select2-container {
		box-sizing: border-box;
		max-width: 100%;
	}

	.search_form_table input[name="keywords"],
	.search_form .select2-container { width: 100% !important; }
}

@media (max-width: 760px) {
	.usercp_layout,
	.usercp_layout > tbody,
	.usercp_layout > tbody > tr {
		display: flex;
		flex-direction: column;
		box-sizing: border-box;
		width: 100%;
	}

	.usercp_content {
		order: 1;
		box-sizing: border-box;
		width: 100%;
		min-width: 0;
		max-width: 100%;
		overflow-wrap: anywhere;
	}

	.usercp_content input.textbox,
	.usercp_content textarea,
	.usercp_content select {
		box-sizing: border-box;
		max-width: 100%;
	}

	.usercp_content img { max-width: 100%; height: auto; }

	.usercp_navigation {
		order: 2;
		box-sizing: border-box;
		width: 100% !important;
		padding-top: 14px;
	}
}

@media (max-width: 760px) {
	.pm_toolbar {
		box-sizing: border-box;
		width: 100%;
		line-height: 1.8;
	}

	.pm_list_heading {
		display: flex;
		align-items: stretch;
		flex-direction: column;
		gap: 9px;
	}

	.pm_list_heading > strong { order: 1; }

	.pm_search {
		order: 2;
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		float: none;
		gap: 6px;
		width: 100%;
	}

	.pm_search input.textbox {
		flex: 1 1 180px;
		box-sizing: border-box;
		min-width: 0;
	}

	.pm_list_columns { display: none; }

	.pm_message_row {
		display: grid;
		grid-template-columns: 28px minmax(0, 1fr) auto;
		box-sizing: border-box;
		width: 100%;
	}

	.pm_message_row > td {
		display: block;
		box-sizing: border-box;
		width: auto !important;
		white-space: normal !important;
	}

	.pm_message_row > td:nth-child(1) { grid-column: 1; grid-row: 1 / span 3; }
	.pm_message_row > td:nth-child(2) { display: none; }
	.pm_message_row > td:nth-child(3) { grid-column: 2; grid-row: 1; }
	.pm_message_row > td:nth-child(4) { grid-column: 2; grid-row: 2; }
	.pm_message_row > td:nth-child(5) { grid-column: 2; grid-row: 3; text-align: left; }
	.pm_message_row > td:nth-child(6) { grid-column: 3; grid-row: 1 / span 3; }

	.pm_message_party::before,
	.pm_message_date::before {
		content: attr(data-label) ": ";
		color: #999;
		font-weight: 700;
	}

	.pm_bulk_actions {
		box-sizing: border-box;
		width: 100%;
		white-space: normal;
		line-height: 2.6;
	}

	.pm_bulk_actions select { max-width: 100%; }

	.pm_folder_jump {
		display: flex;
		justify-content: flex-end;
		float: none;
		width: 100%;
	}

	.pm_folder_jump select { max-width: 100%; }
}

@media (max-width: 760px) {
	.pm_compose_table,
	.pm_compose_table > tbody {
		display: block;
		box-sizing: border-box;
		width: 100%;
	}

	.pm_compose_table > tbody > tr {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		box-sizing: border-box;
		width: 100%;
	}

	.pm_compose_table > tbody > tr > td {
		display: block;
		box-sizing: border-box;
		width: 100% !important;
		max-width: 100%;
	}

	.pm_compose_table textarea,
	.pm_compose_table input.textbox,
	.pm_compose_form .select2-container {
		box-sizing: border-box;
		width: 100% !important;
		max-width: 100%;
	}

	.pm_compose_message_label { display: contents !important; }

	.pm_compose_message_label > strong {
		order: 1;
		padding: 10px;
	}

	.pm_compose_editor { order: 2; }

	.pm_compose_message_label > div {
		order: 3;
		box-sizing: border-box;
		width: 100% !important;
		margin: 10px 0 0 !important;
	}

	.pm_compose_message_label > div > table {
		width: 100% !important;
		max-width: 260px;
		margin: 0 auto;
	}

	.pm_compose_editor .sceditor-container,
	.pm_compose_editor .sceditor-container iframe,
	.pm_compose_editor .sceditor-container textarea {
		box-sizing: border-box;
		width: 100% !important;
		max-width: 100% !important;
	}

	.pm_compose_actions {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		gap: 7px;
	}
}

@media (max-width: 760px) {
	.usercp_profile_table,
	.usercp_profile_table > tbody,
	.usercp_profile_table > tbody > tr {
		display: block;
		box-sizing: border-box;
		width: 100%;
	}

	.usercp_profile_table > tbody > tr > td,
	.usercp_profile_column {
		display: block;
		box-sizing: border-box;
		width: 100% !important;
		max-width: 100%;
	}

	.usercp_profile_column > fieldset {
		box-sizing: border-box;
		width: 100%;
		min-width: 0;
	}

	.usercp_profile_column table {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
	}

	.usercp_profile_form input.textbox,
	.usercp_profile_form textarea,
	.usercp_profile_form select {
		box-sizing: border-box;
		max-width: 100%;
	}

	.usercp_profile_form textarea { width: 100% !important; }

	.usercp_profile_actions .button { min-height: 38px; }
}

@media (max-width: 760px) {
	.usercp_options_table,
	.usercp_options_table > tbody,
	.usercp_options_table > tbody > tr {
		display: block;
		box-sizing: border-box;
		width: 100%;
	}

	.usercp_options_table > tbody > tr > td,
	.usercp_options_column {
		display: block;
		box-sizing: border-box;
		width: 100% !important;
		max-width: 100%;
	}

	.usercp_options_column > fieldset {
		box-sizing: border-box;
		width: 100%;
		min-width: 0;
	}

	.usercp_options_column table {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
	}

	.usercp_options_form input.textbox,
	.usercp_options_form textarea,
	.usercp_options_form select {
		box-sizing: border-box;
		max-width: 100%;
	}

	.usercp_options_actions .button { min-height: 38px; }
}

@media (max-width: 760px) {
	.usercp_summary_identity {
		display: grid;
		grid-template-columns: minmax(88px, 120px) minmax(0, 1fr);
		box-sizing: border-box;
		width: 100%;
	}

	.usercp_summary_identity > td {
		display: block;
		box-sizing: border-box;
		width: auto !important;
		min-width: 0;
	}

	.usercp_summary_avatar .usercp_container img {
		display: block;
		width: auto !important;
		max-width: 100% !important;
		height: auto !important;
	}

	.usercp_latest_threads,
	.usercp_latest_threads > tbody {
		display: block;
		box-sizing: border-box;
		width: 100%;
	}

	.usercp_latest_threads > tbody > tr:first-child { display: block; }

	.usercp_latest_threads_heading {
		display: flex;
		align-items: center;
		justify-content: space-between;
		flex-wrap: wrap;
		gap: 6px 12px;
		box-sizing: border-box;
		width: 100%;
	}

	.usercp_latest_threads_heading > strong { order: 1; }
	.usercp_latest_threads_heading > .float_right { order: 2; float: none; }

	.usercp_latest_threads_columns { display: none; }

	.usercp_latest_thread {
		display: grid;
		grid-template-columns: 24px minmax(0, 1fr) auto auto;
		gap: 0 12px;
		box-sizing: border-box;
		width: 100%;
		margin: 0;
		padding: 7px 10px;
		background: #18181a;
		border: 0;
		border-bottom: 2px solid #554a68;
		border-radius: 0;
	}

	.usercp_latest_thread > td {
		display: block;
		box-sizing: border-box;
		width: auto !important;
		min-width: 0;
		white-space: normal !important;
		padding: 1px 4px;
		background: transparent !important;
		border: 0 !important;
	}

	.usercp_latest_thread > td:nth-child(1) { grid-column: 1; grid-row: 1 / span 2; }
	.usercp_latest_thread > td:nth-child(2) { display: none; }
	.usercp_latest_thread_identity { grid-column: 2; grid-row: 1; overflow-wrap: anywhere; }
	.usercp_latest_thread_replies { grid-column: 3; grid-row: 1; }
	.usercp_latest_thread_views { grid-column: 4; grid-row: 1; }
	.usercp_latest_thread_lastpost { grid-column: 3 / -1; grid-row: 1; align-self: start; justify-self: end; margin-top: 22px; text-align: right; }

	.usercp_latest_thread:last-child { border-bottom: 0; }

	.usercp_latest_thread_replies::before,
	.usercp_latest_thread_views::before {
		content: attr(data-label) ": ";
		color: #999;
		font-weight: 700;
	}
}

@media (max-width: 760px) {
	.usercp_signature_table,
	.usercp_signature_table > tbody {
		display: block;
		box-sizing: border-box;
		width: 100%;
	}

	.usercp_signature_table > tbody > tr:first-child,
	.usercp_signature_table > tbody > tr:first-child > td {
		display: block;
		box-sizing: border-box;
		width: 100%;
	}

	.usercp_signature_editor_row,
	.usercp_signature_settings_row {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		box-sizing: border-box;
		width: 100%;
	}

	.usercp_signature_editor_row > td,
	.usercp_signature_settings_row > td {
		display: block;
		box-sizing: border-box;
		width: 100% !important;
		max-width: 100%;
	}

	.usercp_signature_note { display: contents !important; }

	.usercp_signature_note > span {
		order: 1;
		padding: 10px;
	}

	.usercp_signature_editor { order: 2; }

	.usercp_signature_note > div {
		order: 3;
		box-sizing: border-box;
		width: 100% !important;
		margin: 10px 0 0 !important;
	}

	.usercp_signature_note > div > table {
		width: 100% !important;
		max-width: 260px;
		margin: 0 auto;
	}

	.usercp_signature_editor textarea,
	.usercp_signature_editor .sceditor-container,
	.usercp_signature_editor .sceditor-container iframe,
	.usercp_signature_editor .sceditor-container textarea {
		box-sizing: border-box;
		width: 100% !important;
		max-width: 100% !important;
	}

	.usercp_signature_actions {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		gap: 7px;
	}
}

/* Moderator CP table normalization */
.modcp_content .trow1,
.modcp_content .trow2 { background: #181818; }

.modcp_content .tborder td.tcat,
.modcp_content .tborder td.trow1,
.modcp_content .tborder td.trow2 {
	border-left-color: transparent;
	border-right-color: transparent;
}

/* Registration and Moderator CP responsive layouts */
@media (max-width: 760px) {
	.register_table,
	.register_table > tbody,
	.register_table > tbody > tr {
		display: block;
		box-sizing: border-box;
		width: 100%;
	}

	.register_table > tbody > tr > .register_column {
		display: block;
		box-sizing: border-box;
		width: 100% !important;
		max-width: 100%;
	}

	.register_column > fieldset,
	.register_column > table {
		box-sizing: border-box;
		width: 100%;
		min-width: 0;
	}

	.register_form input.textbox,
	.register_form textarea,
	.register_form select {
		box-sizing: border-box;
		max-width: 100%;
	}

	.register_form .button { min-height: 38px; }

	.modcp_layout,
	.modcp_layout > tbody {
		display: block;
		box-sizing: border-box;
		width: 100%;
	}

	.modcp_layout > tbody > tr {
		display: flex;
		flex-direction: column;
		box-sizing: border-box;
		width: 100%;
	}

	.modcp_content {
		order: 1;
		display: block;
		box-sizing: border-box;
		width: 100% !important;
		min-width: 0;
	}

	.modcp_nav_column {
		order: 2;
		display: block;
		box-sizing: border-box;
		width: 100% !important;
		margin-top: 12px;
	}

	.modcp_nav_column > table,
	.modcp_content > table,
	.modcp_content > form,
	.modcp_content > form > table {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
	}

	.modcp_content textarea {
		box-sizing: border-box;
		width: 100% !important;
		max-width: 100%;
	}

	.modcp_content input.textbox,
	.modcp_content select {
		box-sizing: border-box;
		max-width: 100%;
	}
}

@media (max-width: 760px) {
	.related_threads_table .related_thread_row {
		grid-template-columns: 38px minmax(0, 1fr) minmax(92px, 28%);
		grid-template-rows: repeat(3, minmax(20px, auto)) auto;
	}

	.related_threads_table .related_thread_subject { grid-row: 1 / 4; }
	.related_threads_table .related_thread_replies { grid-row: 1; }
	.related_threads_table .related_thread_views { grid-row: 2; }

	.related_threads_table .related_thread_lastpost {
		grid-column: 2 / 4;
		grid-row: 4;
	}

	.related_threads_table .related_threads_columns {
		grid-template-columns: minmax(0, 1fr);
	}

	.related_threads_table .related_thread_row { background: #181818; }

	.related_threads_table .related_thread_row > td { background: transparent; }

	.related_threads_table .related_thread_row:hover { background: #1f1f22; }
}
@media (max-width: 760px) {
	.index_forums .forum_columns {
		display: grid;
		grid-template-columns: 46px minmax(0, 1fr) minmax(125px, 30%);
	}

	.index_forums .forum_columns > td { display: none; }

	.index_forums .forum_columns > td:first-child {
		display: block;
		grid-column: 1 / 3;
	}

	.index_forums .forum_columns > td:last-child {
		display: block;
		grid-column: 3;
	}

	.index_forums > .tborder {
		width: 100%;
		max-width: 100%;
	}

	.index_forums .thead > div:not(.expcolimage),
	.index_forums .thead .smalltext,
	.index_forums .forum_row > td:nth-child(2),
	.index_forums .forum_row > td:nth-child(2) .smalltext {
		min-width: 0;
		max-width: 100%;
		white-space: normal;
		overflow-wrap: anywhere;
	}

	.index_forums .forum_row > td:nth-child(2) { overflow: hidden; }

	.index_forums .forum_row > td:nth-child(2) img,
	.index_forums .forum_row > td:nth-child(2) video,
	.index_forums .forum_row > td:nth-child(2) iframe,
	.index_forums .forum_row > td:nth-child(2) object {
		box-sizing: border-box;
		width: auto !important;
		height: auto !important;
		max-width: 100% !important;
	}

	.index_forums .forum_row > td:nth-child(2) table {
		width: 100% !important;
		max-width: 100% !important;
	}
}

@media (max-width: 760px) {
	.index_forums .forum_row {
		display: grid;
		grid-template-columns: 46px minmax(0, 1fr) minmax(125px, 30%);
		box-sizing: border-box;
		width: 100%;
	}

	.index_forums .forum_row > td {
		display: block;
		box-sizing: border-box;
		width: auto !important;
	}

	.index_forums .forum_row > td:first-child {
		grid-column: 1;
		grid-row: 1;
	}

	.index_forums .forum_row > td:nth-child(2) {
		grid-column: 2;
		grid-row: 1;
	}

	.index_forums .forum_row > td:nth-child(3),
	.index_forums .forum_row > td:nth-child(4) { display: none !important; }

	.index_forums .forum_row .forum_lastpost {
		grid-column: 3;
		grid-row: 1;
		min-width: 0;
	}
}

@media (max-width: 1040px) {
	.index_layout { grid-template-columns: minmax(0, 1fr); }
	.index_sidebar { margin-top: 4px; }
}

@media (max-width: 760px) {
	.forum_subforums,
	.forum_subforums > tbody {
		display: block;
		box-sizing: border-box;
		width: 100%;
	}

	.forum_subforums_title { display: block; }
	.forum_subforums_title > td { display: block; }
	.forum_subforums_columns { display: none; }

	.forum_subforums .forum_row {
		display: grid;
		grid-template-columns: 46px minmax(0, 1fr) minmax(125px, 30%);
		box-sizing: border-box;
		width: 100%;
	}

	.forum_subforums .forum_row > td {
		display: block;
		box-sizing: border-box;
		width: auto !important;
	}

	.forum_subforums .forum_row > td:nth-child(3),
	.forum_subforums .forum_row > td:nth-child(4) { display: none !important; }

	.forum_subforums .forum_row > td:first-child {
		grid-column: 1;
		grid-row: 1;
	}

	.forum_subforums .forum_identity {
		grid-column: 2;
		grid-row: 1;
		min-width: 0;
		overflow-wrap: anywhere;
	}

	.forum_subforums .forum_lastpost {
		grid-column: 3;
		grid-row: 1;
		min-width: 0;
		white-space: normal !important;
	}
}

@media (max-width: 480px) {
	.index_forums .forum_columns {
		grid-template-columns: 40px minmax(0, 1fr);
	}

	.index_forums .forum_columns > td:first-child { grid-column: 1 / -1; }

	.index_forums .forum_columns > td:last-child { display: none; }

	.index_forums .forum_row,
	.forum_subforums .forum_row {
		grid-template-columns: 40px minmax(0, 1fr);
	}

	.index_forums .forum_row .forum_lastpost,
	.forum_subforums .forum_row .forum_lastpost {
		grid-column: 2;
		grid-row: 2;
		padding-top: 4px;
		text-align: left;
	}
}

/* Keep inherited MyBB light surfaces readable in the dark theme. */
.pm_alert {
	background: linear-gradient(90deg, #21143c, #3b2055);
	border-color: #754aa3;
	color: #f1e8ff;
}

.pm_alert a:link,
.pm_alert a:visited {
	color: #cab7ff;
	font-weight: 700;
	text-decoration: underline;
}

.pm_alert a:hover,
.pm_alert a:active { color: #fff; }

#pm_notice .float_right a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.08);
}

#pm_notice .float_right a:hover,
#pm_notice .float_right a:focus-visible { background: rgba(255, 255, 255, 0.16); }

.highlight {
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
	padding: 1px 3px;
	background: #a0a3f2;
	border: 1px solid #7c7edc;
	border-radius: 2px;
	color: #20202a;
}

.trow_reputation_positive {
	background: #1d3324;
	color: #ddd;
}

.trow_reputation_negative {
	background: #3a2326;
	color: #ddd;
}

.trow_reputation_positive a:link,
.trow_reputation_positive a:visited,
.trow_reputation_negative a:link,
.trow_reputation_negative a:visited { color: #8fa8ff; }

.trow_reputation_positive a:hover,
.trow_reputation_positive a:active,
.trow_reputation_negative a:hover,
.trow_reputation_negative a:active { color: #d6a0e0; }

.trow_reputation_positive .reputation_positive { color: #72d68a; }
.trow_reputation_negative .reputation_negative { color: #f08a91; }

/* Improve ModCP moderation queue controls on dark table surfaces. */
.modqueue_subject a:link,
.modqueue_subject a:visited {
	font-weight: 700;
	color: #e0d4ff;
}

.modqueue_subject a:hover,
.modqueue_subject a:active { color: #fff; }

.modqueue_item_cell {
	padding: 8px;
	border-top: 1px solid #383241;
	background: #151516;
}

.modqueue_thread_row + .modqueue_thread_row .modqueue_item_cell { border-top-width: 4px; }

.modqueue_author,
.modqueue_date {
	color: #c5c1ca;
	font-size: 12px;
}

.modqueue_message {
	max-height: none;
	padding: 10px;
	border: 1px solid #3f3849;
	border-radius: 4px;
	background: #1f1b27;
	color: #ddd;
	line-height: 1.5;
}

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

.modqueue_thread_summary {
	min-width: 0;
	padding-bottom: 9px;
	border-bottom: 1px solid #342d3d;
}

.modqueue_item_meta {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 12px;
	margin-top: 4px;
	color: #b9afc5;
	font-size: 12px;
}

.modqueue_controls {
	display: flex;
	align-items: center;
	gap: 6px;
	width: auto;
	padding: 0;
	border: 0;
	background: transparent;
	text-align: right;
}

.modqueue_controls.float_right { float: none; }

.modqueue_controls label {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	margin: 0;
	padding: 5px 9px;
	border: 1px solid #50465d;
	border-radius: 3px;
	background: #292432;
	color: #ddd;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	cursor: pointer;
}

.modqueue_controls label:hover,
.modqueue_controls label:focus-within {
	border-color: #8f7eb3;
	background: #332c41;
	color: #fff;
}

.modqueue_controls input[type="radio"] {
	margin: 0;
	accent-color: #9f8ad4;
}

.modqueue_controls .label_radio_ignore:has(input:checked) {
	border-color: #8f7eb3;
	background: #332c41;
	color: #f0eaff;
}

.modqueue_controls .label_radio_delete:has(input:checked) {
	border-color: #d17b85;
	background: #54282d;
	color: #f8dde0;
}

.modqueue_controls .label_radio_approve:has(input:checked) {
	border-color: #72bc8f;
	background: #1f4a31;
	color: #d8f5e3;
}

.modqueue_meta {
	grid-column: 1 / -1;
	margin-bottom: 0;
	color: #b9afc5;
	font-size: 12px;
}

.modqueue_thread_body {
	grid-column: 1 / -1;
	min-width: 0;
	overflow-wrap: anywhere;
}

@media (max-width: 700px) {
	.modqueue_thread_message { grid-template-columns: minmax(0, 1fr); }

	.modqueue_controls {
		justify-content: flex-start;
		flex-wrap: wrap;
	}

	.modqueue_thread_summary { border-bottom: 0; }
}

/* Preserve moderation-state cues on Space Cadet dark table and post surfaces. */
.trow_deleted {
	background: #24202e;
	color: #ddd;
}

.forum_threadlist .thread_main_cell .soft_deleted_thread_notice,
.forum_threadlist .thread_main_cell .unapproved_thread_notice { display: none; }

.forum_threadlist .trow_deleted .soft_deleted_thread_notice {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-top: 4px;
	padding: 2px 6px;
	border: 1px solid #76639e;
	border-radius: 3px;
	background: #302740;
	color: #e5dcf4;
	font-size: 10px;
	font-weight: 700;
	line-height: 1.2;
	vertical-align: middle;
	white-space: nowrap;
}

.forum_threadlist .trow_deleted .soft_deleted_thread_notice::before {
	content: "\f2ed";
	color: #c3addf;
	font: var(--fa-font-solid);
	font-size: 9px;
}

.forum_threadlist .trow_deleted .soft_deleted_thread_notice::after { content: "Soft Deleted"; }

.forum_threadlist .trow_shaded .unapproved_thread_notice {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin-top: 4px;
	padding: 2px 6px;
	border: 1px solid #8a4a52;
	border-radius: 3px;
	background: #3a2225;
	color: #f1d6d9;
	font-size: 10px;
	font-weight: 700;
	line-height: 1.2;
	vertical-align: middle;
	white-space: nowrap;
}

.forum_threadlist .trow_shaded .unapproved_thread_notice::before {
	content: "\f071";
	color: #e69aa2;
	font: var(--fa-font-solid);
	font-size: 9px;
}

.forum_threadlist .trow_shaded .unapproved_thread_notice::after { content: "Awaiting Moderation"; }

.forum_threadlist .inline_row .trow_deleted .unapproved_thread_notice { display: none; }

.post.classic.unapproved_post {
	border-color: #6f3a40;
	background: #251719;
}

.post.classic.unapproved_post .post_author {
	border-color: #6f3a40;
	background: #201315;
}

.post.classic.unapproved_post .post_content { background: #2b1a1c; }

.unapproved_post_notice { display: none; }

.post.classic.unapproved_post .unapproved_post_notice {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin: 0 0 12px;
	padding: 7px 10px;
	border: 1px solid #8a4a52;
	border-radius: 3px;
	background: #3a2225;
	color: #f1d6d9;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.4;
}

.post.classic.unapproved_post .unapproved_post_message {
	display: inline-flex;
	align-items: center;
}

.post.classic.unapproved_post .unapproved_post_message::before {
	content: "\f071";
	margin-right: 5px;
	color: #e69aa2;
	font: var(--fa-font-solid);
}

.post.classic.unapproved_post .unapproved_post_message::after { content: "This post is awaiting moderation approval."; }

.unapproved_post_actions {
	display: flex;
	flex: 0 0 auto;
	gap: 6px;
}

.unapproved_post_action {
	padding: 4px 9px;
	border: 1px solid;
	border-radius: 3px;
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}

.unapproved_post_action .fa-solid { margin-right: 4px; }

.unapproved_post_approve {
	border-color: #4f8b68;
	background: #1f4a31;
	color: #d8f5e3;
}

.unapproved_post_approve:hover,
.unapproved_post_approve:focus-visible {
	border-color: #72bc8f;
	background: #28613f;
	color: #fff;
}

.unapproved_post_deny {
	border-color: #a15a63;
	background: #54282d;
	color: #f8dde0;
}

.unapproved_post_deny:hover,
.unapproved_post_deny:focus-visible {
	border-color: #d17b85;
	background: #71353c;
	color: #fff;
}

@media (max-width: 600px) {
	.post.classic.unapproved_post .unapproved_post_notice {
		align-items: stretch;
		flex-direction: column;
	}

	.unapproved_post_actions { justify-content: flex-end; }
}

.post.classic.unapproved_post .post_controls {
	border-color: #6f3a40;
	background: #1e1214;
}

.post.classic.deleted_post {
	border-color: #554875;
	background: #201b2c;
}

.post.classic.deleted_post .post_author {
	border-color: #554875;
	background: #191624;
}

.post.classic.deleted_post .post_content { background: #251f32; }

.soft_deleted_notice { display: none; }

.post.classic.deleted_post .soft_deleted_notice {
	display: block;
	margin: 0 0 12px;
	padding: 7px 10px;
	border: 1px solid #76639e;
	border-radius: 3px;
	background: #302740;
	color: #e5dcf4;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.4;
}

.post.classic.deleted_post .soft_deleted_notice::before {
	content: "\f2ed";
	margin-right: 5px;
	color: #c3addf;
	font: var(--fa-font-solid);
}

.post.classic.deleted_post .soft_deleted_notice::after { content: "This post has been soft deleted."; }

.post.classic.deleted_post .post_controls {
	border-color: #554875;
	background: #181521;
}

.moderation_alert {
	background: linear-gradient(90deg, #3b171f, #502033);
	border-color: #a7475a;
	color: #ffe2e7;
}

.moderation_alert a:link,
.moderation_alert a:visited {
	color: #ffb9c5;
	font-weight: 700;
	text-decoration: underline;
}

.moderation_alert a:hover,
.moderation_alert a:active { color: #fff; }

.access_alert {
	background: linear-gradient(90deg, #321319, #461820);
	border-color: #963746;
	color: #ffe4e7;
}

.access_alert a:link,
.access_alert a:visited {
	color: #ffc0c8;
	font-weight: 700;
	text-decoration: underline;
}

.access_alert a:hover,
.access_alert a:active { color: #fff; }

.board_closed_alert {
	background: linear-gradient(90deg, #42121f, #65213b, #42121f);
	border-color: #c95270;
	box-shadow: inset 0 0 0 1px rgba(255, 173, 195, 0.08), 0 0 12px rgba(153, 43, 76, 0.3);
	color: #fff0f4;
}

.board_closed_alert strong {
	letter-spacing: 0.02em;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
}


.remote_avatar_alert {
	background: linear-gradient(90deg, #342713, #49351a);
	border-color: #9b7135;
	color: #ffedc5;
}

.remote_avatar_alert a:link,
.remote_avatar_alert a:visited {
	color: #ffd58a;
	font-weight: 700;
	text-decoration: underline;
}

.remote_avatar_alert a:hover,
.remote_avatar_alert a:active { color: #fff4dc; }

.group_requests_alert {
	background: linear-gradient(90deg, #202549, #312957);
	border-color: #626db8;
	color: #eceeff;
}

.group_requests_alert a:link,
.group_requests_alert a:visited {
	color: #c5ceff;
	font-weight: 700;
	text-decoration: underline;
}

.group_requests_alert a:hover,
.group_requests_alert a:active { color: #fff; }

.admin_activation_notice {
	box-sizing: border-box;
	margin-bottom: 15px;
	padding: 6px 12px;
	border: 1px solid rgba(164, 142, 216, 0.82);
	border-radius: 3px;
	background: linear-gradient(90deg, rgba(88, 67, 137, 0.82), rgba(77, 87, 148, 0.82));
	color: #f1edff;
	font-size: 11px;
	line-height: 1.4;
	text-align: center;
	overflow-wrap: anywhere;
}

.admin_activation_notice a:link,
.admin_activation_notice a:visited {
	color: #ded3ff;
	font-weight: 700;
	text-decoration: underline;
}

.admin_activation_notice a:hover,
.admin_activation_notice a:active { color: #fff; }

.account_activation_notice {
	display: none;
	align-items: center;
	justify-content: center;
	gap: 8px;
	box-sizing: border-box;
	margin-bottom: 15px;
	padding: 10px 20px;
	border: 1px solid #9a7dce;
	border-radius: 4px;
	background: linear-gradient(90deg, #d4c7f6, #c3c9f5);
	color: #21182f;
	font-size: 12px;
	line-height: 1.5;
	text-align: center;
	overflow-wrap: anywhere;
}

.account_activation_notice.account_activation_group_5 { display: flex; }

.account_activation_notice i { color: #60408f; }

.account_activation_message::before { content: "Your account is awaiting activation. Check your email for the activation link or "; }
.account_activation_resend::after { content: "resend your activation code"; }
.account_activation_period::after { content: "."; }

.account_activation_notice a:link,
.account_activation_notice a:visited {
	color: #4b2f7b;
	font-weight: 700;
	text-decoration: underline;
}

.account_activation_notice a:hover,
.account_activation_notice a:active { color: #24103f; }

