/* ==========================================================================
   Ribbon & Rein — phpBB 3.3.17 child style
   Parent: prosilver
   ========================================================================== */

:root {
	--rr-blue: #536B7A;
	--rr-blue-dark: #435865;
	--rr-burgundy: #7A3948;
	--rr-burgundy-dark: #62303A;
  --rr-burgundy-lt: color-mix(in oklab, var(--rr-burgundy), white 30%);
	--rr-soft-white: #FAF8F3;
	--rr-soft-white-2: #F3EFE6;
	--rr-champagne: #D6BF91;
  --rr-champagne-lt: color-mix(in oklab, var(--rr-champagne), white 60%);
	--rr-slate: #343A40;
	--rr-muted: #73787C;
	--rr-white: #FFFFFF;
	--rr-line: #E3DDD2;
	--rr-shadow: 0 10px 28px rgba(83, 107, 122, 0.08);
	--rr-radius: 8px;
}

/* ---------- Page ---------- */

html {
	background: var(--rr-soft-white);
}

body {
	background: var(--rr-soft-white);
	color: var(--rr-slate);
font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: 13px;
}

.rr-wrap,
.wrap {
	max-width: 1220px;
	margin: 0 auto;
	padding: 0 24px 30px;
	background: transparent;
	border: 0;
	border-radius: 0;
}

a {
	color: var(--rr-burgundy);
}

a:hover,
a:focus {
	color: var(--rr-burgundy-dark);
	text-decoration: none;
}

h1, h2, h3, h4,
.forum-title,
.topictitle,
.topic-title,
.memberlist-title,
.ucp-title,
.mcp-title {
	font-family: Georgia, "Times New Roman", serif;
	color: var(--rr-blue);
}

h2 {
	font-size: 2em;
	letter-spacing: -0.02em;
}

h1,
h2,
h3,
h4,
.topic-title,
.forum-title,
.topictitle,
.rr-site-name,
.rr-post-author a,
.rr-post-author strong,
.postprofile .username,
.postprofile .username-coloured {
	font-family: "Libre Baskerville", Georgia, serif;
}
/* ---------- Brand header ---------- */

.rr-headerbar,
.headerbar {
	margin: 0 -24px;
	padding: 0;
	background: var(--rr-blue);
	border: 0;
	border-radius: 0;
	color: var(--rr-white);
	position: relative;
	overflow: hidden;
}

.rr-headerbar::after {
	content: "";
	position: absolute;
	inset: auto 0 0;
	height: 3px;
	background: linear-gradient(90deg, var(--rr-burgundy) 0 30%, var(--rr-champagne) 30% 70%, var(--rr-burgundy) 70% 100%);
}

.rr-header-inner {
	min-height: 148px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	padding: 28px 34px 30px;
	position: relative;
	z-index: 1;
}

.rr-site-description {
	float: none;
	width: auto;
	margin: 0;
}

.rr-brand {
	display: inline-flex;
	align-items: center;
	gap: 18px;
	text-decoration: none;
	color: var(--rr-white) !important;
}

.rr-brand:hover {
	text-decoration: none;
}

.rr-monogram {
	width: 72px;
	height: 72px;
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 72px;
	border: 1px solid rgba(183, 154, 99, 0.85);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.035);
	box-shadow: inset 0 0 0 5px rgba(183, 154, 99, 0.08);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 22px;
	font-weight: 700;
	letter-spacing: -0.07em;
}

.rr-monogram em {
	margin: 0 4px;
	color: var(--rr-champagne);
	font-size: 15px;
	font-style: italic;
	font-weight: 400;
}

.rr-brand-copy {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.rr-site-name {
	color: var(--rr-white);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 34px;
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: 0.035em;
}

.rr-site-description-text {
	margin-top: 7px;
	color: #E8DECB;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

.rr-search {
	position: static;
	float: none;
	margin: 0;
}


.search-header .button {
	background: var(--rr-burgundy);
	border: 1px solid var(--rr-burgundy);
	color: #fff;
}

/* ---------- Main navbar ---------- */

.navbar {
	margin: 0 -24px 22px;
	padding: 8px 26px;
	background: var(--rr-white);
	border: 1px solid var(--rr-line);
	border-top: 0;
	border-radius: 0 0 var(--rr-radius) var(--rr-radius);
	box-shadow: 0 5px 16px rgba(31, 42, 68, 0.04);
}

.navbar .linklist > li,
.navbar .linklist > li > a,
.navbar .icon,
.navbar a {
	color: var(--rr-blue);
	font-weight: 600;
}

.navbar a:hover,
.navbar a:hover .icon {
	color: var(--rr-burgundy);
}

.dropdown .dropdown-contents {
	background: var(--rr-white);
	border-color: var(--rr-line);
	box-shadow: var(--rr-shadow);
}

/* ---------- Breadcrumbs ---------- */

.breadcrumbs .crumb a {
	color: var(--rr-muted);
	font-weight: 600;
}

.breadcrumbs .crumb:last-child a {
	color: var(--rr-blue);
}

/* ---------- Forum/category containers ---------- */

.forabg,
.forumbg {
	margin: 0 0 18px;
	padding: 0;
	background: var(--rr-white);
	border: 1px solid var(--rr-line);
	border-radius: var(--rr-radius);
	box-shadow: var(--rr-shadow);
	overflow: hidden;
}

.forabg .inner,
.forumbg .inner {
	margin: 0;
}

.forabg ul.topiclist,
.forumbg ul.topiclist {
	margin: 0;
}

.forabg ul.topiclist:first-child,
.forumbg ul.topiclist:first-child {
	background: var(--rr-blue);
	color: #fff;
}

ul.topiclist li.header {
	padding: 0;
	background: transparent;
}

ul.topiclist li.header dl {
	min-height: 42px;
	padding: 0 14px;
	display: flex;
	align-items: center;
}

ul.topiclist li.header dt,
ul.topiclist li.header dd,
ul.topiclist li.header a {
	color: #fff;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

li.header dt .list-inner {
	padding-left: 0;
}

ul.topiclist.forums,
ul.topiclist.topics {
	background: transparent;
}

ul.topiclist li.row {
	border-top: 1px solid #E8E0D3;
	border-bottom: 0;
	background: var(--rr-white);
	transition: background-color .15s ease, border-color .15s ease;
}

ul.topiclist li.row:first-child {
	border-top: 0;
}

ul.topiclist li.row:hover {
	background: #FBF7F0;
}

.row .list-inner {
	padding-top: 12px;
	padding-bottom: 12px;
}

.forum-title,
.topictitle {
	color: var(--rr-blue) !important;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.3;
}

.forum-title:hover,
.topictitle:hover {
	color: var(--rr-burgundy) !important;
}

.forum-description,
.topics,
.posts,
.views,
.lastpost {
	color: var(--rr-muted);
}

dd.lastpost a {
	color: var(--rr-blue);
	font-weight: 600;
}

/* Unread content gets the "ribbon" accent. */
li.row:has(.forum_unread),
li.row:has(.forum_unread_subforum),
li.row:has(.topic_unread),
li.row:has(.topic_unread_mine),
li.row:has(.topic_unread_hot),
li.row:has(.topic_unread_hot_mine) {
	box-shadow: inset 4px 0 0 var(--rr-burgundy);
}

/* Fallback for browsers/themes where :has is not useful. */
.forum_unread,
.forum_unread_subforum,
.topic_unread,
.topic_unread_mine,
.topic_unread_hot,
.topic_unread_hot_mine {
	border-left-color: var(--rr-burgundy);
}

/* ---------- Panels, stats, online list ---------- */

.panel,
.bg1,
.bg2,
.bg3 {
	background-color: var(--rr-white);
}

.panel {
	padding: 16px 18px;
	border: 1px solid var(--rr-line);
	border-radius: var(--rr-radius);
	box-shadow: 0 4px 15px rgba(31, 42, 68, 0.04);
}

.stat-block {
	margin-top: 20px;
}

.stat-block h3,
.panel h3 {
	margin-bottom: 10px;
	padding-bottom: 8px;
	border-bottom: 1px solid var(--rr-line);
	color: var(--rr-blue);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 16px;
	font-weight: 700;
	text-transform: none;
}

/* ---------- Topic/post layout ---------- */

.topic-title {
	margin: 10px 0 16px;
	font-size: 27px;
}

.post {
	margin-bottom: 18px;
	padding: 0;
	background: var(--rr-white);
	border: 1px solid var(--rr-line);
	border-radius: var(--rr-radius);
	box-shadow: var(--rr-shadow);
	overflow: hidden;
}

.post > .inner {
	padding: 0;
}

.postprofile {
	box-sizing: border-box;
	padding: 20px 18px;
	background: #F3ECDF;
	border-right: 1px solid var(--rr-line);
	color: var(--rr-slate);
}

.postprofile a {
	color: var(--rr-blue);
	font-weight: 700;
}

.postprofile .avatar img {
	border-radius: 6px;
	box-shadow: 0 3px 10px rgba(31, 42, 68, 0.12);
}

.postbody {
	box-sizing: border-box;
	padding: 18px 22px 22px;
}

.postbody .content {
	color: var(--rr-slate);
	font-size: 14px;
	line-height: 1.75;
}

.postbody h3 {
	color: var(--rr-blue);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 18px;
}

.post:target {
	border-color: var(--rr-champagne);
	box-shadow: 0 0 0 2px rgba(183,154,99,.16), var(--rr-shadow);
}

.unreadpost {
	border-left: 4px solid var(--rr-burgundy);
}

.signature {
	border-top-color: var(--rr-line);
	color: var(--rr-muted);
}

/* ---------- Buttons ---------- */

.button,
a.button,
input.button1,
input.button2 {
	border: 1px solid var(--rr-blue);
	border-radius: 5px;
	background: var(--rr-blue);
	box-shadow: none;
	color: #fff;
	font-weight: 700;
	text-shadow: none;
	transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}

.button:hover,
.button:focus,
a.button:hover,
input.button1:hover,
input.button2:hover {
	background: var(--rr-burgundy);
	border-color: var(--rr-burgundy);
	color: #fff;
}

.button-secondary,
input.button2 {
	background: var(--rr-white);
	border-color: var(--rr-line);
	color: var(--rr-blue);
}

.button-secondary:hover,
input.button2:hover {
	background: #F5EEE3;
	border-color: var(--rr-champagne);
	color: var(--rr-blue);
}

/* ---------- Forms ---------- */

.inputbox,
input.inputbox,
textarea.inputbox,
select {
	background: #fff;
	border: 1px solid #CFC4B1;
	border-radius: 5px;
	color: var(--rr-slate);
}

.inputbox:hover,
select:hover {
	border-color: var(--rr-champagne);
}

.inputbox:focus,
select:focus {
	border-color: var(--rr-burgundy);
	box-shadow: 0 0 0 2px rgba(168, 67, 67, 0.10);
	color: var(--rr-slate);
	outline: none;
}

fieldset.fields1 dt,
fieldset.fields2 dt {
	color: var(--rr-blue);
	font-weight: 700;
}

/* ---------- Tabs / control panels ---------- */

.tabs .tab > a,
.minitabs .tab > a {
	background: #ECE4D6;
	color: var(--rr-blue);
}

.tabs .activetab > a,
.tabs .activetab > a:hover,
.minitabs .activetab > a,
.minitabs .activetab > a:hover {
	background: var(--rr-blue);
	color: #fff;
}

#navigation a {
	background: #F2EBDD;
	color: var(--rr-blue);
}

#navigation a:hover,
#navigation #active-subsection a {
	background: var(--rr-blue);
	color: #fff;
}

/* ---------- Pagination ---------- */

.pagination li a,
.pagination li span {
	border-radius: 4px;
}

.pagination li a {
	background: var(--rr-white);
	border-color: var(--rr-line);
	color: var(--rr-blue);
}

.pagination li a:hover,
.pagination li.active span {
	background: var(--rr-burgundy);
	border-color: var(--rr-burgundy);
	color: #fff;
}

/* ---------- Notices / rules ---------- */

.rules {
	background: #FAEEEE;
	border: 1px solid #E6C2C2;
	border-radius: var(--rr-radius);
	color: #6F2D2D;
}

.rules a {
	color: var(--rr-burgundy-dark);
}

/* ---------- Footer ---------- */

#page-footer {
	margin-top: 26px;
	padding-top: 18px;
	border-top: 1px solid var(--rr-line);
	color: var(--rr-muted);
}

.copyright {
	color: var(--rr-muted);
}

/* ---------- Responsive ---------- */

@media (max-width: 700px) {
	.rr-wrap,
	.wrap {
		padding-left: 10px;
		padding-right: 10px;
	}

	.rr-headerbar,
	.headerbar,
	.navbar {
		margin-left: -10px;
		margin-right: -10px;
	}

	.rr-header-inner {
		min-height: 0;
		padding: 22px 18px 24px;
		flex-direction: column;
		align-items: stretch;
		gap: 18px;
	}

	.rr-brand {
		justify-content: center;
	}

	.rr-brand-copy {
		align-items: center;
		text-align: center;
	}

	.rr-site-name {
		font-size: 28px;
	}

	.rr-site-description-text {
		font-size: 9px;
	}

	.rr-monogram {
		width: 58px;
		height: 58px;
		flex-basis: 58px;
		font-size: 18px;
	}

	.rr-search {
		width: 100%;
	}

	.search-header fieldset,
	.search-header .inputbox {
		width: 100%;
		box-sizing: border-box;
	}

	.postprofile {
		background: #F3ECDF;
		border-right: 0;
		border-bottom: 1px solid var(--rr-line);
	}

	.postbody {
		padding: 16px;
	}

	.forabg,
	.forumbg,
	.post,
	.panel {
		border-radius: 6px;
	}
}


/* ==========================================================================
   Ribbons & Reins Light — palette refinement
   ========================================================================== */

html,
body {
	background: var(--rr-soft-white);
}

body {
	color: var(--rr-slate);
}

.rr-headerbar,
.headerbar {
	background: #FFFFFF;
	color: var(--rr-slate);
	border-bottom: 1px solid var(--rr-line);
	box-shadow: 0 5px 18px rgba(83, 107, 122, 0.06);
}

.rr-headerbar::after {
	height: 2px;
	background: linear-gradient(
		90deg,
		var(--rr-blue) 0 42%,
		var(--rr-champagne) 42% 58%,
		var(--rr-burgundy) 58% 100%
	);
}

.rr-brand,
.rr-brand:hover {
	color: var(--rr-slate) !important;
}

.rr-site-name {
	color: var(--rr-blue);
}

.rr-site-description-text {
	color: var(--rr-muted);
}

.rr-monogram {
	border-color: var(--rr-champagne);
	background: #FCFAF6;
	box-shadow: inset 0 0 0 5px rgba(214, 191, 145, 0.12);
	color: var(--rr-blue);
}

.rr-monogram em {
	color: var(--rr-burgundy);
}

.search-header .inputbox {
	background: #FFFFFF;
	border-color: var(--rr-line) !important;
	color: var(--rr-slate) !important;
}

.search-header .button {
	background: var(--rr-blue);
	border-color: var(--rr-blue);
}

.navbar {
	background: #FFFFFF;
}

.forabg ul.topiclist:first-child,
.forumbg ul.topiclist:first-child {
	background: var(--rr-blue);
}

ul.topiclist li.row:hover {
	background: #FBF9F5;
}

li.row:has(.forum_unread),
li.row:has(.forum_unread_subforum),
li.row:has(.topic_unread),
li.row:has(.topic_unread_mine),
li.row:has(.topic_unread_hot),
li.row:has(.topic_unread_hot_mine) {
	box-shadow: inset 4px 0 0 var(--rr-burgundy);
}

.forum_unread,
.forum_unread_subforum,
.topic_unread,
.topic_unread_mine,
.topic_unread_hot,
.topic_unread_hot_mine {
	border-left-color: var(--rr-burgundy);
}

.postprofile {
	background: #F5F1E8;
}

.button,
a.button,
input.button1,
input.button2 {
	background: var(--rr-blue);
	border-color: var(--rr-blue);
}

.button:hover,
.button:focus,
a.button:hover,
input.button1:hover,
input.button2:hover {
	background: var(--rr-burgundy);
	border-color: var(--rr-burgundy);
}

.button-secondary,
input.button2 {
	background: #FFFFFF;
	border-color: var(--rr-line);
	color: var(--rr-blue);
}

.button-secondary:hover,
input.button2:hover {
	background: #F7F3EB;
	border-color: var(--rr-champagne);
	color: var(--rr-blue);
}

.inputbox:focus,
select:focus {
	border-color: var(--rr-blue);
	box-shadow: 0 0 0 2px rgba(83, 107, 122, 0.10);
}

.pagination li a:hover,
.pagination li.active span {
	background: var(--rr-burgundy);
	border-color: var(--rr-burgundy);
}

.rules {
	background: #FBF2F3;
	border-color: #E7CDD3;
	color: #63303C;
}


/* Remove prosilver's diagonal ONLINE background */
.post.online {
    background-image: none !important;
}

/* Simple R&R online indicator */
.postprofile .online {
    background-image: none !important;
}

.post.online .postprofile::after {
    content: "ONLINE";
    display: inline-block;
    margin-top: 6px;
    padding: 2px 7px;
    border: 1px solid #D6BF91;
    border-radius: 999px;
    background: #FAF8F3;
    color: #536B7A;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .08em;
}

/* =========================================================
   RIBBONS & REINS — POST AUTHOR / AVATAR / RANK
   ========================================================= */

/* Kill prosilver's old repeating online background */
.post.online {
    background-image: none !important;
}

/* Author/profile column */
.postprofile {
    box-sizing: border-box;
    padding: 22px 18px;
    background: #F5F1E8;
    border-right: 1px solid #E3DDD2;
    color: #343A40;
    text-align: center;
}

/* Avatar */
.postprofile .avatar-container {
    margin: 0 auto 12px;
    text-align: center;
}

.postprofile .avatar {
    display: inline-block;
}

.postprofile .avatar img {
    display: block;
    width: 120px;
    max-width: 120px;
    height: 120px;
    object-fit: cover;
    margin: 0 auto;
    border: 2px solid #D6BF91;
    border-radius: 8px;
    background: #FFFFFF;
    box-shadow: 0 4px 12px rgba(83, 107, 122, 0.10);
}

/* Username */
.postprofile dt {
    margin: 0;
    text-align: center;
}

.postprofile dt > a,
.postprofile dt > strong,
.postprofile .username,
.postprofile .username-coloured {
    color: #7A3948 !important;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.3;
}

/* phpBB rank title */
.postprofile .profile-rank {
    margin-top: 4px;
    margin-bottom: 10px;
    color: #536B7A;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.10em;
    line-height: 1.4;
    text-align: center;
    text-transform: uppercase;
}

/* Rank image */
.postprofile .profile-rank img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 6px auto 0;
}

/* Online icon — phpBB outputs a small circle icon */
.postprofile .c-online-icon {
    margin-left: 5px;
    color: #536B7A;
    font-size: 8px;
    vertical-align: middle;
}

/* Profile details */
.postprofile dd {
    margin: 4px 0;
    color: #73787C;
    font-size: 11px;
    line-height: 1.45;
    text-align: center;
}

.postprofile dd strong {
    color: #536B7A;
    font-weight: 700;
}

/* Separate stats from identity */
.postprofile .profile-posts {
    margin-top: 12px;
    padding-top: 10px;
    border-top: 1px solid #E3DDD2;
}

/* Contact icon area */
.postprofile .profile-contact {
    margin-top: 10px;
}

/* =========================================================
   MOBILE POST AUTHOR
   ========================================================= */

@media (max-width: 700px) {

    .post {
        overflow: hidden;
    }

    .postprofile {
        width: 100% !important;
        min-height: 0;
        margin: 0;
        padding: 14px 16px;
        border-right: 0;
        border-bottom: 1px solid #E3DDD2;
        text-align: left;
    }

    /*
     * Make the profile header horizontal:
     * avatar on left, identity/details beside it.
     */
    .postprofile dt {
        min-height: 64px;
        padding-left: 76px;
        position: relative;
        text-align: left;
    }

    .postprofile .avatar-container {
        position: absolute;
        top: 0;
        left: 0;
        width: 62px;
        margin: 0;
    }

    .postprofile .avatar img {
        width: 60px;
        max-width: 60px;
        height: 60px;
        margin: 0;
        border-radius: 7px;
    }

    .postprofile dt > a,
    .postprofile dt > strong,
    .postprofile .username,
    .postprofile .username-coloured {
        font-size: 16px;
    }

    .postprofile .profile-rank {
        margin: -34px 0 0 76px;
        min-height: 34px;
        text-align: left;
        font-size: 9px;
    }

    .postprofile .profile-rank img {
        margin: 4px 0 0;
        max-height: 20px;
        width: auto;
    }

    /*
     * Keep extra stats compact on phones.
     */
    .postprofile dd:not(.profile-rank):not(.profile-contact) {
        display: inline-block;
        margin: 8px 12px 0 0;
        font-size: 10px;
        text-align: left;
    }

    .postprofile .profile-posts {
        margin-left: 76px !important;
        padding-top: 0;
        border-top: 0;
    }

    .postprofile .profile-joined {
        margin-left: 0;
    }

    .postprofile .profile-contact {
        margin: 8px 0 0 76px;
        text-align: left;
    }
}
/* =========================================================
   RIBBONS & REINS — POST PROFILE
   Avatar • Username • Rank • Online • Stats
   ========================================================= */

/* Remove prosilver's diagonal ONLINE ribbon */
.post.online {
    background-image: none !important;
}

/* ---------------------------------------------------------
   DESKTOP PROFILE COLUMN
   --------------------------------------------------------- */

.postprofile {
    box-sizing: border-box;
    width: 190px;
    padding: 22px 18px;
    background: #F5F1E8;
    border-right: 1px solid #E3DDD2;
    color: #343A40;
    text-align: center;
}

/* Avatar container */
.postprofile .avatar-container {
    width: 126px;
    height: 126px;
    margin: 0 auto 14px;
    position: relative;
}

/* Actual avatar */
.postprofile .avatar {
    display: block;
    width: 126px;
    height: 126px;
}

.postprofile .avatar img {
    display: block;
    width: 120px;
    height: 120px;
    margin: 0 auto;
    object-fit: cover;

    background: #FFFFFF;
    border: 2px solid #D6BF91;
    border-radius: 8px;

    box-shadow:
        0 4px 12px rgba(83, 107, 122, 0.10);
}

/* Empty avatar placeholder */
.postprofile .avatar-container:empty::before {
    content: "\f007";
    display: flex;
    align-items: center;
    justify-content: center;

    width: 120px;
    height: 120px;
    margin: 0 auto;

    background: #FFFFFF;
    border: 2px solid #D6BF91;
    border-radius: 8px;

    color: #D6BF91;
    font-family: FontAwesome;
    font-size: 38px;
}

/* Username */
.postprofile dt {
    margin: 0;
    padding: 0;
    text-align: center;
}

.postprofile dt > a,
.postprofile dt > strong,
.postprofile .username,
.postprofile .username-coloured {
    color: #7A3948 !important;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;

    text-decoration: none;
}

/* Forum rank */
.postprofile .profile-rank {
    margin: 5px 0 12px;

    color: #536B7A;

    font-size: 10px;
    font-weight: 700;
    line-height: 1.4;

    letter-spacing: 0.10em;
    text-align: center;
    text-transform: uppercase;
}

/* phpBB rank image */
.postprofile .profile-rank img {
    display: block;
    width: auto;
    max-width: 145px;
    height: auto;

    margin: 7px auto 0;
}

/* Profile stats */
.postprofile dd {
    margin: 4px 0;

    color: #73787C;

    font-size: 11px;
    line-height: 1.5;
    text-align: center;
}

.postprofile dd strong {
    color: #536B7A;
    font-weight: 700;
}

/* Separate stats visually */
.postprofile .profile-posts {
    margin-top: 13px;
    padding-top: 12px;

    border-top: 1px solid #E3DDD2;
}

/* Contact icons */
.postprofile .profile-contact {
    margin-top: 12px;
}

/* Contact buttons */
.postprofile .profile-contact .button {
    background: transparent;
    border-color: #D6BF91;
    color: #536B7A;
}

.postprofile .profile-contact .button:hover {
    background: #536B7A;
    border-color: #536B7A;
    color: #FFFFFF;
}


/* ---------------------------------------------------------
   R&R ONLINE INDICATOR
   --------------------------------------------------------- */

.post.online .postprofile::after {
    content: "ONLINE";

    display: inline-block;

    margin-top: 12px;
    padding: 3px 8px;

    background: #FAF8F3;
    border: 1px solid #D6BF91;
    border-radius: 999px;

    color: #536B7A;

    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.09em;
}


/* ---------------------------------------------------------
   POST BODY
   --------------------------------------------------------- */

.postbody {
    box-sizing: border-box;
    padding: 20px 24px 24px;
}

.postbody .content {
    color: #343A40;

    font-size: 14px;
    line-height: 1.75;
}

.postbody h3 {
    color: #7A3948;

    font-family: Georgia, "Times New Roman", serif;
    font-size: 18px;
    font-weight: 700;
}


/* =========================================================
   MOBILE PROFILE
   ========================================================= */

@media (max-width: 700px) {
.rr-post-avatar {
        position: absolute;
        top: 14px;
        left: 16px;

        width: 60px;
        height: 60px;

        margin: 0;
    }

    .rr-post-avatar .avatar,
    .rr-post-avatar .avatar img,
    .rr-avatar-placeholder {
        width: 56px;
        height: 56px;
    }

    .rr-avatar-placeholder .icon {
        font-size: 20px;
    }
    .postprofile {
        width: 100% !important;
        min-height: 88px;

        margin: 0;
        padding: 14px 16px;

        position: relative;

        background: #F5F1E8;
        border-right: 0;
        border-bottom: 1px solid #E3DDD2;

        text-align: left;
    }

    /* Author name area */
    .postprofile dt {
        min-height: 62px;
        padding: 4px 0 0 76px;

        text-align: left;
    }

    /* Avatar */
    .postprofile .avatar-container {
        position: absolute;
        top: 14px;
        left: 16px;

        width: 60px;
        height: 60px;

        margin: 0;
    }

    .postprofile .avatar {
        width: 60px;
        height: 60px;
    }

    .postprofile .avatar img {
        width: 56px;
        height: 56px;

        margin: 0;

        border-width: 2px;
        border-radius: 6px;
    }

    /* Empty mobile avatar */
    .postprofile .avatar-container:empty::before {
        width: 56px;
        height: 56px;

        margin: 0;

        font-size: 22px;
    }

    /* Username */
    .postprofile dt > a,
    .postprofile dt > strong,
    .postprofile .username,
    .postprofile .username-coloured {
        font-size: 16px;
    }

    /* Rank directly below username */
    .postprofile .profile-rank {
        margin: -37px 0 0 76px;

        min-height: 36px;

        font-size: 9px;
        text-align: left;
    }

    .postprofile .profile-rank img {
        max-width: 110px;
        max-height: 18px;

        margin: 3px 0 0;
    }

    /* Hide most profile details on phone */
    .postprofile dd:not(.profile-rank):not(.profile-posts):not(.profile-contact) {
        display: none;
    }

    /* Posts count */
    .postprofile .profile-posts {
        display: inline-block;

        margin: 7px 0 0 76px;
        padding: 0;

        border: 0;

        font-size: 10px;
        text-align: left;
    }

    /* Online pill */
    .post.online .postprofile::after {
        position: absolute;
        top: 48px;
        left: 92px;

        margin: 0;

        padding: 2px 6px;

        font-size: 8px;
    }

    /* Contact controls */
    .postprofile .profile-contact {
        display: none;
    }

    /* Post content */
    .postbody {
        width: 100% !important;

        padding: 16px 18px 20px;
    }
}

/* =========================================================
   R&R AVATAR AREA
   ========================================================= */

.rr-post-avatar {
    width: 126px;
    margin: 0 auto 14px;
    text-align: center;
}

.rr-post-avatar .avatar {
    display: block;
    width: 120px;
    height: 120px;
    margin: 0 auto;
}

.rr-post-avatar .avatar img {
    display: block;
    width: 120px;
    height: 120px;
    object-fit: cover;

    background: #FFFFFF;
    border: 2px solid #D6BF91;
    border-radius: 8px;

    box-shadow: 0 4px 12px rgba(83, 107, 122, 0.10);
}

/* Placeholder when member has no avatar */
.rr-avatar-placeholder {
    box-sizing: border-box;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 120px;
    height: 120px;
    margin: 0 auto;

    background: #FAF8F3;

    border: 2px solid #D6BF91;
    border-radius: 8px;

    color: #D6BF91;
}

.rr-avatar-placeholder .icon {
    color: #D6BF91;
    font-size: 34px;
}
/* Keep author information at the top of the profile card */
.postprofile {
    padding-top: 22px !important;
    vertical-align: top;
}

.postprofile dt {
    margin-top: 0 !important;
}

/* =========================================================
   RIBBONS & REINS — CLEAN MOBILE POST PROFILE
   Put this at the VERY BOTTOM of stylesheet.css
   ========================================================= */

@media (max-width: 700px) {

    /* Main author strip */
    .rr-postprofile {
        width: 100% !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 16px !important;

        display: grid !important;
        grid-template-columns: 72px 1fr;
        grid-template-rows: auto auto auto;
        column-gap: 14px;
        row-gap: 3px;

        position: relative !important;

        background: #F5F1E8;
        border: 0 !important;
        border-bottom: 1px solid #E3DDD2 !important;

        text-align: left !important;
    }


    /* ---------------------------------------------
       Reset old prosilver/mobile positioning
       --------------------------------------------- */

    .rr-postprofile dt,
    .rr-postprofile dd,
    .rr-postprofile .profile-rank,
    .rr-postprofile .profile-posts,
    .rr-postprofile .profile-joined,
    .rr-postprofile .profile-contact {
        position: static !important;
        float: none !important;

        width: auto !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;

        text-align: left !important;
    }


    /* ---------------------------------------------
       Identity block
       --------------------------------------------- */

    .rr-postprofile dt {
        display: contents !important;
    }


    /* Avatar */
    .rr-post-avatar {
        grid-column: 1;
        grid-row: 1 / span 3;

        position: static !important;

        width: 72px !important;
        height: 72px !important;

        margin: 0 !important;
    }

    .rr-post-avatar .avatar {
        width: 72px !important;
        height: 72px !important;

        margin: 0 !important;
    }

    .rr-post-avatar .avatar img,
    .rr-avatar-placeholder {
        box-sizing: border-box;

        width: 72px !important;
        height: 72px !important;

        margin: 0 !important;

        border: 2px solid #D6BF91;
        border-radius: 8px;

        background: #FAF8F3;

        object-fit: cover;
    }

    .rr-avatar-placeholder {
        display: flex !important;
        align-items: center;
        justify-content: center;
    }

    .rr-avatar-placeholder .icon {
        color: #D6BF91;
        font-size: 25px;
    }


    /* Username */
    .rr-post-author {
        grid-column: 2;
        grid-row: 1;

        align-self: end;

        margin: 2px 0 0 !important;
        padding: 0 !important;

        line-height: 1.2;
    }

    .rr-post-author a,
    .rr-post-author strong,
    .rr-post-author .username,
    .rr-post-author .username-coloured {
        color: #7A3948 !important;

        font-family: Georgia, "Times New Roman", serif;
        font-size: 18px !important;
        font-weight: 700;

        line-height: 1.2;
    }


    /* Forum rank */
    .rr-profile-rank {
        grid-column: 2;
        grid-row: 2;

        align-self: start;

        margin: 0 !important;
        padding: 0 !important;

        color: #536B7A;

        font-size: 9px !important;
        font-weight: 700;

        letter-spacing: 0.11em;
        line-height: 1.3;

        text-transform: uppercase;
    }

    .rr-rank-image img,
    .rr-profile-rank img {
        display: block;

        max-width: 120px;
        max-height: 22px;

        width: auto;
        height: auto;

        margin: 4px 0 0 !important;
    }


    /* ---------------------------------------------
       Small profile metadata
       --------------------------------------------- */

    .rr-profile-meta {
        grid-column: 2;
        grid-row: 3;

        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 4px 12px;

        margin: 3px 0 0 !important;
        padding: 0 !important;

        color: #73787C;

        font-size: 10px;
        line-height: 1.3;
    }

    .rr-profile-meta dd {
        display: inline-block !important;
        margin: 0 !important;
        padding: 0 !important;

        font-size: 10px !important;
    }

    .rr-profile-meta strong {
        color: #536B7A;
    }


    /* Hide joined date on small screens.
       We can bring it back later if desired. */
    .rr-profile-meta .profile-joined {
        display: none !important;
    }


    /* Contact dropdown isn't useful in the tiny post header */
    .rr-postprofile .profile-contact {
        display: none !important;
    }


    /* ---------------------------------------------
       Online badge
       --------------------------------------------- */

    .post.online .rr-postprofile::after {
        content: "ONLINE";

        position: absolute !important;
        top: 15px !important;
        right: 16px !important;
        left: auto !important;

        display: inline-block;

        margin: 0 !important;
        padding: 3px 7px !important;

        background: #FAF8F3;
        border: 1px solid #D6BF91;
        border-radius: 999px;

        color: #536B7A;

        font-size: 8px;
        font-weight: 700;

        letter-spacing: 0.10em;
        line-height: 1;
    }


    /* Give username room for ONLINE badge */
    .post.online .rr-post-author {
        padding-right: 65px !important;
    }


    /* ---------------------------------------------
       Post body
       --------------------------------------------- */

    .postbody {
        width: 100% !important;

        margin: 0 !important;
        padding: 18px 20px 24px !important;
    }

}
/* =========================================================
   R&R — POST ACTION BUTTONS
   Keep actions inside the actual post body
   ========================================================= */

.rr-post .postbody {
    position: relative;
}

.rr-post .post-buttons {
    position: absolute !important;
    top: 16px !important;
    right: 18px !important;

    display: flex;
    align-items: center;
    gap: 4px;

    margin: 0 !important;
    padding: 0 !important;

    float: none !important;
}

.rr-post .post-buttons li {
    float: none !important;
    margin: 0 !important;
}

/* Slightly quieter action buttons */
.rr-post .post-buttons .button {
    width: 32px;
    height: 32px;
    min-width: 32px;

    padding: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #536B7A;
    border-color: #536B7A;
    border-radius: 6px;
}

.rr-post .post-buttons .button:hover {
    background: #7A3948;
    border-color: #7A3948;
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 700px) {

    /*
     * Reserve the top of the post body for controls.
     * This keeps them away from the profile header.
     */
    .rr-post .postbody {
        position: relative !important;
        padding-top: 60px !important;
    }

    .rr-post .post-buttons {
        top: 14px !important;
        right: 16px !important;

        gap: 3px;
    }

    .rr-post .post-buttons .button {
        width: 30px;
        height: 30px;
        min-width: 30px;

        font-size: 12px;
    }
}

/* =========================================================
   RIBBONS & REINS — BUTTON RENDERING FIX
   Fixes the doubled/shadowed labels without affecting
   phpBB's search/gear controls.
   ========================================================= */

/* Remove prosilver/theme text effects from actual button text. */
.button,
a.button,
input.button1,
input.button2,
button.button,
.button span:not(.icon),
a.button span:not(.icon),
#format-buttons input,
#format-buttons button {
    text-shadow: none !important;
    -webkit-text-stroke: 0 !important;
    filter: none !important;
}

/* BBCode letter buttons such as B / I / U must use the UI font. */
#format-buttons input.button1,
#format-buttons input.button2,
#format-buttons input[type="button"],
#format-buttons button:not(.icon) {
    font-family: "Open Sans", Arial, Helvetica, sans-serif !important;
    font-style: normal;
    font-variant: normal;
    font-weight: 700;
}

/* Keep Font Awesome icons as icons, but remove any inherited shadow. */
.button .icon,
a.button .icon,
#format-buttons .icon,
.button .icon::before,
.button .icon::after,
#format-buttons .icon::before,
#format-buttons .icon::after {
    text-shadow: none !important;
    -webkit-text-stroke: 0 !important;
    filter: none !important;
}

/* New Topic / Post Reply only — do NOT catch search or gear buttons. */
.action-bar .buttons > .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;

    min-height: 36px;
    padding: 7px 14px;

    background: var(--rr-burgundy);
    border: 1px solid var(--rr-burgundy);
    border-radius: 6px;

    color: #FFFFFF !important;
    font-family: "Open Sans", Arial, Helvetica, sans-serif !important;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;

    text-decoration: none;
    text-shadow: none !important;
    -webkit-text-stroke: 0 !important;
    filter: none !important;
    box-sizing: border-box;
}

.action-bar .buttons > .button > span:not(.icon) {
    color: inherit !important;
    font-family: "Open Sans", Arial, Helvetica, sans-serif !important;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    text-shadow: none !important;
    -webkit-text-stroke: 0 !important;
    filter: none !important;
}

.action-bar .buttons > .button .icon {
    color: #FFFFFF !important;
    line-height: 1;
    text-shadow: none !important;
    -webkit-text-stroke: 0 !important;
    filter: none !important;
}

.action-bar .buttons > .button:hover,
.action-bar .buttons > .button:focus {
    background: var(--rr-burgundy-dark);
    border-color: var(--rr-burgundy-dark);
    color: #FFFFFF !important;
}

/* =========================================================
   R&R — FONT AWESOME 7 FORUM STATUS ICONS
   ========================================================= */

/*
 * Keep phpBB's status class so we still know whether the
 * forum is read/unread/locked, but suppress its old image.
 */
.rr-forum-row {
    background-image: none !important;
}

/* Reserve a clean icon column. */
.rr-forum-row > dt .list-inner {
    position: relative;
    min-height: 46px;
    padding-left: 54px;
}


/* Main forum status icon */
.rr-forum-status {
    position: absolute;
    top: 4px;
    left: 4px;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 38px;
    height: 38px;

    border: 0px solid var(--rr-line);
    border-radius: 7px;

    background: transparent;
    color: var(--rr-blue);

    font-size: 18px;
    line-height: 1;
}


/* Read */
.rr-forum-status-read {
    color: var(--rr-champagne-lt);
}


/* Unread */
.rr-forum-status-unread {
    color: var(--rr-burgundy-lt);
}


/* External/link forum */
.rr-forum-status-link {
    color: var(--rr-champagne);
}


/* Subforum icons */
.rr-subforum-icon {
    margin-right: 3px;
    font-size: .9em;
}

.rr-icon-read {
    color: var(--rr-blue);
}

.rr-icon-unread {
    color: var(--rr-burgundy);
}


/* Moderation/unapproved */
.rr-lastpost-icon {
    margin-right: 4px;
    color: var(--rr-burgundy);
}


/* Latest-post shortcut */
.rr-latest-post {
    display: inline-block;
    margin-left: 3px;
    color: var(--rr-muted);
}

.rr-latest-post:hover {
    color: var(--rr-burgundy);
}


/* FA Kit icons shouldn't inherit old phpBB icon font rules. */
.rr-forum-status i,
.rr-subforum-icon,
.rr-lastpost-icon,
.rr-latest-post i {
    font-style: normal;
    text-shadow: none !important;
}

.back2top .top {
    z-index: 2000;
}

/* =========================================================
   RIBBONS & REINS — FA7 VIEWFORUM / TOPIC STATUS
   Add to the bottom of stylesheet.css
   ========================================================= */

/* phpBB still supplies TOPIC_IMG_STYLE for state logic,
   but FA7 now supplies the visible topic icon. */
.rr-topic-row {
    background-image: none !important;
}

.rr-topic-row > dt .list-inner {
    position: relative;
    min-height: 34px;
    padding-left: 38px;
}

/* Main read / unread / sticky / announcement icon */
.rr-topic-status {
    position: absolute;
    top: 1px;
    left: 3px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 27px;
    height: 27px;

    border: 1px solid var(--rr-line);
    border-radius: 6px;

    background: #F7F3EB;
    color: var(--rr-blue);

    font-size: 13px;
    line-height: 1;
    text-decoration: none;
}

.rr-topic-status-read {
    color: var(--rr-blue);
}

.rr-topic-status-unread {
    background: #F9EFF1;
    border-color: #E7CDD3;
    color: var(--rr-burgundy);
}

.rr-topic-status:hover {
    background: var(--rr-burgundy);
    border-color: var(--rr-burgundy);
    color: #FFFFFF;
}

/* Moderation and metadata icons beside the topic title. */
.rr-topic-meta-icon {
    margin-left: 4px;
    color: var(--rr-blue);
}

.rr-topic-meta-alert {
    color: var(--rr-burgundy);
}

.rr-topic-meta-ok {
    color: var(--rr-blue);
}

/* Poll, attachment, pagination and latest-post icons. */
.rr-topic-detail-icon {
    color: var(--rr-muted);
}

.topic-poster .rr-topic-detail-icon {
    margin-right: 2px;
}

/* FA Kit SVGs/icons should not inherit prosilver text effects. */
.rr-topic-status,
.rr-topic-status *,
.rr-topic-meta-icon,
.rr-topic-detail-icon,
.action-bar .buttons .fa-solid,
.search-box .fa-solid {
    text-shadow: none !important;
    -webkit-text-stroke: 0 !important;
    filter: none !important;
}

/* New Topic / Forum Locked control now uses phpBB's .buttons wrapper. */
.action-bar .buttons {
    float: left;
    margin-right: 5px;
}

.action-bar .buttons > .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
}

/* Small-screen topic icons */
@media (max-width: 700px) {
    .rr-topic-row > dt .list-inner {
        padding-left: 35px;
    }

    .rr-topic-status {
        width: 25px;
        height: 25px;
        font-size: 12px;
    }
}

/* =========================================================
   R&R — BACK TO TOP
   Keep the control inside the rounded post card
   ========================================================= */

.rr-post .back2top {
    clear: both;
    height: auto;
    margin: 0;
    padding: 0 18px 14px;
    text-align: right;
}

.rr-post .back2top .top {
    float: none !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 30px;
    height: 30px;

    margin: 0 !important;
    padding: 0;

    border: 1px solid var(--rr-line);
    border-radius: 6px;

    background: #F7F3EB;
    color: var(--rr-blue);

    font-size: 14px;
    line-height: 1;
}

.rr-post .back2top .top:hover {
    background: var(--rr-burgundy);
    border-color: var(--rr-burgundy);
    color: #fff;
}

.rr-post .back2top .top i {
    color: inherit !important;
    line-height: 1;
    text-shadow: none !important;
}

/* =========================================================
   RIBBONS & REINS — FA7 VIEWTOPIC
   Add to the bottom of stylesheet.css
   ========================================================= */

/* Reply buttons use the same controlled wrapper as New Topic. */
.action-bar .buttons {
    float: left;
    margin-right: 5px;
}

.action-bar .buttons > .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
}

/* Post action buttons: Edit / Delete / Report / Warn / Info / Quote */
.rr-post .post-buttons .fa-solid {
    color: inherit;
    font-size: 13px;
    line-height: 1;
    text-shadow: none !important;
    -webkit-text-stroke: 0 !important;
    filter: none !important;
}

/* Read/unread mini-post marker */
.rr-post-status-read {
    color: var(--rr-muted);
}

.rr-post-status-unread {
    color: var(--rr-burgundy);
}

/* Moderation notices */
.rr-notice-icon {
    color: var(--rr-burgundy);
    text-shadow: none !important;
}

/* Avatar placeholder and contact button */
.rr-avatar-placeholder .fa-solid {
    color: var(--rr-champagne);
    font-size: 34px;
}

.profile-contact .dropdown-trigger .fa-solid {
    color: var(--rr-blue);
    font-size: 14px;
}

.profile-contact .dropdown-trigger:hover .fa-solid {
    color: var(--rr-burgundy);
}

/* =========================================================
   BACK TO TOP
   Keep it fully inside the rounded post card.
   ========================================================= */

.rr-post .back2top {
    clear: both;
    height: auto !important;
    margin: 0 !important;
    padding: 0 18px 14px !important;
    text-align: right;
}

.rr-post .back2top .top {
    float: none !important;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 30px;
    height: 30px;

    margin: 0 !important;
    padding: 0 !important;

    background: #F7F3EB;
    border: 1px solid var(--rr-line);
    border-radius: 6px;

    color: var(--rr-blue) !important;
    font-size: 14px;
    line-height: 1;
    text-decoration: none;
}

.rr-post .back2top .top:hover,
.rr-post .back2top .top:focus {
    background: var(--rr-burgundy);
    border-color: var(--rr-burgundy);
    color: #FFFFFF !important;
}

.rr-post .back2top .top .fa-solid {
    color: inherit !important;
    line-height: 1;
    text-shadow: none !important;
    -webkit-text-stroke: 0 !important;
    filter: none !important;
}

/* Search / quick-mod icons should not inherit prosilver's old icon font. */
.search-box .fa-solid,
.quickmod .fa-solid,
.action-bar .buttons .fa-solid,
.rr-post .author .fa-solid,
.post-notice .fa-solid {
    text-shadow: none !important;
    -webkit-text-stroke: 0 !important;
    filter: none !important;
}

/* Mobile */
@media (max-width: 700px) {
    .rr-post .back2top {
        padding-right: 14px !important;
        padding-bottom: 12px !important;
    }

    .rr-avatar-placeholder .fa-solid {
        font-size: 25px;
    }
}

/* =========================================================
   RIBBONS & REINS — FA7 BBCODE TOOLBAR
   Add to the bottom of stylesheet.css
   ========================================================= */

.rr-format-buttons {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;

    margin: 0 0 8px;
}

/* Main BBCode icon buttons */
.rr-format-buttons .button-icon-only {
    box-sizing: border-box;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 34px;
    min-width: 34px;
    height: 34px;

    margin: 0;
    padding: 0;

    background: #FFFFFF;
    border: 1px solid var(--rr-line);
    border-radius: 5px;

    color: var(--rr-blue);

    line-height: 1;
    text-shadow: none !important;
    box-shadow: none;
}

.rr-format-buttons .button-icon-only:hover,
.rr-format-buttons .button-icon-only:focus {
    background: var(--rr-blue);
    border-color: var(--rr-blue);
    color: #FFFFFF;
}

/* Font Awesome 7 icons */
.rr-format-buttons .button-icon-only .fa-solid {
    color: inherit !important;
    font-size: 13px;
    line-height: 1;

    text-shadow: none !important;
    -webkit-text-stroke: 0 !important;
    filter: none !important;
}

/* Font size dropdown */
.rr-format-buttons .bbcode-size {
    box-sizing: border-box;
    min-height: 34px;
    margin: 0 0 0 2px;
    padding: 4px 28px 4px 8px;

    background: #FFFFFF;
    border: 1px solid var(--rr-line);
    border-radius: 5px;

    color: var(--rr-slate);
    font-family: "Inter", system-ui, sans-serif;
    font-size: 12px;
}

/* Custom BBCode buttons remain text buttons */
.rr-format-buttons .button-secondary:not(.button-icon-only) {
    min-height: 34px;
    margin: 0;
    padding: 5px 9px;

    font-family: "Inter", system-ui, sans-serif;
    font-size: 11px;
    line-height: 1;

    text-shadow: none !important;
}

/* Keep palette aligned with editor */
#colour_palette {
    margin-bottom: 8px;
}

/* Mobile */
@media (max-width: 700px) {
    .rr-format-buttons {
        gap: 3px;
    }

    .rr-format-buttons .button-icon-only {
        width: 32px;
        min-width: 32px;
        height: 32px;
    }

    .rr-format-buttons .bbcode-size {
        min-height: 32px;
    }
}


.dropdown-extended {
	border: 1px solid var(--rr-blue);
}

.dropdown-extended .header {
	background-color: var(--rr-blue);
	background-image: none;
	color: var(--rr-white);
	text-shadow: none;
}

.dropdown-extended .header .header_settings a {
	color: var(--rr-champagne);
}

.dropdown-extended .header .header_settings a:hover {
	color: var(--rr-white);
}

/* Pointer */
/* Outer pointer edge */
.dropdown-extended .pointer {
	border-color: var(--rr-blue) transparent !important;
}

/* Inner pointer fill */
.dropdown-extended .pointer-inner {
	border-color: var(--rr-blue) transparent !important;
}

.memberlist thead {
    background-color: var(--rr-blue);
}

.search-header {
    box-shadow: none;
}
}

.nav-footer {
    border-top-left-radius: ;
}

/* =========================================================
   PAYPAL DONATE — R&R NAVBAR VERSION
   ========================================================= */

/* Hide large index donation image */
.paypaldonate-footer {
    display: none !important;
}

/* Keep Support Us / Donate in navbar everywhere */
.section-index li.paypal {
    display: list-item !important;
}

/* =========================================================
   R&R — HEADER SEARCH
   ========================================================= */

.search-header {
	margin: 0;
	padding: 0;
	width: auto;
	float: none;
}

.search-header form,
.search-header fieldset {
	margin: 0;
	padding: 0;

	display: flex;
	align-items: stretch;
	gap: 0;

	border: 0;
}

/* Search field */
.search-header .inputbox {
	box-sizing: border-box;

	width: 220px;
	height: 42px;

	margin: 0;
	padding: 0 14px;

	background: #FFFFFF;
	border: 1px solid var(--rr-line) !important;
	border-right: 0 !important;
	border-radius: 7px 0 0 7px;

	color: var(--rr-slate) !important;

	font-size: 14px;
	line-height: 42px;

	outline: none;
	box-shadow: none;
}

.search-header .inputbox::placeholder {
	color: #8A8E91;
	opacity: 1;
}

.search-header .inputbox:focus {
	border-color: var(--rr-blue) !important;
	box-shadow: inset 0 0 0 1px var(--rr-blue);
}


/* Search + advanced-search buttons */
.search-header .button {
	box-sizing: border-box;

	display: flex;
	align-items: center;
	justify-content: center;

	width: 42px;
	height: 42px;
	min-width: 42px;

	margin: 0;
	padding: 0;

	background: var(--rr-blue);
	border: 1px solid var(--rr-blue);
	border-radius: 0;

	color: #FFFFFF;

	box-shadow: none;
	text-shadow: none;
}

/* Search button */
.search-header .button-search {
	border-left: 0;
}

/* Gear / advanced search */
.search-header .button-search-end {
	border-left: 1px solid rgba(255,255,255,0.18);
	border-radius: 0 7px 7px 0;
}

.search-header .button:hover {
	background: var(--rr-burgundy);
	border-color: var(--rr-burgundy);
	color: #FFFFFF;
}

.search-header .button i {
	color: inherit;
	font-size: 15px;
}

.paypaldonate-title {
    color: var(--rr-burgundy) !important;
}

.panel-container .panel {
    background-color: inherit;
    border: 0;
    box-shadow: none;
}

/* =========================================================
   R&R — DESKTOP POST LAYOUT
   Post content left / user profile right
   ========================================================= */
   
   @media (max-width: 700px) {
    .faq-link {
        display: none !important;
    }
}

@media (min-width: 700px) {
    

	/* Turn the inside of each post into a 2-column layout */
	.rr-post > .inner {
		display: flex;
		align-items: stretch;
		position: relative;
	}

	/* Main post content */
	.rr-post .postbody {
		order: 2;
		float: none !important;

		flex: 1 1 auto;
		width: auto !important;
		min-width: 0;

		margin: 0 !important;
		padding: 20px 24px 24px;
	}

	/* User information on RIGHT */
	.rr-postprofile {
		order: 1;
		float: none !important;

		flex: 0 0 190px;
		width: 190px !important;

		margin: 0 !important;
		padding: 22px 18px;

		background: #F5F1E8;

		border-left: 0 !important;
		border-right: 1px solid var(--rr-line) !important;

		text-align: center;
	}

	/* Center profile contents */
	.rr-postprofile dt,
	.rr-postprofile dd,
	.rr-postprofile .rr-post-author,
	.rr-postprofile .rr-profile-rank,
	.rr-postprofile .rr-profile-meta {
		text-align: center;
	}

	/* Avatar */
	.rr-post-avatar {
		margin-left: auto;
		margin-right: auto;
	}

	/* Profile metadata */
	.rr-profile-meta {
		display: block;
		margin-top: 12px;
	}

	.rr-profile-meta dd {
		margin: 4px 0;
	}

	/* Keep contact controls centered */
	.rr-postprofile .profile-contact {
		text-align: center;
	}

	/* Back-to-top shouldn't become a third flex column */
	.rr-post .back2top {
		position: absolute;
		right: 8px;
		bottom: 8px;
		margin: 0;
	}

}

.postlink,
.postlink:visited {
	color: var(--rr-burgundy) !important;
	border-bottom: 1px dotted var(--rr-burgundy) !important;
}

.postlink:hover,
.postlink:focus {
	color: var(--rr-blue) !important;
	border-bottom-color: var(--rr-blue) !important;
	background-color: transparent !important;
	font-weight: 700;
	text-decoration: none;
}

/* =========================================================
   R&R — TOPIC ROW ICON ALIGNMENT
   ========================================================= */

.topics .row-item {
	position: relative;
}

/* Icon wrapper */
.rr-topic-status {
	position: absolute;

	left: 14px;
	top: 50%;
	transform: translateY(-50%);

	display: flex;
	align-items: center;
	justify-content: center;

	width: 32px;
	height: 32px;

	margin: 0;

	background: var(--rr-soft-white);
	border: 1px solid var(--rr-line);
	border-radius: 8px;

	color: var(--rr-blue);

	font-size: 18px;
	line-height: 1;
}

/* Give the topic text enough room for the icon */
.topics .row-item .list-inner {
	padding-left: 70px !important;
}

/* Keep topic title/details vertically tidy */
.topics .row-item dt {
	position: relative;
}

.topics .row-item .topictitle {
	display: inline-block;
	margin-bottom: 2px;
}

a.topictitle {
    font-size: 1.1em;
}

.topic-poster {
    font-size: .75em;
}

.dropdown-trigger::after {
	content: "\f078";
	font: var(--fa-font-sharp-solid);
	margin-left: 0.35em;
	font-size: 0.75em;
	color: currentColor;

	display: inline-block;
	transition: transform 0.18s ease;
}

/* Flip chevron when dropdown is open */
.dropdown-visible > .dropdown-trigger::after {
	transform: rotate(180deg);
}