body {
	background: #ffffff;
	color: #444!important;
	line-height: 1.5;
	margin: 0;
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	font-weight: 400!important;
	overflow-y: scroll;
}

@media (min-width: 1200px) {
	.container-md{
	max-width: 1275px;
}


}

.sort_text {
	font-size: 0.9em;
}

.collapsing {
	transition: none!important;
}

			.subject_new {
	font-weight: bold;
}

.subject_new:before {
	content: "";
	display: inline-block;
	width: 10px;
	height: 10px;
	background: #444;
	border-radius: 50%;
	margin-right: 8px;
	vertical-align: 1px;
}

a {
	color: #1090d0;
	text-decoration: none;
}

a:hover {
	color: #1090d0;
	text-decoration: underline;
}

.btn-outline-primary {
	border-color: #dee2e6;
	background: #fff;
	color: #1090d0;
}

.btn-outline-primary:hover {
	color: #1090d0;
	border-color: #dee2e6;
	background: #fff;
}

.btn {
	border-radius: 3px!important;
}

.btn-sm {
	border-radius: 3px!important;
}

.progress {
	border-radius: 3px;
}

.progress-bar {
	background: #1090d0;
	border-radius: 3px;
}

.bg-primary {
	background: #1090d0!important;
}

.bg-top {
	background: #f2f2f2;
	color: #666;
	display: inline-block;
}

.bg-top a {
	color: #1090d0;
	display: inline-block;
}

.small-forum {
	font-size: 12.8px;
}

.bg-top a:hover {
	color: #1090d0;
	text-decoration: underline;
	display: block;
}

.text-primary {
	color: #1090d0!important;
}

.text-primary a {
	color: #1090d0;
	text-decoration: none;
}

.text-primary a:hover {
	color: #1090d0;
	text-decoration: underline;
}

.forum_count {
	color: #ccc;
	font-size: 11.2px;
	text-transform: lowercase;
}

.smaller {
	font-size: 10px;
	height: 1em;
}

.heading a {
	color: #1090d0!important;
	text-decoration: none;
}

.form-check-input {
	border-color: #ccc!important;
}

.heading {
	color: #444;
}

.heading a:hover {
	color: #1090d0!important;
	text-decoration: underline;
}

strong {
	font-weight: 600;
}

.card-footer {
	background: #f2f2f2;
	padding: 10px;
	border-color: #dee2e6!important;
}

.border-end {
	border-right: 1px dotted #ccc!important;
}

b {
	font-weight: 600;
}

.text-desc {
	color: #666;
}

h6 {
	font-size: 1rem!important;
}

hr {
	border-top: 1px solid #666!important;
}

.card {
	border-color: #dee2e6!important;
	margin-right: 0px;
	margin-left: 0px;
	border-radius: 4px;
}

.border {
	border: 1px solid #dee2e6!important;
}

.text-14 {
	font-size: 14px;
}

.text-13 {
	font-size: 13px;
}

.text-dark {
	color: #222!important;
}

h5 {
	font-size: 19.2px!important;
}

.btn-primary {
	background: #1090d0;
	color: #fff;
	border-color: #1090d0;
}

.btn-primary:hover {
	background: #1090d0;
	color: #fff;
	border-color: #1090d0;
	text-decoration: underline !important;
}

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

.signature img {
	max-height: 140px;
	width: auto;
	height: auto;
	object-fit: contain;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.card-header {
	background: #1090d0;
	color: #fff;
	line-height: 1.2;
	border-bottom: 0;
	font-size: 16px;
}

.fs-7 {
	font-size: 14.4px;
}

.card-header a {
	color: #fff;
	text-decoration: none;
}

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

.trow_deleted {
	background: #E8DEFF;
}

.p-row {
	padding: 1px;
}

.bg-row {
	background: #fafafa;
}

.small {
	font-size: 12.8px;
}

.fs-icon {
	font-size: 20px;
}

.top {
	display: block;
	height: 100%;
	color: #fff;
	font-weight: 300;
	font-size: 17px;
}

.top a {
	color: #fff !important;
	text-decoration: none;
	padding: 0 20px;
	height: 100%;
	display: block;
	transition: text-decoration 0.3s;
	position: relative;
}

.top a i {
	color: #fff !important;
}

a.top:hover,
.top a:hover {
	color: #fff !important;
	text-decoration: underline !important;
}

a.top:hover i,
.top a:hover i {
	color: #fff !important;
}

.text-muted {
	color: #999!important;
}

.text-19 {
	font-family: 'asap', sans-serif;
	font-size: 19.2px;
	font-weight: 600!important;
}

.logo {
	font-family: 'asap', sans-serif;
}

/* Option 3: Glow + Scale Logo Effect */
.navbar-logo {
	display: block;
	height: 140px;
	width: 140px;
	margin-top: -30px;
	margin-bottom: -30px;
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), filter 0.4s;
	position: relative;
	z-index: 10;
	filter: drop-shadow(0 0 15px rgba(255, 255, 255, 0.3))
		drop-shadow(0 0 30px rgba(255, 255, 255, 0.2)) brightness(1.05);
}

.navbar-logo img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: contain;
	object-position: center;
}

/* Glow overlay */
.navbar-logo::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 160px;
	height: 160px;
	border-radius: 50%;
	background: radial-gradient(
		circle,
		rgba(255, 255, 255, 0.15) 0%,
		transparent 70%
	);
	opacity: 1;
	transition: opacity 0.4s;
	pointer-events: none;
	z-index: -1;
}

.navbar-logo:hover {
	transform: scale(1.15);
	filter: drop-shadow(0 0 15px rgba(255, 255, 255, 0.3))
		drop-shadow(0 0 30px rgba(255, 255, 255, 0.2)) brightness(1.05);
}

.navbar-logo:hover::before {
	opacity: 1;
}

/* Responsive adjustments for logo */
@media (max-width: 991.98px) {
	.navbar-logo {
		height: 100px;
		width: 100px;
		margin-top: -10px;
		margin-bottom: -10px;
	}
	
	.navbar-logo::before {
		width: 120px;
		height: 120px;
	}

}

.text-nav {
	font-family: 'Open Sans', sans-serif;
	font-size: 2.2rem;
	font-weight: normal;
	line-height: 1.3;
	color: #222;
}

.text-16 {
	font-family: 'asap', sans-serif;
	font-size: 1.1rem;
	font-weight: 600!important;
}

.text-forum {
	font-size: 16px;
	font-weight: 400!important;
}

.bg-nav {
	background: rgb(242, 242, 242);
	color: #666;
}

.container-fluid.bg-nav {
	padding-top: 2rem !important;
}

@media (max-width: 991.98px) {
	.container-fluid.bg-nav {
		padding-top: 0.5rem !important;
		padding-bottom: 0.5rem !important;
	}

	#navcol-3 {
		padding-bottom: 0.75rem;
	}
}

.bg-nav a {
	color: #666;
}

.bg-nav a:hover {
	color: #1090d0;
	text-decoration: underline;
}

.links {
	color: #666;
	text-decoration: none;
}

.links a {
	color: #666;
	text-decoration: none;
}

.links a:hover {
	text-decoration: underline !important;
}

.postlinks {
	color: #999;
	text-decoration: none;
}

.postlinks a {
	color: #999;
	text-decoration: none;
}

.postlinks a:hover {
	text-decoration: underline !important;
}

.bg-dark {
	background: #393D3F!important;
}

.bg-dark a {
	color: #fff;
	text-decoration: none;
}

.bg-dark a:hover {
	color: #fff;
	opacity: .8!important;
	text-decoration: none!important;
}

.text-sub {
	color: #ccc;
}

.bg-attach {
	background: #f7f7f7;
}

.forum_status {
height: 40px;
width: 40px;
font-size: 17px;
text-align: center;
vertical-align: center;
}

.forum_status i {
display: inline-block;
line-height: 40px;
}

.forum_on {
color: #444;
}

.forum_offclose i:before {
	content: "\f023";
}

.forum_off, .forum_offlock, .forum_offlink {
color: #444;
}

.forum_off i {
color: #ccc;
}

.forum_offlock i:before {
content: "\F268";
}

.forum_offlink i:before {
content: "\F268";
}

.ficons_2 i:before {
content: "\f000";
}

.ficons_3 i:before {
content: "\f1ba";
}

.ficons_4 i:before {
content: "\f0f5";
}

.ficons_6 i:before {
content: "\f0e4";
}

.ficons_7 i:before {
content: "\f03e";
}

.subforumicon {
height: 10px;
width: 10px;
display: inline-block;
margin: 0 5px;
}

.subforum_minion {
color: #444;
}

.subforum_minioff, .subforum_miniofflock, .subforum_miniofflink {
color: #444;
}

.subforum_minioffclose i:before {
	content: "\f023";
}

.subforum_minioffclose {
	color: #ccc;
}

.subforum_minioff {
color: #ccc;
}

.subforum_miniofflock i:before {
content: "\f023";
}

.subforum_miniofflink i:before {
content: "\f0c1";
}

.thead.thead_collapsed .expander:before{
	content: "\f0fe";
	color: #fff;
}

.thead .expander:before{
display:inline-block;
font-size: 0.7rem;
	padding-top: 4px;
	color: #fff;
    font-family: 'Font Awesome 6 Free';
    content: "\f146";
    font-weight:900;
	vertical-align: middle;
    transition: transform .3s ease-in-out,-webkit-transform .3s ease-in-out;
}

.icon {
	background: #eee;
	width: 50px;
	color: #666;
	height: 50px;
	border-radius: 6px;
	text-align: center;
	line-height: 50px;
	vertical-align: middle;
	padding: 0px;
}

.navigation a {
	color: #666;
}

.navigation a:hover {
	text-decoration: underline !important;
}

.btn-secondary {
	background: #fff;
	border-color: #dee2e6;
	color: #1090d0;
}

.btn-secondary:hover {
	background: #fff;
	border-color: #dee2e6;
	color: #1090d0;
	text-decoration: underline !important;
}

.btn-page {
	background: #f7f7f7;
	color: #1090d0;
	padding: 3px;
	padding-left: 7px;
	padding-right: 7px;
	margin-right: 3px;
	margin-left: 3px;
	border: 1px solid #f7f7f7;
	font-size: 12px!important;
	font-weight: 400;
}

.btn-page-inactive {
	background: #f7f7f7;
	color: #444;
	padding: 3px;
	padding-left: 7px;
	padding-right: 7px;
	margin-right: 3px;
	margin-left: 3px;
	font-size: 12px!important;
	font-weight: 400;
}

.btn-page:hover {
	background: #f7f7f7;
	color: #1090d0;
	padding: 3px;
	padding-left: 7px;
	padding-right: 7px;
	margin-right: 3px;
	margin-left: 3px;
	border: 1px solid #f7f7f7;
	font-weight: 400;
	font-size: 12px!important;
	text-decoration: underline !important;
}

.btn-page:active {
	background: #1090d0;
	color: #ffffff;
	padding: 3px;
	padding-left: 7px;
	padding-right: 7px;
	margin-right: 3px;
	margin-left: 3px;
	border: 1px solid #1090d0;
	font-weight: 400;
	font-size: 12px!important;
}

.btn-page-active {
	background: #1090d0;
	color: #ffffff;
	padding: 3px;
	padding-left: 7px;
	padding-right: 7px;
	margin-right: 3px;
	margin-left: 3px;
	border: 1px solid #1090d0;
	font-weight: 400;
	font-size: 12px!important;
}

.btn-page-active:hover {
	background: #1090d0;
	color: #ffffff;
	padding: 3px;
	padding-left: 7px;
	padding-right: 7px;
	margin-right: 3px;
	margin-left: 3px;
	border: 1px solid #1090d0;
	font-weight: 400;
	font-size: 12px!important;
}

.card-footer a:hover {
	text-decoration: none;
}

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0px 1000px #ffffff inset !important;
	font-size: 16px!important;
}

.btn {
	transition-duration: 0ms;
	outline: none;
	border-radius: 3px;
	font-size: 16px;
}

.form-control:focus {
	border-color: #ccc!important;
	box-shadow: none!important;
	background-color: #ffffff!important;
}

.form-select:focus {
	border-color: #ccc!important;
	box-shadow: none!important;
	background-color: #ffffff!important;
}

.select:focus {
	border-color: #ccc!important;
	box-shadow: none!important;
	background-color: #ffffff!important;
}

.input:focus {
	border-color: #ccc!important;
	box-shadow: none!important;
	background-color: #ffffff!important;
}

/** Modal Start **/

.blocker {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: auto;
	z-index: 9999;
	padding: 20px;
	box-sizing: border-box;
	background-color: rgba(0,0,0,0.75);
	text-align: center;
}

.blocker:before{
	content: "";
	display: inline-block;
	height: 100%;
	vertical-align: middle;
	margin-right: -0.05em;
}

.blocker.behind {
	background-color: transparent;
}

.modal {
	background: transparent;
	width: 400px;
	height: auto;
	text-align: left;
	display: inline-block;
	vertical-align: middle;
	position: relative;
	z-index: 2;
	border-radius: 6px;
	margin: 0;
	padding: 0;
}

.modal a.close-modal {
	position: absolute;
	top: 0px;
	right: 0px;
	display: block;
	width: 30px;
	height: 30px;
	text-indent: -9999px;
	background: url(../../../images/close.png) no-repeat 0 0;
	display: none;
}

.modal-spinner {
	display: none;
	width: 64px;
	height: 64px;
	position: fixed;
	top: 50%;
	left: 50%;
	margin-right: -32px;
	margin-top: -32px;
	background: url(../../../images/spinner_big.gif) no-repeat center center;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	-o-border-radius: 8px;
	-ms-border-radius: 8px;
	border-radius: 8px;
}

/** Modal End **/

label {
	font-size: 16px;
	font-weight: 700;
}

.form-control-sm {
	color: #222;
	font-size: 16px;
	border-radius: 3px!important;
	border-color: #ccc!important;
}

.form-control {
	border-radius: 3px!important;
	border-color: #ccc!important;
}

.form-select {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23555' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='m3 6 5 5 5-5'/%3E%3C/svg%3E");
	border-radius: 3px;
	border-color: #ccc!important;
}

.form-select-sm {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23555' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='m3 6 5 5 5-5'/%3E%3C/svg%3E");
	color: #222;
	font-size: 16px;
	overflow: hidden;
	word-wrap: break-word;
	border-radius: 3px;
	border-color: #ccc!important;
}

.btn-menu {
	font-size: 15px;
	padding: 5px 8px;
	width: 100%;
	background: #f7f7f7;
	color: #1090d0;
	text-align: left;
	margin-bottom: 6px;
}

.btn-menu:hover {
	padding: 5px 8px;
	width: 100%;
	background: #f7f7f7;
	color: #1090d0;
	text-align: left;
	margin-bottom: 6px;
	border-left: 5px solid #1090d0;
	text-decoration: underline;
}

.btn-menu:active {
	padding: 5px 8px;
	width: 100%;
	background: #f7f7f7;
	color: #1090d0;
	text-align: left;
	margin-bottom: 6px;
	border-left: 5px solid #1090d0;
	text-decoration: underline !important;
}

.btn-menu:focus {
	padding: 5px 8px;
	width: 100%;
	background: #f7f7f7;
	color: #1090d0;
	text-align: left;
	margin-bottom: 6px;
	border-left: 5px solid #1090d0;
	text-decoration: underline !important;
}

.bg-profile {
	background: #f2f2f2;
}

.btn-profile-active {
	background: #1090d0;
	color: #fff;
	font-size: 14px;
	padding: 5px 8px;
	text-align: left;
	font-weight: 600;
}

.btn-profile-active:hover {
	background: #1090d0;
	color: #fff;
	font-size: 14px;
	padding: 5px 8px;
	text-align: left;
	font-weight: 600;
	text-decoration: underline !important;
}

.btn-profile {
	font-size: 14px;
	padding: 5px 8px;
	background: #f2f2f2;
	color: #1090d0;
	text-align: left;
	font-weight: 500;
}

.btn-profile:hover {
	padding: 5px 8px;
	background: #f2f2f2;
	color: #1090d0;
	text-align: left;
	font-weight: 500;
	text-decoration: underline !important;
}

legend {
    width:inherit; /* Or auto */
	font-size: 14px;
}

.field {
  border-color: #F00;
  border-style: solid;
}

.form-check-label {
	font-size: 14px;
	font-weight: normal;
}

.pm_alert {
	background: #f2f2f2;
	padding: 10px;
	margin-bottom: 15px;
	font-size: 14px;
	color: #222;
}

.pm_alert a:link,
.pm_alert a:visited,
.pm_alert a:hover,
.pm_alert a:active {
	color: #222;
	text-decoration: underline;
}

.red_alert {
	background: #eb5257;
	color: #fff;
	padding: 20px;
	margin-bottom: 15px;
	font-size: 14px;
	word-wrap: break-word;
}

.red_alert a:link,
.red_alert a:visited,
.red_alert a:hover,
.red_alert a:active {
	color: #fff;
	text-decoration: underline;
}

.btn-thread {
	color: #666;
    background-color: transparent;
    border-color: transparent;
	border: 0px;
	padding: 0px;
	margin: 0px;
	font-size: 14px;
	font-weight: 400;
}

.btn-thread:hover, .btn-thread:active, .btn-thread:focus {
	color: #666;
    background-color: transparent;
    border-color: transparent;
	border: 0px;
	padding: 0px;
	margin: 0px;
	font-size: 14px;
	font-weight: 400;
	text-decoration: underline !important;
}

.error {
	font-weight: 500;
	font-size: 12px;
	color: #dc3545;
}

.trow_selected {
	background: #FFFBD9;
	color: #333;
	border-right-color: #F7E86A;
	border-bottom-color: #F7E86A;
}

.forumdisplay_sticky:before {
	font-family: 'Font Awesome 6 Free';
	content: "\f08d";
	font-weight: 900;
	color: #ff7500;
	margin: 0px;
	display: inline-block;
	vertical-align: middle;
}

.card.border-bottom:has(+ .threads-sep) {
	border-bottom: none !important;
}

/* MyBB keeps alternating row colours straight through the sticky separator, so the
   first normal thread can land on grey right under the grey "Other Threads" header.
   When that happens, swap the colours of every row after the separator so the
   alternation restarts on white. */
.threads-sep + .card .inline_row.trow2,
.threads-sep + .card:has(.inline_row.trow2) ~ .card .inline_row.trow2 {
	background: #fff;
}

.threads-sep + .card:has(.inline_row.trow2) ~ .card .inline_row.trow1 {
	background: #f7f7f7;
}

.editreason {
	font-size: 14px;
	color: #222;
	font-weight: 500;
}

.textbox {
	border: 1px solid #dfdfdf!important;
	color: #222;
	padding: 5px 6px;
	font-size: 16px;
}

.textbox:focus {
	border: 1px solid #dfdfdf!important;
	    outline: none;
 -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

.post_body {
	font-size: 16px;
	max-width: 100%;
}

.online {
	color: #15A018;
}

.offline {
	color: #666;
}

.btn-fd {
	background: #f7f7f7;
	color: #1090d0;
	padding: 1px 5px;
	margin-right: 3px;
	margin-left: 3px;
	border: 1px solid #f7f7f7;
	font-size: 12px!important;
	font-weight: 400;
	border-radius: 3px;
}

.btn-fd:hover {
	background: #f7f7f7;
	color: #1090d0;
	padding: 1px 5px;
	margin-right: 3px;
	margin-left: 3px;
	border: 1px solid #f7f7f7;
	font-weight: 400;
	font-size: 12px!important;
	border-radius: 3px;
	text-decoration: underline !important;
}

.btn-search {
	background: #fff;
	color: #999;
	border-radius: 0!important;
}

.btn-search a {
	color: #999;
	background: #fff;
}

.btn-search a:hover {
	color: #222!important;
	background: #fff;
}

.btn-search:hover {
	color: #222;
	background: #fff;
}

.codeblock {
	background: #f7f7f7;
	padding: 10px 18px;
	margin: 5px 0;
	border-radius: 4px;
	font-size: 0.9rem;
}

.codeblock .title {
	padding-bottom: 3px;
	margin: 0 0 4px 0;
	font-weight: normal;
	color: #666;
}

.codeblock code {
	overflow: auto;
	height: auto;
	max-height: 200px;
	font-family: Monaco, Consolas, Courier, monospace;
	font-size: 13px;
}

code {
    display: flex;
    flex-wrap: wrap;
}

.list-group-item {
	border-bottom: 0;
}

blockquote {
	border: 1px solid #f7f7f7;
	background: #f7f7f7;
	margin: 0;
	color: #222;
	font-size: 0.9rem;
	padding: 10px;
}

blockquote cite {
	font-weight: normal;
	color: #666;
	font-style: normal;
	display: block;
	padding-bottom: 3px;
	margin: 0 0 10px 0;
}

blockquote cite > span {
	float: right;
	font-weight: normal;
	font-size: 12px;
	color: #666;
}

blockquote cite span.highlight {
	float: none;
	font-weight: bold;
	padding-bottom: 0;
}

.dropdown-menu {
	font-size: 12.8px!important;
	font-weight: 500;
	min-width:inherit;
	background: #f2f2f2;
}

.dropdown-menu a {
	background: #f2f2f2;
	color: #666;
	text-decoration: none;
}

.dropdown-menu a:hover {
	background: #f2f2f2;
	text-decoration: underline !important;
}

.dropdown-item a {
	background: #ffffff!important;
	color: #666!important;
	text-decoration: none;
}

.dropdown-item a:hover {
	background: #f2f2f2!important;
	color: #666!important;
	text-decoration: none;
}

.dropdown-item:active {
    background-color: #f2f2f2!important;
}

.btn-menu-coll {
	font-size: 15px;
	padding: 5px 8px;
	width: 100%;
	background: #f7f7f7;
	color: #1090d0;
	text-align: left;
	margin-bottom: 6px;
	border-left: 5px solid #1090d0;
}

.btn-menu-coll:hover {
	padding: 5px 8px;
	width: 100%;
	background: #f7f7f7;
	color: #1090d0;
	text-align: left;
	margin-bottom: 6px;
	border-left: 5px solid #1090d0;
	text-decoration: underline !important;
}

.btn-menu-coll:active {
	padding: 5px 8px;
	width: 100%;
	background: #f7f7f7;
	color: #1090d0;
	text-align: left;
	margin-bottom: 6px;
	border-left: 5px solid #1090d0;
	text-decoration: underline !important;
}

.btn-menu-coll:focus {
	padding: 5px 8px;
	width: 100%;
	background: #f7f7f7;
	color: #1090d0;
	text-align: left;
	margin-bottom: 6px;
	border-left: 5px solid #1090d0;
	text-decoration: underline !important;
}

.radio-toolbar input[type="radio"] {
  display: none;
}

.radio-toolbar label {
  display: inline-block;
  background-color: #fff;
border: 1px solid #ccc;
border-radius: 3px;
	color: #222;
  font-weight: normal;
  font-size: 12.8px;
  cursor: pointer;
	padding-left: 0.75rem;
	padding-top: 0.375rem;
	padding-bottom: 0.375rem;
	padding-right: 0.75rem;
	margin: 0;
}

.radio-toolbar input[type="radio"]:checked+label {
  background-color: #1090d0;
	border-color: #1090d0;
	color: #fff;
}

.btn-cal {
	font-size: 11.7px;
	padding: 2px 4px;
	width: 100%;
	background: #f7f7f7;
	color: #1090d0;
	text-align: left;
	border-radius: 3px;
	display: block;
	margin-bottom: 4px;
}

.btn-cal:hover {
	font-size: 11.7px;
	padding: 2px 4px;
	width: 100%;
	background: #f7f7f7;
	color: #1090d0;
	text-align: left;
    border-radius: 3px;
	text-decoration: underline !important;
}

.btn-cal:active {
	font-size: 11.7px;
	padding: 2px 4px;
	width: 100%;
	background: #f7f7f7;
	color: #1090d0;
	text-align: left;
	border-radius: 3px;
	text-decoration: underline !important;
}

.btn-cal:focus {
	font-size: 11.7px;
	padding: 2px 4px;
	width: 100%;
	background: #f7f7f7;
	color: #1090d0;
	text-align: left;
	border-radius: 3px;
	text-decoration: underline !important;
}

.calendar_day {
	padding: 12px 12px;
    border-bottom: 1px solid #dfdfdf;
	border-right: 1px solid #dfdfdf;
	margin-top: 10px;
	margin-bottom: 10px;
	font-size: 12px;
}

.calendar_currentday {
	padding: 12px 12px;
    border-bottom: 1px solid #dfdfdf;
	background: #f2f2f2;
	border-right: 1px solid #dfdfdf;
	margin-top: 10px;
	margin-bottom: 10px;	
	font-size: 12px;
}

.calendar_week {
    border-bottom: 0;
    width: auto;
    padding-right: 14px;
    display: flex;
    align-items: center;
}

.week_row {
	padding: 10px;
    flex-direction: row;
    align-items: stretch;
    border-bottom-width: 1px
}

.unapproved_post {
	background: #E8DEFF;
}

.noicon {
	background: #f7f7f7;
	padding: 5px;
	border-radius: 4px;
	cursor: pointer;
	margin-bottom: 1px;
}

.noicon:active, .noicon:focus, .noicon:visited {
	background: #dedede;
	padding: 5px;
	border-radius: 4px;
	cursor: pointer;
	margin-bottom: 1px;
}

.posticon-toolbar input[type=radio] {
 
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.posticon-toolbar input[type=radio] + img {
  cursor: pointer;
	background: #f7f7f7;
	padding: 7px;
	border-radius: 4px;
}

.posticon-toolbar input[type=radio]:checked + img {
	background: #dedede;
}

/* CENTER LOGIN MODAL ON SMALL SCREENS */
@media (max-width: 767px) {
  /* make the page blocker a flex-container */
  .blocker {
    display: flex !important;            /* enable flex centering */
    align-items: center !important;      /* vertical center */
    justify-content: center !important;  /* horizontal center */
    padding: 1rem !important;            /* give a little breathing room */
    overflow-y: auto !important;        /* allow internal scrolling if needed */
  }

  /* constrain and center the modal card */
  .blocker .modal {
    max-height: 90vh !important;  /* never taller than 90% of viewport */
    width: 100% !important;      /* span full width of its container */
    max-width: 400px !important;  /* but cap at a sensible width */
    overflow-y: auto !important;  /* scroll inside the modal if content grows */
    margin: 0 auto !important;    /* ensure it sits squarely in the middle */
  }

  /* the old "vertical-align" hack is no longer needed */
  .blocker:before {
    content: none !important;
  }
}

/* Avatar aspect ratio fixes */
.author_avatar {
  overflow: visible;
  border-radius: 6px; /* Default: fully rounded when no badge */
  display: block;
  position: relative;
  z-index: 2;
}

.author_avatar img {
  object-fit: cover !important;
  border-radius: 6px; /* Default: fully rounded when no badge */
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 2;
}

/* Ensure all avatar images maintain aspect ratio and rounded corners */
img[src*="avatar"] {
  object-fit: cover !important;
  border-radius: 6px !important;
}

/* Avatar wrapper for badge extension */
.author_avatar-wrapper {
  display: inline-block;
  position: relative;
}

/* TK ID Badge Styles - Custom Field IDs: TK ID = 4 (URL constructed as https://www.501st.com/member/{fid4}/) */
/* Dark grey tab hanging off bottom of avatar, extending up behind it */
.tk-id-badge {
  position: relative;
  text-align: center;
  font-size: 10px;
  font-weight: 600;
  padding: 14px 0 4px 0;
  background-color: rgba(0, 0, 0, 0.75);
  color: #fff;
  border-radius: 0 0 6px 6px;
  display: block;
  white-space: nowrap;
  line-height: 1.4;
  margin-top: -12px;
  z-index: 1;
}

/* Hide badge if it's completely empty */
.tk-id-badge:empty {
  display: none;
}

/* Hide badge if link has no text content (TK ID field is empty) */
.tk-id-badge:has(a:empty) {
  display: none;
}

/* Fallback for older browsers: hide badge if link text is empty */
.tk-id-badge a:empty {
  display: none;
}

.tk-id-badge-small {
  font-size: 8px;
  padding: 15px 7px 5px;
}

.tk-id-link {
  color: #fff;
  text-decoration: none;
  display: block;
}

/* Style links without valid URLs (empty href, href="#", or missing href) as plain text */
.tk-id-link:not([href]),
.tk-id-link[href=""],
.tk-id-link[href="#"] {
  color: #fff;
  text-decoration: none;
  cursor: default;
  pointer-events: none;
}

/* Only apply pointer cursor to links with valid URLs */
.tk-id-link[href]:not([href=""]):not([href="#"]) {
  cursor: pointer;
}

/* Adjust avatar border radius when badge is present - top corners only */
.author_avatar-wrapper:has(.tk-id-badge:not(:empty)) .author_avatar {
  border-radius: 6px 6px 0 0;
}

.author_avatar-wrapper:has(.tk-id-badge:not(:empty)) .author_avatar img {
  border-radius: 6px 6px 0 0;
}

/* Postbit custom profile fields (Preferred Name, Pronouns, etc.) - rendered as ID-card style chips */
.post-profilefields {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 4px;
}

.post-profilefields:empty {
  display: none;
}

/* Tablet (md to below-lg): a bit more breathing room around chips */
@media (min-width: 768px) and (max-width: 991.98px) {
  .post-profilefields:has(.profilefield:not(.profilefield-fid4)) {
    margin-top: 0.5rem;
    margin-bottom: 0.25rem;
  }
}

/* Desktop (lg+): equal space above and below chips; mobile keeps current spacing */
@media (min-width: 992px) {
  /* Only when at least one non-fid4 chip is present (fid4 is always hidden) */
  h6.card-title:has(+ .post-profilefields .profilefield:not(.profilefield-fid4)) {
    margin-bottom: 0.5rem !important; /* overrides mb-lg-3 when chips are present */
  }

  .post-profilefields:has(.profilefield:not(.profilefield-fid4)) {
    margin-top: 0;
    margin-bottom: 0.5rem;
  }
}

.post-profilefields .profilefield {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  background-color: #f2f2f2;
  border: 1px solid #dee2e6;
  border-radius: 12px;
  font-size: 11px;
  line-height: 1.3;
  white-space: nowrap;
}

/* Default chip icon (fa-tag) - fallback for fields with no specific mapping below */
.post-profilefields .profilefield::before {
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  content: "\f02b";
}

/* Icon overrides matched by field name text - add more of these as new postbit fields are added */
.post-profilefields .profilefield[data-field-name*="Name"]::before {
  content: "\f2c1"; /* fa-id-badge */
}

.post-profilefields .profilefield[data-field-name*="Pronoun"]::before {
  content: "\f228"; /* fa-venus-mars */
}

/* Legion ID (fid4) is excluded here since it's already shown on the avatar badge */
.post-profilefields .profilefield-fid4 {
  display: none;
}

/* ---------------------------------------------------------------------------
 * MyBB core table vocabulary
 *
 * MyBB's own templates - and any plugin that follows its conventions - build tables out
 * of .tborder / .thead / .tcat / .trow1 / .trow2, with .button on submit inputs. This
 * theme moved most of its templates onto Bootstrap cards and only kept the geometry for
 * those classes (the border radii in css3.css); their backgrounds and borders lived in
 * the colour-scheme stylesheets, which no longer load.
 *
 * So anything still rendered the MyBB way came out with no surface at all: the moderation
 * and thread-review modals, report confirmations, warning types, and every third-party
 * plugin page. These rules map the core classes onto the same tokens the theme's cards
 * already use, so that markup lands looking like the rest of the board.
 *
 * .thead follows .card-header, .tcat and .tfoot the quieter .card-footer, and .button the
 * .btn-primary treatment.
 * ------------------------------------------------------------------------ */

.tborder {
	width: 100%;
	background: #fff;
	border: 1px solid #dee2e6;
	border-radius: 4px;
}

.thead {
	background: #1090d0;
	color: #fff;
	border-bottom: 0;
	padding: 10px;
	font-size: 16px;
	line-height: 1.2;
}

.thead a,
.thead a:link,
.thead a:visited {
	color: #fff;
	text-decoration: none;
}

.thead a:hover,
.thead a:active {
	color: #fff;
	text-decoration: underline;
}

.tcat {
	background: #f2f2f2;
	color: #444;
	border-bottom: 1px solid #dee2e6;
	padding: 8px 10px;
	font-size: 14.4px;
}

.tcat a,
.tcat a:link,
.tcat a:visited,
.tcat a:hover,
.tcat a:active {
	color: #444;
	text-decoration: none;
}

.trow1,
.trow2,
.trow_shaded {
	padding: 8px 10px;
	border-bottom: 1px solid #dee2e6;
}

.trow1 {
	background: #fff;
}

.trow2 {
	background: #f7f7f7;
}

/* Shaded rows flag moderated content, so they keep a colour of their own. */
.trow_shaded {
	background: #ffdde0;
}

.tfoot {
	background: #f2f2f2;
	color: #444;
	border-top: 1px solid #dee2e6;
	padding: 10px;
}

.tfoot a,
.tfoot a:link,
.tfoot a:visited {
	color: #444;
	text-decoration: none;
}

.tfoot a:hover,
.tfoot a:active {
	color: #444;
	text-decoration: underline;
}

.bottommenu {
	background: #f2f2f2;
	color: #444;
	border: 1px solid #dee2e6;
	border-radius: 4px;
	padding: 10px;
}

input.button,
button.button {
	padding: 5px 12px;
	cursor: pointer;
	line-height: 1.2;
	font-size: 14.4px;
	background: #1090d0;
	border: 1px solid #1090d0;
	border-radius: 3px;
	color: #fff;
	outline: 0;
}

input.button:hover,
button.button:hover {
	filter: brightness(1.08);
}

/* The Events plugin declares its accent colours as custom properties so a theme can
   retint its buttons, pills and dots without restyling them. Point them at the brand. */
:root {
	--events-accent: #1090d0;
	--events-accent-border: #1090d0;
}

/* The plugin ships a neutral dropdown of its own so it looks right on any theme. Size it
   like the board's .form-select instead, so the filter rows above its tables match every
   other dropdown on the forum. It has to be written under .events_page_wrap rather than
   on .events_select alone: the plugin's stylesheet is installed last in the display
   order, so an equally specific rule here would lose the tie. The arrow it draws is the
   same chevron as .form-select's above, so only the metrics are restated. */
.events_page_wrap .events_select {
	font-size: 16px;
	line-height: 1.5;
	color: #222;
	padding: 4px 48px 4px 8px;
	border-color: #ccc;
	border-radius: 3px;
	background-position: calc(100% - 12px) 50%;
	background-size: 16px 12px;
}

		