﻿/* =============================================================
   Aurora â€” premium design layer for SMF 2.1 (Curve base)
   v1.1 â€” full visual overhaul
   ============================================================= */

:root {
	--au-ink: #0c1626;
	--au-ink-2: #12233d;
	--au-body: #35455e;
	--au-muted: #71829e;
	--au-primary: #1f7cf5;
	--au-primary-2: #6aa8ff;
	--au-cyan: #2dd4bf;
	--au-gold: #f5b942;
	--au-bg: #edf2f8;
	--au-surface: #ffffff;
	--au-border: #dfe7f1;
	--au-radius: 16px;
	--au-radius-sm: 10px;
	--au-shadow: 0 1px 2px rgba(12, 22, 38, .05), 0 10px 30px -14px rgba(12, 22, 38, .16);
	--au-shadow-lg: 0 2px 4px rgba(12, 22, 38, .06), 0 24px 60px -20px rgba(12, 22, 38, .28);
	--au-grad: #1f7cf5;
	--au-font: 'Inter', 'Segoe UI', system-ui, sans-serif;
	--au-font-display: 'Sora', 'Inter', 'Segoe UI', system-ui, sans-serif;
}

/* ---------- Base ---------- */
html {
	background: var(--au-bg);
}

body {
	font-family: var(--au-font);
	font-size: 14px;
	line-height: 1.55;
	color: var(--au-body);
	background: var(--au-bg);
}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--au-font-display);
	color: var(--au-ink);
}

a, a:visited {
	color: var(--au-primary);
	text-decoration: none;
}

a:hover {
	color: #1663d6;
	text-decoration: none;
}

/* Kill Curve's big white body card â€” Aurora uses individual cards instead. */
#wrapper {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

#content_section,
#main_content_section,
#upper_section,
#inner_section {
	background: transparent;
	border: 0;
	box-shadow: none;
	padding-left: 0;
	padding-right: 0;
}

#main_content_section {
	padding-top: 0;
}

/* =============================================================
   DARK ZONE â€” utility bar + hero share one seamless gradient
   ============================================================= */
#top_section,
#header,
#footer {
	background: var(--au-ink);
	border: 0;
	box-shadow: none;
	width: 100% !important;
	max-width: none !important;
	border-radius: 0;
}

#top_section {
	background-image: linear-gradient(180deg, #101f38 0%, #0e1a2e 100%);
	border-bottom: 1px solid rgba(255, 255, 255, .05);
	min-height: 0;
	padding: 8px 0;
	position: relative;
	z-index: 50;
}

#top_section .inner_wrap {
	max-width: 1200px;
	padding: 4px 20px;
}

#header {
	background-image: linear-gradient(180deg, #0e1a2e 0%, #0a1424 100%);
	display: block;
	padding: 48px 0 62px;
	margin: 0;
	position: relative;
	overflow: hidden;
}

/* Decorative aurora orbs */
#header::before,
#header::after {
	content: '';
	position: absolute;
	border-radius: 999px;
	filter: blur(70px);
	pointer-events: none;
}

#header::before {
	width: 560px;
	height: 560px;
	left: -120px;
	bottom: -380px;
	background: radial-gradient(circle, rgba(31, 124, 245, .55), transparent 65%);
}

#header::after {
	width: 640px;
	height: 640px;
	right: -140px;
	bottom: -460px;
	background: radial-gradient(circle, rgba(45, 212, 191, .35), transparent 65%);
}

#header .au-hero-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
	position: relative;
	z-index: 2;
}

/* Decorative ring on the right side of the hero */
#header .au-hero-inner::after {
	content: '';
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-44%);
	width: 260px;
	height: 260px;
	border-radius: 999px;
	background: radial-gradient(circle at 35% 35%, rgba(155, 140, 255, .22), rgba(45, 212, 191, .07) 58%, transparent 72%);
	border: 1px solid rgba(255, 255, 255, .08);
	box-shadow: inset 0 0 60px rgba(31, 124, 245, .28), 0 0 90px rgba(31, 124, 245, .20);
	pointer-events: none;
}

@media screen and (max-width: 980px) {
	#header .au-hero-inner::after {
		display: none;
	}
}

.au-eyebrow {
	display: inline-block;
	color: #89a2c2;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .24em;
	text-transform: uppercase;
	margin-bottom: 12px;
}

.forumtitle {
	font-family: var(--au-font-display);
	font-size: 3em;
	font-weight: 800;
	letter-spacing: -.025em;
	line-height: 1.1;
	float: none;
}

.forumtitle a {
	color: #fff;
	background: linear-gradient(95deg, #ffffff 10%, #bcd8ff 60%, #8fe6f8 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	text-shadow: none;
}

#siteslogan {
	color: #9db0ca;
	font-size: 15px;
	font-weight: 500;
	margin-top: 10px;
	text-align: left;
	float: none;
}

#smflogo {
	display: none;
}

/* ---------- Top utility bar contents ---------- */
#top_section ul li,
#top_section ul li a,
#top_section .welcome,
#top_info > li > a {
	color: #c4d3e8;
	font-size: 13px;
}

#top_section .welcome a {
	color: #fff;
	font-weight: 600;
}

#top_info > li > a {
	background: transparent;
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 999px;
	padding: 6px 15px;
	margin-right: 4px;
	transition: background .15s ease, color .15s ease, border-color .15s ease;
}

#top_info > li > a:hover,
#top_info > li > a.active,
#top_info > li > a.open {
	background: rgba(255, 255, 255, .10);
	border-color: rgba(255, 255, 255, .22);
	color: #fff;
	box-shadow: none;
}

#top_info .amt,
.dropmenu .amt {
	background: var(--au-gold);
	color: #0e1a2e;
	font-weight: 700;
	border-radius: 999px;
}

/* Quick search + language */
#search_form {
	padding: 2px 0;
	display: flex;
	align-items: center;
	gap: 8px;
}

/* Curve locks these to 26px which clips the text â€” give every control the same real height. */
#search_form input[type="search"],
#search_form select,
#languages_form select,
#search_form .button {
	height: 34px !important;
	line-height: 34px !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	margin: 0;
	vertical-align: middle;
}

#search_form input[type="search"],
#search_form select,
#languages_form select {
	background: rgba(255, 255, 255, .08);
	border: 1px solid rgba(255, 255, 255, .14);
	border-radius: 999px;
	color: #e6eef7;
	padding: 6px 15px;
	font-family: var(--au-font);
	font-size: 13px;
	outline: none;
	box-shadow: none;
	transition: border-color .15s ease, background .15s ease;
}

#search_form select,
#languages_form select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 6px 32px 6px 16px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%239db3d0' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 13px center;
	cursor: pointer;
}

#search_form input[type="search"] {
	width: 200px;
}

#search_form input[type="search"]:focus {
	background: rgba(255, 255, 255, .15);
	border-color: var(--au-primary-2);
	width: 250px;
}

#search_form input[type="search"]::placeholder {
	color: #90a6c2;
}

#search_form select option,
#languages_form select option {
	background: #101f38;
	color: #e6eef7;
	padding: 8px 12px;
}

#search_form select option:checked,
#languages_form select option:checked {
	background: #1f7cf5;
	color: #fff;
}

#search_form .button {
	background: var(--au-grad);
	border: 0;
	border-radius: 999px;
	color: #fff;
	font-weight: 700;
	font-size: 12.5px;
	letter-spacing: .04em;
	padding: 7px 18px;
	text-shadow: none;
	box-shadow: 0 6px 16px -6px rgba(31, 124, 245, .6);
	cursor: pointer;
}

#search_form .button:hover {
	filter: brightness(1.1);
	color: #fff;
}

/* =============================================================
   NAV â€” floating pill card overlapping the hero
   ============================================================= */
#inner_section {
	display: flex;
	flex-direction: column;
}

#main_menu {
	order: 1;
	margin: -30px 0 0;
	padding: 0;
	position: relative;
	z-index: 40;
}

#inner_wrap {
	order: 2;
	padding: 14px 4px 0;
	color: var(--au-muted);
	font-size: 12px;
	min-height: 0;
	opacity: .9;
	border: 0 !important;
}

#inner_wrap .news h2,
#inner_wrap .news p {
	font-size: 12px;
	display: inline;
}

#inner_section .navigate_section {
	order: 3;
}

a.mobile_user_menu {
	order: 0;
}

#main_menu .dropmenu {
	width: fit-content;
	max-width: 100%;
}

.dropmenu.menu_nav {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	background: var(--au-surface);
	border: 1px solid var(--au-border);
	border-radius: 999px;
	box-shadow: var(--au-shadow-lg);
	padding: 7px;
}

.dropmenu > li {
	flex: 0 0 auto;
	margin: 0;
}

.dropmenu > li > a,
.dropmenu > li > a:visited {
	display: flex;
	align-items: center;
	gap: 7px;
	background: transparent;
	border-radius: 999px;
	color: var(--au-ink);
	font-weight: 600;
	font-size: 13.5px;
	padding: 9px 20px;
	text-shadow: none;
	transition: background .15s ease, color .15s ease;
}

.dropmenu > li > a:hover,
.dropmenu > li:hover > a {
	background: #e9f1fb;
	color: var(--au-primary);
	box-shadow: none;
}

.dropmenu > li > a.active {
	background: var(--au-grad);
	color: #fff;
	box-shadow: 0 8px 18px -8px rgba(31, 124, 245, .65);
}

.dropmenu > li > a.active:hover {
	color: #fff;
}

/* Dropdown panels (2nd/3rd level + user menus) */
.dropmenu li ul,
.top_menu {
	background: var(--au-surface);
	border: 1px solid var(--au-border);
	border-radius: 12px;
	box-shadow: var(--au-shadow-lg);
	padding: 6px;
}

.dropmenu li li {
	border-radius: 8px;
}

.dropmenu li li a,
.dropmenu li li a:visited {
	border-radius: 8px;
	color: var(--au-body);
	padding: 9px 15px;
	font-size: 13px;
}

.dropmenu li li:hover > a,
.dropmenu li li a:hover {
	background: #e9f1fb;
	color: var(--au-primary);
}

/* Unread pills under the nav */
.unread_links a {
	background: var(--au-surface);
	border: 1px solid var(--au-border);
	border-radius: 999px;
	color: var(--au-body);
	padding: 4px 13px;
	font-size: 12px;
	font-weight: 600;
}

.unread_links a:hover {
	color: var(--au-primary);
	border-color: var(--au-primary-2);
}

.news {
	color: var(--au-muted);
}

.news h2 {
	color: var(--au-ink);
	font-size: 13px;
}

/* ---------- Breadcrumbs ---------- */
.navigate_section {
	padding: 14px 0 2px;
	margin: 0;
}

.navigate_section ul {
	background: transparent;
	border: 0;
	box-shadow: none;
	padding: 0 4px;
	font-size: 12.5px;
}

.navigate_section ul li a,
.navigate_section ul li span {
	color: var(--au-muted);
	text-shadow: none;
}

.navigate_section ul li.last span,
.navigate_section ul li.last a {
	color: var(--au-ink);
	font-weight: 600;
}

.navigate_section ul li .dividers {
	color: #bac9dd;
}

/* On the home page the breadcrumb is a single redundant item â€” hide it. */
.navigate_section ul li:only-child {
	display: none;
}

/* =============================================================
   CARDS â€” categories, boards, generic containers
   ============================================================= */
.main_container {
	background: var(--au-surface);
	border: 1px solid var(--au-border);
	border-radius: var(--au-radius);
	box-shadow: var(--au-shadow);
	overflow: hidden;
	margin-top: 22px;
}

.cat_bar {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	margin: 0;
}

.catbg,
.cat_bar .catbg {
	background: var(--au-ink-2);
	background-image: linear-gradient(90deg, rgba(31, 124, 245, .38) 0%, rgba(45, 212, 191, .14) 70%, transparent 100%);
	border-radius: 0;
	color: #fff;
	font-family: var(--au-font-display);
	font-size: 14.5px;
	font-weight: 700;
	letter-spacing: .01em;
	text-shadow: none;
	padding: 14px 22px;
}

.cat_bar .catbg a,
.catbg a,
.catbg a:visited {
	color: #fff;
	text-shadow: none;
}

.cat_bar .desc {
	background: #f5f8fc;
	color: var(--au-muted);
	padding: 8px 22px;
	font-size: 12.5px;
}

/* Board rows */
#boardindex_table .up_contain {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 18px;
	background: var(--au-surface);
	border: 0;
	border-bottom: 1px solid #edf2f8;
	padding: 18px 22px;
	transition: background .15s ease;
}

#boardindex_table .up_contain:last-child {
	border-bottom: 0;
}

#boardindex_table .up_contain:hover {
	background: #f7fafd;
}

#boardindex_table .board_icon {
	flex: 0 0 auto;
	width: auto;
	padding: 0;
}

#boardindex_table .info {
	flex: 1 1 300px;
	padding: 0;
}

#boardindex_table .board_stats {
	flex: 0 0 auto;
	text-align: right;
	padding: 0;
}

#boardindex_table .lastpost {
	flex: 0 0 250px;
	padding: 0;
}

#boardindex_table .children {
	flex: 1 1 100%;
	order: 10;
}

/* Aurora letter avatars */
#boardindex_table .board_icon a.au-avatar,
.au-avatar,
.au-avatar:visited {
	background-image: none;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 16px;
	background: linear-gradient(135deg, hsl(var(--au-h, 248), 74%, 62%), hsl(calc(var(--au-h, 248) + 45), 80%, 68%));
	box-shadow: 0 8px 18px -8px hsla(var(--au-h, 248), 74%, 52%, .65);
	color: #fff;
	font-family: var(--au-font-display);
	font-size: 21px;
	font-weight: 800;
	text-decoration: none;
}

.au-avatar:hover {
	color: #fff;
	filter: brightness(1.08);
}

.au-avatar-redirect {
	background: linear-gradient(135deg, #8b93b8, #b4bad6);
	box-shadow: 0 8px 18px -8px rgba(120, 128, 165, .6);
}

.au-dot {
	position: absolute;
	top: -3px;
	right: -3px;
	width: 13px;
	height: 13px;
	border-radius: 999px;
	background: var(--au-gold);
	border: 2.5px solid #fff;
}

/* Board name & description */
#boardindex_table .info .subject,
.board_name h3 a,
.board_link {
	color: var(--au-ink);
	font-family: var(--au-font-display);
	font-size: 15.5px;
	font-weight: 700;
}

#boardindex_table .info .subject:hover,
.board_link:hover {
	color: var(--au-primary);
}

.board_description {
	color: var(--au-muted);
	font-size: 12.5px;
	margin-top: 2px;
}

p.moderators {
	color: var(--au-muted);
	font-size: 11.5px;
}

/* Stat chips */
.au-chips {
	display: flex;
	gap: 8px;
	justify-content: flex-end;
}

.au-chip {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	background: #f1f5fa;
	border: 1px solid var(--au-border);
	border-radius: 999px;
	color: var(--au-muted);
	font-size: 11.5px;
	font-weight: 500;
	padding: 4px 12px;
	white-space: nowrap;
}

.au-chip b {
	color: var(--au-ink);
	font-weight: 700;
	font-size: 12.5px;
}

/* Last post cell */
#boardindex_table .lastpost p {
	color: var(--au-muted);
	font-size: 12px;
	line-height: 1.5;
	margin: 0;
}

/* Child boards strip */
.children {
	background: #f5f8fc;
	border: 1px solid var(--au-border);
	border-radius: var(--au-radius-sm);
	padding: 7px 14px;
	margin: 0;
}

.children p {
	color: var(--au-muted);
	font-size: 12px;
	margin: 0;
}

/* Generic containers elsewhere (topics list, profile, admin...) */
.tborder,
.roundframe,
#preview_body {
	background: var(--au-surface);
	border: 1px solid var(--au-border);
	border-radius: var(--au-radius);
	box-shadow: var(--au-shadow);
}

.windowbg,
.windowbg2 {
	background: var(--au-surface);
	border-bottom: 1px solid #edf2f8;
	box-shadow: none;
}

.windowbg:first-child {
	border-radius: 0;
}

.windowbg:last-child {
	border-bottom: 0;
	border-radius: 0 0 var(--au-radius) var(--au-radius);
}

/* Title bars outside the dark cat headers */
.title_bar {
	background: transparent;
	border: 0;
	box-shadow: none;
}

.title_bar .titlebg,
.titlebg,
.sub_bar .subbg {
	background: transparent;
	border: 0;
	border-radius: 0;
	color: var(--au-ink);
	font-family: var(--au-font-display);
	font-weight: 700;
	text-shadow: none;
	padding: 12px 20px 8px;
}

.titlebg a, .titlebg a:visited,
.subbg a, .subbg a:visited {
	color: var(--au-ink);
	text-shadow: none;
}

/* =============================================================
   MESSAGE INDEX (topic list)
   ============================================================= */

/* Board title + description head */
#display_head {
	position: relative;
	overflow: hidden;
	background: var(--au-surface);
	border: 1px solid var(--au-border);
	border-radius: var(--au-radius);
	box-shadow: var(--au-shadow);
	padding: 22px 26px;
	margin-bottom: 4px;
}

#display_head::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 4px;
	background: var(--au-grad);
}

#display_head .display_title {
	font-family: var(--au-font-display);
	font-size: 21px;
	font-weight: 800;
	letter-spacing: -.01em;
	color: var(--au-ink);
}

#display_head p {
	color: var(--au-muted);
	font-size: 13px;
	margin: 4px 0 0;
}

/* The topic table becomes one clean card */
#messageindex {
	background: var(--au-surface);
	border: 1px solid var(--au-border);
	border-radius: var(--au-radius);
	box-shadow: var(--au-shadow);
	overflow: hidden;
}

/* Column header */
#topic_header {
	background: #f5f8fc;
	border-bottom: 1px solid var(--au-border);
	padding: 10px 18px;
}

#topic_header,
#topic_header a,
#topic_header a:visited {
	color: var(--au-muted) !important;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	text-shadow: none;
}

#topic_header a:hover {
	color: var(--au-primary) !important;
}

/* Topic rows */
#topic_container .windowbg {
	padding: 15px 18px;
	border-bottom: 1px solid #edf2f8;
	transition: background .15s ease;
}

#topic_container .windowbg:hover {
	background: #f7fafd;
}

#topic_container .windowbg:last-child {
	border-bottom: 0;
}

#topic_container .message_index_title,
#topic_container .message_index_title a {
	font-size: 14.5px;
	font-weight: 600;
	color: var(--au-ink);
}

#topic_container .message_index_title a:hover {
	color: var(--au-primary);
}

#topic_container .floatleft,
#topic_container .smalltext {
	color: var(--au-muted);
	font-size: 12px;
}

#topic_container .board_stats {
	color: var(--au-muted);
	font-size: 12px;
	line-height: 1.6;
}

#topic_container .lastpost {
	font-size: 12px;
	color: var(--au-muted);
}

#topic_container .new_posts {
	background: var(--au-gold);
	color: #0e1a2e;
	border-radius: 999px;
	font-size: 10px;
	font-weight: 800;
	padding: 2px 8px;
	text-transform: uppercase;
	letter-spacing: .05em;
}

/* Icon legend + jump-to footer block */
#topic_icons {
	background: var(--au-surface);
	border: 1px solid var(--au-border);
	border-radius: var(--au-radius);
	box-shadow: var(--au-shadow);
	padding: 14px 20px;
	color: var(--au-muted);
	font-size: 12px;
}

#topic_icons p {
	color: var(--au-muted);
	font-size: 12px;
}

/* Curve nests a gray .information box inside â€” flatten it into the card */
#topic_icons .information {
	background: transparent;
	border: 0;
	box-shadow: none;
	padding: 0;
	margin: 0;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px 30px;
}

#topic_icons .information p {
	margin: 0;
	line-height: 1.9;
	float: none;
}

#topic_icons #message_index_jump_to {
	display: flex;
	align-items: center;
	gap: 8px;
	order: 3;
	margin-left: auto;
	float: none;
}

#topic_icons .main_icons {
	color: var(--au-primary);
	margin-right: 3px;
}

/* Hide the duplicated breadcrumb inside the content area (already shown up top) */
#main_content_section .navigate_section {
	display: none;
}

/* Message index topic rows */
#messageindex .windowbg {
	transition: background .15s ease;
}

#messageindex .windowbg:hover {
	background: #f7fafd;
}

#messageindex .subject a {
	color: var(--au-ink);
	font-weight: 600;
}

#messageindex .subject a:hover {
	color: var(--au-primary);
}

/* =============================================================
   INFO CENTER â€” card grid
   ============================================================= */
#info_center {
	background: transparent;
	border: 0;
	box-shadow: none;
	margin-top: 26px;
	padding: 0;
}

#info_center .title_bar .titlebg {
	padding: 0 4px 10px;
	font-size: 15px;
}

#info_center .titlebg a {
	color: var(--au-ink);
}

#upshrink_stats {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: 16px;
}

.au-ic-block {
	background: var(--au-surface);
	border: 1px solid var(--au-border);
	border-radius: var(--au-radius);
	box-shadow: var(--au-shadow);
	padding: 16px 20px 18px;
}

.au-ic-block .sub_bar .subbg {
	padding: 0 0 8px;
	font-size: 13.5px;
	border-bottom: 1px solid #edf2f8;
	margin-bottom: 10px;
}

.au-ic-block p.inline {
	color: var(--au-body);
	font-size: 12.5px;
	line-height: 1.7;
	padding: 0;
	margin: 0;
}

.au-ic-block table {
	font-size: 12.5px;
}

/* =============================================================
   BUTTONS, FORMS, PAGINATION
   ============================================================= */
.button,
.button:visited,
input[type="submit"],
input[type="button"] {
	background: var(--au-surface);
	border: 1px solid var(--au-border);
	border-radius: 999px;
	color: var(--au-ink);
	font-family: var(--au-font);
	font-weight: 600;
	font-size: 13px;
	padding: 7px 17px;
	text-shadow: none;
	box-shadow: 0 1px 2px rgba(12, 22, 38, .06);
	transition: background .15s ease, color .15s ease, border-color .15s ease;
	cursor: pointer;
}

/* Curve caps input-button heights at ~26px which misaligns them next to 34px selects */
input[type="submit"].button,
input[type="button"].button,
button.button {
	height: 34px !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	line-height: 32px !important;
}

.button:hover,
input[type="submit"]:hover,
input[type="button"]:hover {
	background: #e9f1fb;
	border-color: #cfdcee;
	color: var(--au-primary);
	box-shadow: 0 1px 2px rgba(12, 22, 38, .06);
}

.button.active,
input[type="submit"].active {
	background: var(--au-grad);
	border-color: transparent;
	color: #fff;
}

.button.active:hover {
	color: #fff;
	filter: brightness(1.07);
}

input[type="text"], input[type="password"], input[type="email"],
input[type="url"], input[type="number"],
select, textarea {
	background: #fafcfe;
	border: 1px solid var(--au-border);
	border-radius: var(--au-radius-sm);
	color: var(--au-ink);
	font-family: var(--au-font);
	padding: 7px 12px;
	outline: none;
	transition: border-color .15s ease, box-shadow .15s ease;
}

input[type="text"]:focus, input[type="password"]:focus, input[type="email"]:focus,
textarea:focus, select:focus {
	border-color: var(--au-primary-2);
	box-shadow: 0 0 0 3px rgba(31, 124, 245, .14);
}

/* Curve caps select heights and clips the text â€” normalize every single-line select. */
select:not([multiple]) {
	height: 34px !important;
	line-height: 32px;
	padding: 0 30px 0 12px !important;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%2371829e' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 11px center;
	cursor: pointer;
}

.pagesection {
	background: transparent;
	border: 0;
	box-shadow: none;
	padding: 10px 2px;
}

.pagelinks .current_page,
.page_index .current_page {
	background: var(--au-grad);
	border-radius: 8px;
	color: #fff;
	font-weight: 700;
	padding: 4px 11px;
}

.pagelinks a.nav_page,
.page_index a.nav_page {
	background: var(--au-surface);
	border: 1px solid var(--au-border);
	border-radius: 8px;
	color: var(--au-body);
	padding: 4px 11px;
}

.pagelinks a.nav_page:hover {
	border-color: var(--au-primary-2);
	color: var(--au-primary);
}

/* =============================================================
   TOPIC DISPLAY
   ============================================================= */
#forumposts {
	background: var(--au-surface);
	border: 1px solid var(--au-border);
	border-radius: var(--au-radius);
	box-shadow: var(--au-shadow);
	overflow: hidden;
}

#forumposts .cat_bar {
	margin-top: 0;
}

#forumposts .windowbg {
	padding: 6px 14px;
}

.post_wrapper {
	border-bottom: 0;
}

.poster h4, .poster h4 a {
	color: var(--au-ink);
	font-family: var(--au-font-display);
	font-weight: 700;
}

.poster .membergroup, .poster .postgroup {
	color: var(--au-muted);
	font-size: 12px;
}

.poster img.avatar {
	border-radius: 14px;
	box-shadow: var(--au-shadow);
}

.keyinfo .smalltext {
	color: var(--au-muted);
}

.quoteheader, .codeheader {
	color: var(--au-muted);
	font-weight: 600;
}

blockquote.bbc_standard_quote, blockquote.bbc_alternate_quote {
	background: #f5f8fc;
	border: 1px solid var(--au-border);
	border-left: 3px solid var(--au-primary);
	border-radius: var(--au-radius-sm);
}

.bbc_code {
	background: #0e1a2e;
	border: 0;
	border-radius: var(--au-radius-sm);
	color: #d7dbf5;
}

.signature {
	border-top: 1px dashed var(--au-border);
	color: var(--au-muted);
}

.quickbuttons li a {
	border-radius: 999px;
	font-size: 12px;
}

/* =============================================================
   PHOSPHOR ICONS â€” replace SMF's sprite icons with font glyphs
   ============================================================= */
span.main_icons.home,
span.main_icons.search,
span.main_icons.admin,
span.main_icons.moderate,
span.main_icons.profile,
span.main_icons.inbox,
span.main_icons.alerts,
span.main_icons.login,
span.main_icons.logout,
span.main_icons.regcenter,
span.main_icons.signup,
span.main_icons.calendar,
span.main_icons.stats,
span.main_icons.people,
span.main_icons.recent_posts,
span.main_icons.members,
span.main_icons.mlist,
span.main_icons.help,
span.main_icons.quote,
span.main_icons.quote_selected,
span.main_icons.modify_button,
span.main_icons.remove_button,
span.main_icons.delete,
span.main_icons.reply_button,
span.main_icons.watch,
span.main_icons.lock,
span.main_icons.sticky,
span.main_icons.move,
span.main_icons.poll,
span.main_icons.profile_sm,
span.main_icons.im_on,
span.main_icons.im_off,
span.main_icons.reports,
span.main_icons.packages,
span.main_icons.features,
span.main_icons.attachment,
span.main_icons.post_moderation_moderate,
span.main_icons.warning_mute,
span.main_icons.print,
span.main_icons.website {
	background: none !important;
	width: auto;
	height: auto;
	min-width: 16px;
	display: inline-block;
	font-family: "Phosphor" !important;
	font-style: normal;
	font-weight: normal;
	font-size: 16px;
	line-height: 1;
	vertical-align: -0.125em;
	color: inherit;
	text-transform: none;
	speak: never;
}

/* Curve paints the sprite on the ::before pseudo â€” clear it so only the glyph shows. */
span.main_icons:is(.home, .search, .admin, .moderate, .profile, .inbox, .alerts, .login, .logout, .regcenter, .signup, .calendar, .stats, .people, .recent_posts, .members, .mlist, .help, .quote, .quote_selected, .modify_button, .remove_button, .delete, .reply_button, .watch, .lock, .sticky, .move, .poll, .profile_sm, .im_on, .im_off, .reports, .packages, .features, .attachment, .post_moderation_moderate, .warning_mute, .print, .website)::before {
	background: none !important;
	width: auto;
	height: auto;
}

span.main_icons.home::before { content: "\e2c2"; }
span.main_icons.search::before { content: "\e30c"; }
span.main_icons.admin::before { content: "\e272"; }
span.main_icons.moderate::before { content: "\ec34"; }
span.main_icons.profile::before { content: "\e4c4"; }
span.main_icons.inbox::before { content: "\e4aa"; }
span.main_icons.alerts::before { content: "\e0ce"; }
span.main_icons.login::before { content: "\e428"; }
span.main_icons.logout::before { content: "\e42a"; }
span.main_icons.regcenter::before,
span.main_icons.signup::before { content: "\e4d0"; }
span.main_icons.calendar::before { content: "\e10a"; }
span.main_icons.stats::before { content: "\e150"; }
span.main_icons.people::before { content: "\e68e"; }
span.main_icons.recent_posts::before { content: "\e1a0"; }
span.main_icons.members::before,
span.main_icons.mlist::before { content: "\e4d6"; }
span.main_icons.help::before { content: "\e3e8"; }
span.main_icons.quote::before,
span.main_icons.quote_selected::before { content: "\e660"; }
span.main_icons.modify_button::before { content: "\e3b4"; }
span.main_icons.remove_button::before,
span.main_icons.delete::before { content: "\e4a6"; }
span.main_icons.reply_button::before { content: "\e024"; }
span.main_icons.watch::before { content: "\e220"; }
span.main_icons.lock::before { content: "\e308"; }
span.main_icons.sticky::before { content: "\e3e2"; }
span.main_icons.move::before { content: "\e06c"; }
span.main_icons.poll::before { content: "\e15a"; }
span.main_icons.profile_sm::before { content: "\e17e"; }
span.main_icons.im_on::before,
span.main_icons.im_off::before { content: "\e218"; }
span.main_icons.reports::before { content: "\e2ce"; }
span.main_icons.packages::before { content: "\e2f0"; }
span.main_icons.features::before { content: "\e46a"; }
span.main_icons.attachment::before { content: "\e2e2"; }
span.main_icons.post_moderation_moderate::before { content: "\ec34"; }
span.main_icons.warning_mute::before { content: "\e308"; }
span.main_icons.print::before { content: "\e3dc"; }
span.main_icons.website::before { content: "\e2e2"; }

/* Topic row icon: hide the old PNG, draw a Phosphor chat bubble in a soft tile */
#topic_container .board_icon img {
	display: none;
}

#topic_container .board_icon::before {
	content: "\e16e";
	font-family: "Phosphor";
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 13px;
	background: #f1f5fa;
	border: 1px solid var(--au-border);
	color: var(--au-primary);
	font-size: 20px;
	line-height: 1;
}

/* Column sort arrows */
span.main_icons.sort_down,
span.main_icons.sort_up {
	background: none !important;
	width: auto;
	height: auto;
	display: inline-block;
	font-family: "Phosphor" !important;
	font-size: 12px;
	line-height: 1;
	vertical-align: -1px;
	margin-left: 4px;
}

span.main_icons.sort_down::before,
span.main_icons.sort_up::before {
	background: none !important;
	width: auto;
	height: auto;
}

span.main_icons.sort_down::before { content: "\e03e"; }
span.main_icons.sort_up::before { content: "\e08e"; }

/* Collapse/expand carets (categories, info center) */
span.toggle_up,
span.toggle_down,
a.toggle_up,
a.toggle_down {
	background: none !important;
	width: auto !important;
	height: auto !important;
	display: inline-block;
	font-family: "Phosphor" !important;
	font-size: 15px;
	line-height: 1;
	color: inherit;
	cursor: pointer;
}

span.toggle_up::before,
span.toggle_down::before,
a.toggle_up::before,
a.toggle_down::before {
	background: none !important;
	width: auto;
	height: auto;
}

span.toggle_up::before,
a.toggle_up::before { content: "\e13c"; }

span.toggle_down::before,
a.toggle_down::before { content: "\e136"; }

.catbg .toggle_up,
.catbg .toggle_down {
	color: rgba(255, 255, 255, .8);
}

/* Icon color accents */
.dropmenu > li > a .main_icons,
#top_info > li > a .main_icons {
	font-size: 15px;
	opacity: .9;
}

.dropmenu > li > a.active .main_icons {
	color: #fff;
}

.subbg .main_icons {
	color: var(--au-primary);
}

.quickbuttons .main_icons {
	font-size: 13px;
}

/* =============================================================
   ALERTS, MISC
   ============================================================= */
.infobox {
	background: #eefaf3;
	border: 1px solid #bfe8d0;
	border-radius: var(--au-radius-sm);
	color: #1c6b43;
}

.noticebox {
	background: #fff8ea;
	border: 1px solid #f1ddb0;
	border-radius: var(--au-radius-sm);
	color: #8a6116;
}

.errorbox {
	background: #fdf0f2;
	border: 1px solid #f2c4cc;
	border-radius: var(--au-radius-sm);
	color: #a12639;
}

.descbox {
	background: #f5f8fc;
	border: 1px solid var(--au-border);
	border-radius: var(--au-radius-sm);
}

.popup_window {
	border-radius: var(--au-radius);
	box-shadow: var(--au-shadow-lg);
}

.popup_heading {
	font-family: var(--au-font-display);
}

table.table_grid {
	border-radius: 0 0 var(--au-radius) var(--au-radius);
	overflow: hidden;
}

.progress_bar .bar {
	background: var(--au-grad);
}

.mark_read {
	margin-top: 14px;
}

::selection {
	background: rgba(31, 124, 245, .22);
}

::-webkit-scrollbar {
	width: 10px;
	height: 10px;
}

::-webkit-scrollbar-track {
	background: transparent;
}

::-webkit-scrollbar-thumb {
	background: #c2cfdf;
	border-radius: 999px;
}

::-webkit-scrollbar-thumb:hover {
	background: #a0b3cb;
}

/* =============================================================
   FOOTER
   ============================================================= */
#footer {
	background: var(--au-ink);
	background-image:
		radial-gradient(600px 220px at 15% 0%, rgba(31, 124, 245, .18), transparent 60%),
		radial-gradient(520px 200px at 85% 0%, rgba(45, 212, 191, .10), transparent 55%);
	border-top: 1px solid rgba(255, 255, 255, .05);
	margin-top: 48px;
	padding: 30px 0;
}

#footer .inner_wrap {
	max-width: 1200px;
	padding: 0 20px;
}

.au-footer-brand {
	margin-bottom: 10px;
}

.au-footer-title {
	font-family: var(--au-font-display);
	font-size: 17px;
	font-weight: 700;
	background: linear-gradient(90deg, #ffffff 0%, #bcd8ff 70%, #9be7f7 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
}

#footer, #footer a, #footer .copyright, #footer li {
	color: #91a7c2;
	font-size: 12.5px;
}

#footer a:hover {
	color: #fff;
}

/* =============================================================
   RESPONSIVE
   ============================================================= */
@media screen and (max-width: 855px) {
	#boardindex_table .up_contain {
		gap: 12px;
	}

	#boardindex_table .board_stats,
	#boardindex_table .lastpost {
		flex: 1 1 100%;
		text-align: left;
	}

	.au-chips {
		justify-content: flex-start;
	}
}

@media screen and (max-width: 720px) {
	#wrapper {
		padding: 0 12px;
	}

	#header {
		padding: 30px 0 44px;
	}

	.forumtitle {
		font-size: 1.7em;
	}

	#main_menu {
		margin-top: -24px;
	}

	#main_menu .dropmenu {
		width: 100%;
	}

	.dropmenu {
		border-radius: var(--au-radius);
	}

	#search_form select {
		display: none;
	}

	#search_form input[type="search"] {
		width: 130px;
	}

	#search_form input[type="search"]:focus {
		width: 150px;
	}
}


/* =============================================================
   FLAT PREMIUM OVERRIDES - solid colors, no gradients, no glow
   ============================================================= */
#header::before,
#header::after,
#header .au-hero-inner::after {
	display: none;
}

#header {
	background-image: none;
	padding: 34px 0 46px;
}

#top_section {
	background-image: none;
	border-bottom: 1px solid rgba(255, 255, 255, .07);
}

.au-eyebrow {
	display: none;
}

.forumtitle {
	font-size: 2.2em;
}

.forumtitle a {
	background: none;
	-webkit-text-fill-color: #fff;
	color: #fff;
}

.catbg,
.cat_bar .catbg {
	background-image: none;
	background: var(--au-ink-2);
}

#footer {
	background-image: none;
}

.au-footer-title {
	background: none;
	-webkit-text-fill-color: #fff;
	color: #fff;
}

.dropmenu > li > a.active {
	background: var(--au-primary);
	box-shadow: none;
}

#search_form .button {
	background: var(--au-primary);
	box-shadow: none;
}

#search_form .button:hover {
	background: #1663d6;
	filter: none;
	color: #fff;
}

.button.active,
input[type="submit"].active {
	background: var(--au-primary);
}

.button.active:hover {
	background: #1663d6;
	filter: none;
}

.pagelinks .current_page,
.page_index .current_page {
	background: var(--au-primary);
}

.progress_bar .bar {
	background: var(--au-primary);
}

#boardindex_table .board_icon a.au-avatar,
.au-avatar,
.au-avatar:visited {
	background: hsl(var(--au-h, 212), 70%, 50%);
	box-shadow: none;
}

.au-avatar:hover {
	filter: brightness(1.06);
}

.au-avatar-redirect {
	background: #93a3b8;
	box-shadow: none;
}

#display_head::before {
	background: var(--au-primary);
}

::selection {
	background: rgba(31, 124, 245, .18);
}

/* =============================================================
   AURORA CUSTOM DROPDOWN (top bar selects)
   ============================================================= */
.au-select {
	position: relative;
	display: inline-block;
}

.au-select-native {
	display: none !important;
}

.au-select-btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	height: 34px;
	padding: 0 14px 0 16px;
	background: rgba(255, 255, 255, .08);
	border: 1px solid rgba(255, 255, 255, .14);
	border-radius: 999px;
	color: #e6eef7;
	font-family: var(--au-font);
	font-size: 13px;
	cursor: pointer;
	transition: background .15s ease, border-color .15s ease;
	white-space: nowrap;
}

.au-select-btn:hover,
.au-select.open .au-select-btn {
	background: rgba(255, 255, 255, .14);
	border-color: rgba(255, 255, 255, .24);
	color: #fff;
}

.au-select-btn .ph {
	font-size: 12px;
	opacity: .7;
	transition: transform .18s ease;
}

.au-select.open .au-select-btn .ph {
	transform: rotate(180deg);
}

.au-select-list {
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	min-width: 100%;
	margin: 0;
	padding: 6px;
	list-style: none;
	background: #101f38;
	border: 1px solid rgba(255, 255, 255, .10);
	border-radius: 12px;
	box-shadow: 0 4px 10px rgba(4, 10, 20, .35), 0 20px 50px -12px rgba(4, 10, 20, .55);
	z-index: 300;
	opacity: 0;
	visibility: hidden;
	transform: translateY(-6px);
	transition: opacity .16s ease, transform .16s ease, visibility .16s;
}

.au-select.open .au-select-list {
	opacity: 1;
	visibility: visible;
	transform: none;
}

.au-select-list li {
	padding: 8px 14px;
	border-radius: 8px;
	color: #c4d3e8;
	font-size: 13px;
	cursor: pointer;
	white-space: nowrap;
	transition: background .12s ease, color .12s ease;
}

.au-select-list li:hover {
	background: rgba(255, 255, 255, .08);
	color: #fff;
}

.au-select-list li.sel {
	background: var(--au-primary);
	color: #fff;
	font-weight: 600;
}


/* =============================================================
   NAV POLISH - kill Curve leftovers (orange border, text-shadow)
   ============================================================= */
.dropmenu > li > a,
.dropmenu > li > a:hover,
.dropmenu > li > a.active,
.dropmenu > li > a.active:hover,
.dropmenu > li:hover > a,
.dropmenu > li > a:focus {
	border: 0 !important;
	outline: none !important;
	text-shadow: none !important;
	box-shadow: none;
}

#main_menu .dropmenu {
	border-radius: 14px;
	padding: 6px;
	gap: 4px;
	box-shadow: 0 1px 2px rgba(12, 22, 38, .06), 0 12px 32px -18px rgba(12, 22, 38, .25);
}

.dropmenu > li > a,
.dropmenu > li > a:visited {
	border-radius: 10px;
	color: #44546b;
	font-weight: 600;
	font-size: 13.5px;
	padding: 9px 18px;
	transition: background .14s ease, color .14s ease;
}

.dropmenu > li > a .main_icons {
	color: #8296ad;
	transition: color .14s ease;
}

.dropmenu > li > a:hover,
.dropmenu > li:hover > a {
	background: #eef4fb;
	color: var(--au-primary);
}

.dropmenu > li > a:hover .main_icons,
.dropmenu > li:hover > a .main_icons {
	color: var(--au-primary);
}

.dropmenu > li > a.active,
.dropmenu > li > a.active:visited {
	background: var(--au-primary);
	color: #fff;
}

.dropmenu > li > a.active .main_icons {
	color: #fff;
}

.dropmenu > li > a.active:hover {
	background: #1663d6;
	color: #fff;
}


/* =============================================================
   ICON/TEXT ALIGNMENT FIXES
   ============================================================= */
/* Top bar user buttons: center icon and label on one line */
#top_info > li > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
}

#top_info > li > a .main_icons {
	vertical-align: 0;
	line-height: 1;
}

/* Info center block headers (Forum Stats, Users Online, ...) */
.au-ic-block .sub_bar .subbg,
.au-ic-block .sub_bar .subbg a {
	display: flex;
	align-items: center;
	gap: 7px;
}

.au-ic-block .sub_bar .subbg .main_icons {
	font-size: 15px;
	vertical-align: 0;
	line-height: 1;
}


/* Topic rows: center the icon tile with the text block */
#topic_container .windowbg {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px 16px;
}

#topic_container .windowbg .board_icon {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	gap: 6px;
	float: none;
	width: auto;
	padding: 0;
}

#topic_container .windowbg .info {
	flex: 1 1 300px;
	float: none;
	width: auto;
	padding: 0;
}

#topic_container .windowbg .board_stats {
	flex: 0 0 auto;
	float: none;
	width: auto;
	padding: 0;
}

#topic_container .windowbg .lastpost {
	flex: 0 0 250px;
	float: none;
	width: auto;
	padding: 0;
}

#topic_container .windowbg .moderation {
	flex: 0 0 auto;
	float: none;
	width: auto;
	padding: 0;
}

@media screen and (max-width: 855px) {
	#topic_container .windowbg .board_stats,
	#topic_container .windowbg .lastpost {
		flex: 1 1 100%;
	}
}


/* =============================================================
   PAGESECTION - Go Up/Down ghost buttons + page pills
   ============================================================= */
.pagesection {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 12px 2px;
}

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

.pagesection a.button {
	background: transparent;
	border: 1px solid transparent;
	border-radius: 999px;
	box-shadow: none;
	color: var(--au-muted);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .07em;
	text-transform: uppercase;
	padding: 5px 12px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.pagesection a.button::before {
	font-family: "Phosphor";
	font-size: 13px;
	line-height: 1;
}

.pagesection a.button::before {
	content: none;
}

.pagesection a.button[href^="#"]::before {
	content: "\e08e";
}

.pagesection a.button[href$="#bot"]::before {
	content: "\e03e";
}

.pagesection a.button:hover {
	background: #fff;
	border-color: var(--au-border);
	color: var(--au-primary);
}

.pagelinks {
	display: flex;
	align-items: center;
	gap: 4px;
	padding: 0;
}

.pagelinks .pages {
	color: var(--au-muted);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .07em;
	text-transform: uppercase;
	margin-right: 4px;
}

.pagelinks .current_page,
.page_index .current_page {
	border-radius: 999px;
	font-size: 12px;
	padding: 3px 11px;
}

.pagelinks a.nav_page,
.page_index a.nav_page {
	border-radius: 999px;
	font-size: 12px;
	padding: 3px 11px;
}


/* Light variant of the custom dropdown (content area, e.g. Jump to) */
.au-select-light .au-select-btn {
	background: #fafcfe;
	border: 1px solid var(--au-border);
	color: var(--au-ink);
	min-width: 190px;
	justify-content: space-between;
	border-radius: 999px;
}

.au-select-light .au-select-btn:hover,
.au-select-light.au-select.open .au-select-btn {
	background: #fff;
	border-color: var(--au-primary-2);
	color: var(--au-ink);
}

.au-select-light .au-select-list {
	background: #fff;
	border: 1px solid var(--au-border);
	box-shadow: 0 4px 10px rgba(12, 22, 38, .08), 0 22px 50px -16px rgba(12, 22, 38, .25);
	max-height: 320px;
	overflow-y: auto;
}

.au-select-light .au-select-list li {
	color: var(--au-body);
}

.au-select-light .au-select-list li:hover {
	background: #e9f1fb;
	color: var(--au-primary);
}

.au-select-light .au-select-list li.sel {
	background: var(--au-primary);
	color: #fff;
}

.au-select-list li.au-heading {
	color: var(--au-muted);
	font-size: 10.5px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	cursor: default;
	padding: 8px 14px 4px;
}

.au-select-list li.au-heading:hover {
	background: transparent;
	color: var(--au-muted);
}

.au-select-list li.au-divider {
	height: 1px;
	padding: 0;
	margin: 4px 8px;
	background: var(--au-border);
	cursor: default;
}

.au-select-light + .button,
#topic_icons .au-select {
	vertical-align: middle;
}


/* =============================================================
   TOP BAR ALIGNMENT (logged-in user menu + search on one line)
   ============================================================= */
#top_section .inner_wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 8px 18px;
}

#top_info {
	display: flex;
	align-items: center;
	gap: 6px;
	float: none !important;
	margin-right: auto;
}

#top_info > li {
	display: flex;
	align-items: center;
}

#top_info > li > a {
	height: 34px;
	padding: 0 15px;
	line-height: 1;
}

#top_info > li > a img.avatar {
	width: 20px;
	height: 20px;
	border-radius: 999px;
	object-fit: cover;
}

#top_section .welcome,
#top_section ul.floatleft {
	float: none !important;
	display: flex;
	align-items: center;
	gap: 6px;
	margin-right: auto;
}

#search_form,
#languages_form {
	float: none !important;
}

/* =============================================================
   NEW BADGE - subtle premium chip instead of the loud gold pill
   ============================================================= */
.new_posts,
#topic_container .new_posts {
	background: rgba(31, 124, 245, .10);
	color: var(--au-primary);
	border: 1px solid rgba(31, 124, 245, .22);
	border-radius: 6px;
	font-size: 9px;
	font-weight: 800;
	letter-spacing: .1em;
	line-height: 1;
	padding: 3px 6px;
	text-transform: uppercase;
	vertical-align: 2px;
	text-decoration: none;
}

a.new_posts:hover {
	background: rgba(31, 124, 245, .18);
	color: var(--au-primary);
}


/* Button-strip sub-menus (e.g. Notify options) must stay hidden until JS opens them */
.top_menu.dropmenu {
	display: none;
	position: absolute;
}

/* =============================================================
   TOPIC DISPLAY POLISH
   ============================================================= */
#forumposts .windowbg {
	padding: 0;
}

.post_wrapper {
	display: flex;
	gap: 24px;
	padding: 22px 24px;
	float: none;
	width: auto;
}

.post_wrapper .poster {
	flex: 0 0 190px;
	float: none;
	width: auto;
	padding: 0;
}

.poster h4 {
	margin: 0 0 2px;
}

.poster h4,
.poster h4 a {
	font-size: 15px;
	font-weight: 700;
	color: var(--au-ink);
}

.poster ul {
	color: var(--au-muted);
	font-size: 12px;
	line-height: 1.7;
	padding: 0;
	margin: 0;
}

.post_wrapper .postarea {
	flex: 1 1 auto;
	min-width: 0;
	border-left: 1px solid #edf1f7;
	padding-left: 24px;
	float: none;
	width: auto;
}

.keyinfo {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	flex-wrap: wrap;
	border-bottom: 1px solid #edf1f7;
	padding-bottom: 10px;
	margin-bottom: 12px;
}

.keyinfo .smalltext,
.keyinfo a.smalltext {
	color: var(--au-muted);
	font-size: 12px;
	font-weight: 500;
}

.post .inner {
	font-size: 14px;
	line-height: 1.75;
	color: var(--au-body);
}

/* Quickbuttons (QUOTE / MORE...) */
.quickbuttons {
	display: flex;
	align-items: center;
	gap: 6px;
	margin: 0;
	padding: 0;
	float: none;
}

.quickbuttons > li {
	margin: 0;
}

.quickbuttons > li > a {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	background: #f4f7fb;
	border: 1px solid var(--au-border);
	border-radius: 999px;
	color: var(--au-body);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase;
	padding: 5px 13px;
	text-shadow: none;
}

.quickbuttons > li > a:hover {
	background: #e9f1fb;
	border-color: #cfe0f5;
	color: var(--au-primary);
}

.quickbuttons .main_icons {
	color: #8296ad;
	font-size: 13px;
}

.quickbuttons > li > a:hover .main_icons {
	color: var(--au-primary);
}

/* The "More..." dropdown */
.quickbuttons li.post_options {
	position: relative;
}

.quickbuttons li.post_options > ul {
	position: absolute;
	top: calc(100% + 8px);
	right: 0;
	left: auto;
	min-width: 190px;
	margin: 0;
	padding: 6px;
	background: #fff;
	border: 1px solid var(--au-border);
	border-radius: 12px;
	box-shadow: 0 4px 10px rgba(12, 22, 38, .08), 0 22px 50px -16px rgba(12, 22, 38, .28);
	z-index: 200;
}

.quickbuttons li.post_options > ul li {
	display: block;
	margin: 0;
}

.quickbuttons li.post_options > ul li a {
	display: flex;
	align-items: center;
	gap: 8px;
	background: transparent;
	border: 0;
	border-radius: 8px;
	color: var(--au-body);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0;
	text-transform: none;
	padding: 8px 12px;
}

.quickbuttons li.post_options > ul li a:hover {
	background: #e9f1fb;
	color: var(--au-primary);
}

/* Bottom action strip (Reply, Mark Unread, Print...) */
.pagesection .buttonlist .button {
	background: var(--au-surface);
	border: 1px solid var(--au-border);
	border-radius: 999px;
	color: var(--au-ink);
	font-size: 12.5px;
	font-weight: 600;
	letter-spacing: .01em;
	text-transform: none;
	padding: 7px 16px;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.pagesection .buttonlist .button::before {
	content: none;
}

.pagesection .buttonlist .button:hover {
	background: #e9f1fb;
	border-color: #cfe0f5;
	color: var(--au-primary);
}

.pagesection .buttonlist .button_strip_reply,
.pagesection .buttonlist .button_strip_post {
	background: var(--au-primary);
	border-color: transparent;
	color: #fff;
}

.pagesection .buttonlist .button_strip_reply:hover,
.pagesection .buttonlist .button_strip_post:hover {
	background: #1663d6;
	color: #fff;
}

/* Signature */
.signature {
	color: var(--au-muted);
	font-size: 12.5px;
	margin-top: 14px;
	padding-top: 10px;
}

/* =============================================================
   Legend/jump-to card: no inner scrollbar; let the dropdown pop out
   ============================================================= */
#topic_icons,
#topic_icons .information {
	overflow: visible !important;
}


/* =============================================================
   TOPIC DISPLAY FIXES v2 - clean header line, dropdown unclipped
   ============================================================= */
/* Do not clip the More... dropdown */
#forumposts {
	overflow: visible;
}

#forumposts .windowbg:first-of-type {
	border-radius: var(--au-radius) var(--au-radius) 0 0;
}

#forumposts .windowbg:last-of-type {
	border-radius: 0 0 var(--au-radius) var(--au-radius);
}

/* Single clean info line: date left, edit-info right */
.keyinfo {
	display: block;
	border-bottom: 0;
	padding-bottom: 0;
	margin-bottom: 10px;
}

.keyinfo .postinfo {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	border-bottom: 1px solid #edf1f7;
	padding-bottom: 9px;
}

.keyinfo .messageicon,
.keyinfo .spacer {
	display: none;
}

/* Quote / More... sit bottom-right of the post */
.under_message .quickbuttons,
.postarea .quickbuttons {
	justify-content: flex-end;
	margin: 14px 0 0;
}


/* Poster column: hard cap the width, kill the date underline */
.post_wrapper .poster {
	flex: 0 0 170px !important;
	min-width: 0;
	max-width: 170px;
	overflow-wrap: break-word;
}

.post_wrapper .poster * {
	max-width: 100%;
}

.keyinfo .postinfo {
	border-bottom: 0;
	padding-bottom: 0;
}

.keyinfo {
	margin-bottom: 12px;
}


/* Curve draws a gray border-top on the message body - remove it */
.post .inner {
	border-top: 0 !important;
	padding-top: 0;
	margin-top: 0;
}


/* Slimmer poster column, no vertical divider */
.post_wrapper .postarea {
	border-left: 0 !important;
	padding-left: 0 !important;
}

.post_wrapper .poster {
	flex: 0 0 150px !important;
	max-width: 150px;
}


/* =============================================================
   POSTS AS STANDALONE CARDS - no outer container box at all
   ============================================================= */
#forumposts {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	overflow: visible;
}

#forumposts .windowbg {
	background: var(--au-surface);
	border: 1px solid var(--au-border) !important;
	border-radius: var(--au-radius) !important;
	box-shadow: var(--au-shadow);
	margin: 0 0 16px;
}

/* Poster column: only as wide as its content needs */
.post_wrapper .poster {
	flex: 0 0 auto !important;
	width: auto !important;
	min-width: 0;
	max-width: 170px;
}


/* =============================================================
   META ROW + BREADCRUMB REDESIGN
   ============================================================= */
/* Breadcrumbs come first, right under the nav */
#inner_section .navigate_section {
	order: 2;
	padding: 16px 4px 0;
}

#inner_wrap {
	order: 3;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 12px 4px 0;
	opacity: 1;
}

/* Drop the clock - nobody needs it */
#inner_wrap .user time {
	display: none;
}

#inner_wrap .user {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 0;
}

.unread_links {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
}

.unread_links li {
	display: flex;
}

.unread_links a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: var(--au-surface);
	border: 1px solid var(--au-border);
	border-radius: 999px;
	color: var(--au-body);
	padding: 5px 14px;
	font-size: 12px;
	font-weight: 600;
	transition: color .14s ease, border-color .14s ease;
}

.unread_links a::before {
	content: "\e0ce";
	font-family: "Phosphor";
	font-size: 13px;
	color: #8296ad;
}

.unread_links a:hover {
	color: var(--au-primary);
	border-color: #cfe0f5;
}

.unread_links a:hover::before {
	color: var(--au-primary);
}

/* News as a slim right-side announcement chip */
#inner_wrap .news {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-left: auto;
	min-width: 0;
	color: var(--au-muted);
	font-size: 12.5px;
	white-space: nowrap;
	overflow: hidden;
}

#inner_wrap .news h2 {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: var(--au-muted);
	font-size: 10.5px;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	margin: 0;
}

#inner_wrap .news h2::before {
	content: "\e0ce";
	font-family: "Phosphor";
	font-size: 13px;
	color: var(--au-primary);
	letter-spacing: 0;
}

#inner_wrap .news p {
	display: inline;
	overflow: hidden;
	text-overflow: ellipsis;
	font-size: 12.5px;
	margin: 0;
}

/* Breadcrumb trail: quiet slashes instead of arrows */
.navigate_section ul {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 2px;
	font-size: 12.5px;
}

.navigate_section ul li {
	display: flex;
	align-items: center;
}

.navigate_section ul li .dividers {
	display: none;
}

.navigate_section ul li + li::before {
	content: "/";
	color: #c3cddd;
	margin: 0 9px;
	font-size: 11px;
}

.navigate_section ul li a,
.navigate_section ul li span {
	color: var(--au-muted);
	font-weight: 500;
}

.navigate_section ul li a:hover {
	color: var(--au-primary);
}

.navigate_section ul li.last span,
.navigate_section ul li.last a {
	color: var(--au-ink);
	font-weight: 700;
}


/* "Quote Selected Text" must look identical to its sibling buttons */
.quickbuttons li[id^="quoteSelected"] {
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
}

.quickbuttons li[id^="quoteSelected"] > a,
.quickbuttons li[id^="quoteSelected"] > a:visited {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	background: #f4f7fb !important;
	border: 1px solid var(--au-border) !important;
	border-radius: 999px !important;
	box-shadow: none !important;
	color: var(--au-body) !important;
	font-size: 11px !important;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase;
	padding: 5px 13px !important;
}

.quickbuttons li[id^="quoteSelected"] > a:hover {
	background: #e9f1fb !important;
	border-color: #cfe0f5 !important;
	color: var(--au-primary) !important;
}


/* =============================================================
   USER MENU POPUPS (profile / messages / alerts)
   ============================================================= */
#top_info > li {
	position: relative;
}

#top_info .top_menu {
	position: absolute;
	top: calc(100% + 10px);
	left: 0;
	right: auto;
	min-width: 320px;
	max-width: 400px;
	background: #fff;
	border: 1px solid var(--au-border);
	border-radius: 14px;
	box-shadow: 0 4px 10px rgba(12, 22, 38, .10), 0 24px 60px -18px rgba(12, 22, 38, .35);
	padding: 12px;
	z-index: 500;
	color: var(--au-body);
}

/* Right-edge items should not overflow the viewport */
#top_info > li:last-child .top_menu,
#top_info > li:nth-last-child(2) .top_menu {
	left: 0;
}

#top_info .top_menu a {
	color: var(--au-primary);
}

#top_info .top_menu .button {
	background: #f4f7fb;
	border: 1px solid var(--au-border);
	border-radius: 999px;
	color: var(--au-body);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase;
	padding: 5px 14px;
	box-shadow: none;
}

#top_info .top_menu .button:hover,
#top_info .top_menu .button.active {
	background: var(--au-primary);
	border-color: transparent;
	color: #fff;
}

#top_info .top_menu .no_unread,
#top_info .top_menu .no_notify {
	color: var(--au-muted);
	font-size: 12.5px;
	text-align: center;
	padding: 10px 0 4px;
	display: block;
}


/* =============================================================
   SEARCH RESULTS PAGE
   ============================================================= */
#search_results > .cat_bar {
	margin-top: 0;
}

#search_results > .cat_bar .catbg {
	border-radius: var(--au-radius) var(--au-radius) 0 0;
}

/* The "revise search" row joins the dark header as one card */
#search_results > .roundframe {
	border-radius: 0 0 var(--au-radius) var(--au-radius);
	border-top: 0;
	margin: 0 0 20px;
	padding: 16px 22px;
}

#search_results > .roundframe form {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

#search_results > .roundframe form strong {
	color: var(--au-ink);
	font-size: 13px;
}

#search_results > .roundframe input[type="text"] {
	height: 34px;
	min-width: 260px;
}

/* Results head card: button gets breathing room */
#display_head .button {
	margin-top: 12px;
}

#display_head .floatright,
#display_head select {
	margin-top: 12px;
}

/* "No matches" info card */
.roundframe.noup {
	border-radius: var(--au-radius);
	margin-top: 16px;
	padding: 26px 22px;
	text-align: center;
	color: var(--au-muted);
	font-size: 13.5px;
}

/* Bottom jump-to row */
#search_jump_to {
	display: flex;
	align-items: center;
	gap: 8px;
}


/* =============================================================
   PROFILE POPUP + remaining main_icons mapped to Phosphor
   ============================================================= */
span.main_icons:is(.administration, .posts, .drafts, .permissions, .logs, .warning, .maintain, .boards, .frenemy, .personal_message, .ban, .paid, .members_delete, .theme, .account, .support) {
	background: none !important;
	width: auto;
	height: auto;
	min-width: 16px;
	display: inline-block;
	font-family: "Phosphor" !important;
	font-style: normal;
	font-weight: normal;
	font-size: 16px;
	line-height: 1;
	vertical-align: -0.125em;
	color: inherit;
	speak: never;
}

span.main_icons:is(.administration, .posts, .drafts, .permissions, .logs, .warning, .maintain, .boards, .frenemy, .personal_message, .ban, .paid, .members_delete, .theme, .account, .support)::before {
	background: none !important;
	width: auto;
	height: auto;
}

span.main_icons.administration::before { content: "\e4cc"; }
span.main_icons.account::before { content: "\e4cc"; }
span.main_icons.posts::before { content: "\e16e"; }
span.main_icons.drafts::before { content: "\e34c"; }
span.main_icons.permissions::before { content: "\e2d6"; }
span.main_icons.logs::before { content: "\e2f0"; }
span.main_icons.warning::before { content: "\e4e0"; }
span.main_icons.maintain::before { content: "\e272"; }
span.main_icons.boards::before { content: "\e464"; }
span.main_icons.frenemy::before { content: "\e3de"; }
span.main_icons.personal_message::before { content: "\e218"; }
span.main_icons.ban::before { content: "\e3de"; }
span.main_icons.paid::before { content: "\e1d2"; }
span.main_icons.members_delete::before { content: "\e4a6"; }
span.main_icons.theme::before { content: "\e6f0"; }
span.main_icons.support::before { content: "\e3e8"; }

/* Profile popup panel layout */
#profile_menu {
	padding: 14px;
}

#profile_menu .profile_user_avatar img,
#profile_menu img.avatar {
	border-radius: 12px;
	max-width: 48px;
	max-height: 48px;
}

#profile_menu ul {
	margin: 0;
	padding: 0;
}

#profile_menu .profile_user_links ol {
	margin: 12px 0 0;
	padding: 0;
	list-style: none;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2px 14px;
	clear: both;
	columns: auto !important;
}

#profile_menu .profile_user_links li {
	display: flex;
	align-items: center;
	gap: 9px;
	border-radius: 8px;
	padding: 7px 10px;
	margin: 0;
}

#profile_menu .profile_user_links li:hover {
	background: #e9f1fb;
}

#profile_menu .profile_user_links li .main_icons {
	color: #8296ad;
	font-size: 15px;
	min-width: 18px;
	text-align: center;
	flex: 0 0 auto;
}

#profile_menu .profile_user_links li:hover .main_icons {
	color: var(--au-primary);
}

#profile_menu .profile_user_links li a {
	color: var(--au-body) !important;
	font-size: 13px;
	font-weight: 500;
	flex: 1 1 auto;
	white-space: nowrap;
}

#profile_menu .profile_user_links li:hover a {
	color: var(--au-primary) !important;
}

#profile_menu .profile_username a {
	color: var(--au-ink) !important;
	font-weight: 700;
	font-size: 14px;
}

#profile_menu .profile_group {
	color: var(--au-muted);
	font-size: 12px;
	display: block;
}

#profile_menu .profile_user_info {
	padding: 4px 0 0 12px;
}


/* Profile popup: tidy header (avatar + name) and breathing room */
#profile_menu {
	padding: 16px;
	min-width: 340px;
}

/* Inline display:block from SMF JS wins over grid - use float+overflow instead */
#profile_menu .profile_user_avatar {
	float: left !important;
	margin: 0 12px 0 0;
}

#profile_menu .profile_user_info {
	float: none !important;
	overflow: hidden;
}

#profile_menu .profile_user_avatar img,
#profile_menu img.avatar {
	width: 44px;
	height: 44px;
	max-width: 44px;
	max-height: 44px;
	object-fit: cover;
	border-radius: 12px;
	background: #edf2f8;
	display: block;
}

#profile_menu .profile_user_info {
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 1px;
}

#profile_menu .profile_username {
	line-height: 1.2;
}

#profile_menu .profile_group {
	font-size: 11.5px;
}

#profile_menu .profile_user_links {
	grid-column: 1 / -1;
	border-top: 1px solid #edf1f7;
	margin-top: 12px;
	padding-top: 8px;
}

#profile_menu .profile_user_links ol {
	margin: 0;
}


/* Profile popup: final alignment fixes (real markup) */
#profile_menu .profile_user_links {
	clear: both;
}

#profile_menu .profile_user_links li {
	text-indent: 0 !important;
	padding-left: 10px !important;
	line-height: 1.5;
}

#profile_menu .profile_user_info {
	margin: 0 !important;
	min-height: 44px;
	justify-content: center;
}

#profile_menu .profile_user_avatar {
	margin: 0 12px 0 0 !important;
}

#profile_menu .profile_username {
	font-size: 14px;
}


/* =============================================================
   GENERIC CARD PAIRING - dark header + following block = one card
   (covers PM, profile and admin pages without page-by-page CSS)
   ============================================================= */
.catbg,
.cat_bar .catbg {
	border-radius: var(--au-radius) var(--au-radius) 0 0;
}

/* Inside real containers the corners are already clipped */
.main_container .catbg,
#search_results .catbg {
	border-radius: 0;
}

#search_results > .cat_bar .catbg {
	border-radius: var(--au-radius) var(--au-radius) 0 0;
}

.cat_bar + .windowbg,
.cat_bar + .windowbg2,
.cat_bar + .information,
.cat_bar + .roundframe,
.cat_bar + .table_grid,
.cat_bar + form,
.cat_bar + .padding,
.cat_bar + dl {
	background: var(--au-surface);
	border: 1px solid var(--au-border);
	border-top: 0;
	border-radius: 0 0 var(--au-radius) var(--au-radius);
	box-shadow: var(--au-shadow);
	margin: 0 0 20px;
	padding: 16px 22px;
}

.cat_bar + .information {
	color: var(--au-muted);
	font-size: 13px;
}

/* Tables glued to a dark header */
table.table_grid {
	width: 100%;
	background: var(--au-surface);
	border-collapse: collapse;
}

table.table_grid th {
	background: #f5f8fc;
	color: var(--au-muted);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .07em;
	text-transform: uppercase;
	text-align: left;
	padding: 10px 16px;
	border-bottom: 1px solid var(--au-border);
}

table.table_grid td {
	padding: 12px 16px;
	border-bottom: 1px solid #eef1f7;
	color: var(--au-body);
}

/* Stray action rows (Save / Remove selected...) */
.padding.floatright,
div > .button.floatright {
	margin: 10px 0;
}

/* =============================================================
   POST / NEW MESSAGE FORM (To, Subject rows)
   ============================================================= */
#post_header {
	display: grid;
	grid-template-columns: 140px 1fr;
	gap: 12px 16px;
	align-items: center;
	margin: 0 0 16px;
	padding: 0;
}

#post_header dt {
	margin: 0;
	text-align: right;
	font-weight: 600;
	color: var(--au-ink);
	font-size: 13px;
}

#post_header dd {
	margin: 0;
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}

#post_header input[type="text"] {
	flex: 1 1 320px;
	max-width: 560px;
	height: 36px;
}

#post_header .smalltext {
	color: var(--au-muted);
}

/* Recipient chips (name + delete icon under To:) */
#to_item_list_container span,
.item_list span {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #e9f1fb;
	border: 1px solid #cfe0f5;
	border-radius: 999px;
	color: var(--au-primary);
	font-size: 12.5px;
	font-weight: 600;
	padding: 4px 12px;
}

/* =============================================================
   VERIFICATION (captcha) BLOCK
   ============================================================= */
.verification_control {
	text-align: center;
	background: #f5f8fc;
	border: 1px solid var(--au-border);
	border-radius: var(--au-radius-sm);
	padding: 16px;
	margin: 16px auto;
	max-width: 460px;
}

.verification_control img {
	border-radius: 8px;
	margin-bottom: 8px;
}

.verification_control input[type="text"] {
	height: 36px;
	text-align: center;
}


/* Header logo sizing */
.forumtitle img {
	height: 48px;
	width: auto;
	display: block;
}


/* Tables after a dark header: no padding (it breaks table layout), round bottom cells */
.cat_bar + .table_grid {
	padding: 0 !important;
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 0 0 var(--au-radius) var(--au-radius);
}

.cat_bar + .table_grid tr:last-child td {
	border-bottom: 0;
}

.cat_bar + .table_grid tr:last-child td:first-child {
	border-bottom-left-radius: var(--au-radius);
}

.cat_bar + .table_grid tr:last-child td:last-child {
	border-bottom-right-radius: var(--au-radius);
}

/* Remaining PM icons -> Phosphor */
span.main_icons:is(.switch, .replied, .www, .mail, .select_here) {
	background: none !important;
	width: auto;
	height: auto;
	min-width: 16px;
	display: inline-block;
	font-family: "Phosphor" !important;
	font-style: normal;
	font-weight: normal;
	font-size: 15px;
	line-height: 1;
	vertical-align: -0.125em;
	color: inherit;
	speak: never;
}

span.main_icons:is(.switch, .replied, .www, .mail, .select_here)::before {
	background: none !important;
	width: auto;
	height: auto;
}

span.main_icons.switch::before { content: "\e464"; }
span.main_icons.replied::before { content: "\e024"; }
span.main_icons.www::before { content: "\e2e2"; }
span.main_icons.mail::before { content: "\e218"; }
span.main_icons.select_here::before { content: "\e2f0"; }


/* FINAL: strip every Curve leftover from the cat_bar container itself
   (its old 6px blue corners were peeking out behind our dark headers) */
.cat_bar {
	background: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
}

/* Profile section header icon */
span.main_icons.profile_hd {
	background: none !important;
	width: auto;
	height: auto;
	display: inline-block;
	font-family: "Phosphor" !important;
	font-style: normal;
	font-weight: normal;
	font-size: 16px;
	line-height: 1;
	vertical-align: -0.125em;
	color: inherit;
	speak: never;
}

span.main_icons.profile_hd::before {
	content: "\e4c4";
	background: none !important;
	width: auto;
	height: auto;
}

.catbg .main_icons {
	color: rgba(255, 255, 255, .85);
	margin-right: 6px;
}


/* =============================================================
   HERO STATS - live forum counters on the right side
   ============================================================= */
#header .au-hero-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.au-hero-stats {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
}

.au-stat {
	text-align: center;
	padding: 0 30px;
}

.au-stat:last-child {
	padding-right: 0;
}

.au-stat + .au-stat {
	border-left: 1px solid rgba(255, 255, 255, .09);
}

.au-stat b {
	display: block;
	color: #fff;
	font-family: var(--au-font-display);
	font-size: 24px;
	font-weight: 800;
	line-height: 1.15;
}

.au-stat span {
	display: block;
	margin-top: 3px;
	color: #7f92b5;
	font-size: 10.5px;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
}

@media screen and (max-width: 980px) {
	.au-hero-stats {
		display: none;
	}
}


/* =============================================================
   POSTER PANEL POLISH
   ============================================================= */
/* Date + message number: no more orange */
.keyinfo a,
.keyinfo .postinfo a.smalltext {
	color: var(--au-muted) !important;
	font-weight: 500;
}

.keyinfo a strong {
	color: var(--au-body);
	font-weight: 600;
}

.poster ul.user_info {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

/* Avatar right under the name, in a soft tile */
.poster li.avatar {
	order: -1;
	margin: 6px 0 4px;
}

.poster img.avatar {
	width: 76px;
	height: 76px;
	object-fit: cover;
	background: #eef2f8;
	border: 1px solid var(--au-border);
	border-radius: 14px;
	box-shadow: none;
}

/* Group stars (rows of little images) -> hidden; the badge tells the story */
.poster li.icons {
	display: none;
}

.poster .membergroup {
	display: inline-flex;
	width: max-content;
	background: #e9f1fb;
	border: 1px solid #cfe0f5;
	border-radius: 999px;
	color: var(--au-primary);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .03em;
	padding: 2px 10px;
}

.poster .postgroup {
	color: var(--au-muted);
	font-size: 11.5px;
}

.poster .postcount {
	color: var(--au-muted);
	font-size: 12px;
}

.poster .poster_online,
.poster li a {
	font-size: 12px;
}

/* Contact icons row spacing; IM icon distinct from mail */
.poster .user_info .main_icons {
	color: #8296ad;
	margin-right: 4px;
}

span.main_icons.im_on::before,
span.main_icons.im_off::before {
	content: "\e17e";
}


/* Curve paints <strong>Today</strong> orange - normalize everywhere in content */
.keyinfo strong,
.lastpost strong,
.smalltext strong {
	color: inherit !important;
	font-weight: 600;
}


/* Post number (#1, #2...) as a quiet counter */
.keyinfo .page_number {
	color: var(--au-muted) !important;
	font-size: 12px;
	font-weight: 600;
}


/* =============================================================
   POST LAYOUT v3 - full-width message + premium poster card
   ============================================================= */
/* 1-2: Curve pushes .postarea with a big left margin - kill it, let it fill */
.post_wrapper .postarea {
	margin: 0 !important;
	flex: 1 1 0% !important;
	min-width: 0;
	width: auto !important;
	border-left: 0;
	padding-left: 0;
	float: none !important;
}

.post_wrapper {
	gap: 26px;
}

.post_wrapper .moderatorbar {
	margin: 0 !important;
	flex: 0 0 auto;
	width: auto !important;
}

/* 3: poster as a centered premium card */
.post_wrapper .poster {
	flex: 0 0 190px !important;
	width: 190px !important;
	max-width: 190px;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	background: #f7fafd;
	border: 1px solid #e6edf5;
	border-radius: 14px;
	padding: 20px 14px !important;
	align-self: flex-start;
	float: none !important;
}

.poster ul.user_info {
	display: contents;
}

.poster .user_info > li {
	order: 6;
	margin: 2px 0 0;
}

.poster h4 {
	order: 2;
	margin: 10px 0 0;
	font-size: 15px;
}

.poster li.avatar {
	order: 1;
	margin: 0;
}

.poster img.avatar {
	width: 84px;
	height: 84px;
	object-fit: cover;
	border: 0;
	border-radius: 999px;
	background: #e8eef6;
	box-shadow: 0 0 0 3px #fff, 0 0 0 4px var(--au-border);
}

.poster .membergroup {
	order: 3;
	margin: 8px 0 0;
}

.poster .postgroup {
	order: 4;
	margin-top: 10px;
}

.poster .postcount {
	order: 5;
	margin-top: 1px;
}

.poster .user_info a {
	color: var(--au-muted);
	font-size: 11.5px;
}

.poster .user_info a:hover {
	color: var(--au-primary);
}

.poster .user_info .main_icons {
	font-size: 15px;
	margin: 0 3px;
}

/* 4: Quick Edit must match its siblings exactly */
.quickbuttons > li > a,
.quickbuttons li.quick_edit > a {
	box-shadow: none !important;
	outline: none !important;
}

.quickbuttons li.quick_edit > a {
	background: #f4f7fb !important;
	border: 1px solid var(--au-border) !important;
	border-radius: 999px !important;
	color: var(--au-body) !important;
}

span.main_icons.modify_inline {
	background: none !important;
	width: auto;
	height: auto;
	display: inline-block;
	font-family: "Phosphor" !important;
	font-style: normal;
	font-weight: normal;
	font-size: 13px;
	line-height: 1;
	vertical-align: -0.125em;
	speak: never;
}

span.main_icons.modify_inline::before {
	content: "\e3b4";
	background: none !important;
	width: auto;
	height: auto;
}

/* 5: quiet pagination - no loud blue, no brackets */
.pagelinks .current_page,
.page_index .current_page {
	background: #e9f1fb !important;
	border: 1px solid #cfe0f5;
	color: var(--au-primary) !important;
	font-weight: 700;
	font-size: 12px;
	border-radius: 999px;
	padding: 3px 11px;
}

.current_page::before,
.current_page::after,
.pagelinks .current_page::before,
.pagelinks .current_page::after {
	content: none !important;
}

.pagelinks a.nav_page,
.page_index a.nav_page {
	background: transparent;
	border: 1px solid transparent;
	color: var(--au-muted);
	border-radius: 999px;
	padding: 3px 11px;
	font-size: 12px;
	font-weight: 600;
}

.pagelinks a.nav_page:hover,
.page_index a.nav_page:hover {
	background: #fff;
	border-color: var(--au-border);
	color: var(--au-primary);
}


/* Curve injects a " - " dot after the first unread link - remove it */
.unread_links li::after,
.unread_links li::before {
	content: none !important;
}


/* Designer credit in the footer */
#footer .au-designed {
	font-size: 12px;
	margin-top: 4px;
}

#footer .au-designed a {
	color: #b9c6dd;
	font-weight: 600;
}

#footer .au-designed a:hover {
	color: #fff;
}


/* Nav pill: dark/light boundary crosses its exact vertical middle */
#main_menu {
	margin-top: -42px;
}

@media screen and (max-width: 720px) {
	#main_menu {
		margin-top: -36px;
	}
}


/* Quote/More pinned to the bottom-right corner of the post card */
.post_wrapper .postarea {
	display: flex;
	flex-direction: column;
}

.postarea .post {
	flex: 1 1 auto;
}

.postarea .under_message {
	margin-top: auto;
	padding-top: 14px;
}

.under_message .quickbuttons,
.postarea .quickbuttons {
	margin: 0;
}

/* Empty moderation column steals space on the right - hide it */
.post_wrapper .moderatorbar:not(:has(input, a, img, label)) {
	display: none;
}


/* Use a margin instead of flex gap so hidden columns cannot reserve space */
.post_wrapper {
	gap: 0 !important;
}

.post_wrapper .poster {
	margin-right: 26px !important;
}


/* Topbar search submit: quiet ghost pill instead of a loud blue block */
#search_form .button {
	background: rgba(255, 255, 255, .08) !important;
	border: 1px solid rgba(255, 255, 255, .16) !important;
	color: #e6eef7 !important;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: .01em;
	text-transform: none;
	box-shadow: none !important;
	transition: background .15s ease, border-color .15s ease, color .15s ease;
}

#search_form .button:hover {
	background: rgba(31, 124, 245, .22) !important;
	border-color: rgba(106, 168, 255, .55) !important;
	color: #fff !important;
	filter: none;
}


/* Opt out of Chrome forced dark mode - Southern is a designed light theme */
:root {
	color-scheme: only light;
}
