/* ============================================================
   Just Roleplay layer — restyles Emerald Dark into the
   Just Roleplay board skin. Loaded last, so it wins.
   Tweak the variables below to re-skin the whole board.
   ============================================================ */

:root {
	--jrp-bg: #0f1219;
	--jrp-surface: #151820;
	--jrp-surface-2: #191d27;
	--jrp-surface-3: #1e2330;
	--jrp-chrome: #181b23;
	--jrp-topbar: #12151c;
	--jrp-line: rgba(255, 255, 255, 0.07);
	--jrp-line-strong: rgba(255, 255, 255, 0.14);
	--jrp-text: #dae1f3;
	--jrp-text-soft: #d6d9e0;
	--jrp-muted: #7c869d;
	--jrp-accent: #5b8dd6;
	--jrp-green: #4d9a55;
	--jrp-green-hover: #57ad60;
	--jrp-youtube: #c62b2b;
	--jrp-discord: #5865f2;
	--jrp-radius: 4px;

	/* Artwork hooks — swap none for url(../../../images/emerald/yourfile.png) */
	--jrp-header-image: none;
	--jrp-hero-image: none;
	/* .jrp-widget-link-text keeps the subtitle under the title */
	--jrp-cat-image: none;
}

/* ---------- base ---------- */

body {
	background: var(--jrp-bg);
	color: var(--jrp-text);
	font-family: BlinkMacSystemFont, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	font-size: 13px;
	margin-bottom: 0 !important;
}

#container,
#content {
	background: var(--jrp-bg);
	color: var(--jrp-text);
	font-family: inherit;
}

#content {
	padding: 0 0 30px;
	min-height: calc(100vh - 430px);
}

.wrapper,
.jrp-shell {
	width: 100%;
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 15px;
	box-sizing: border-box;
}

a:link, a:visited, a:active {
	color: var(--jrp-text-soft);
}

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

table {
	color: var(--jrp-text);
	font-size: 13px;
}

.smalltext {
	font-size: 12px;
}

/* ---------- top bar ---------- */

.haut {
	position: relative;
	float: none;
	width: 100%;
	height: 132px !important;
	background-color: var(--jrp-topbar);
	background-image: var(--jrp-header-image);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-attachment: scroll;
	box-shadow: none;
	border-bottom: 1px solid var(--jrp-line);
	display: flex;
	align-items: center;
	animation: none;
	z-index: 1000;
}

.haut::before {
	content: "";
	position: absolute;
	inset: 0;
	height: 132px;
	background: linear-gradient(135deg, rgba(31, 40, 61, 0.75) 0%, rgba(15, 18, 25, 0.92) 70%);
	pointer-events: none;
}

.jrp-topbar-inner {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	width: 100%;
}

#logo, #logo:hover {
	position: static !important;
	padding: 0 !important;
	color: #fff !important;
	font-family: inherit;
	font-size: 30px;
	font-weight: 800;
	letter-spacing: 0.5px;
	line-height: 1.15;
	text-shadow: 0 2px 10px rgba(0, 0, 0, 0.6);
	display: inline-block;
}

#logo .jrp-logo-sub {
	display: block;
	font-size: 13px;
	font-weight: 400;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.65);
}

/* auth / user menu in the top bar */

.useroptions {
	position: relative;
	z-index: 3;
}

#menu-deroulant {
	float: none;
	right: 0;
	display: flex;
	align-items: center;
	gap: 8px;
	letter-spacing: 0;
}

#menu-deroulant > li {
	position: relative;
	border-bottom: 0 !important;
	background: none !important;
}

#menu-deroulant > li > a {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 9px 14px !important;
	font-size: 13px;
	font-weight: 600;
	color: #fff;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid var(--jrp-line-strong);
	border-radius: var(--jrp-radius);
	white-space: nowrap;
}

#menu-deroulant > li > a:hover {
	background: rgba(255, 255, 255, 0.16);
}

/* the green CTA is opt-in, so the member account button stays neutral */
#menu-deroulant > li.jrp-cta > a {
	background: var(--jrp-green);
	border-color: var(--jrp-green);
}

#menu-deroulant > li.jrp-cta > a:hover {
	background: var(--jrp-green-hover);
}

#menu-deroulant li:hover {
	border-bottom: 0;
	background: none;
}

#menu-deroulant ul {
	display: none;
	top: 100%;
	left: auto;
	right: 0;
	margin-top: 0;
	min-width: 190px;
	background: var(--jrp-surface-2);
	border: 1px solid var(--jrp-line-strong);
	border-radius: var(--jrp-radius);
	overflow: hidden;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45);
}

#menu-deroulant li:hover ul {
	display: block;
	left: auto;
	right: 0;
}

#menu-deroulant li:hover ul li a,
#menu-deroulant li:hover ul li:hover a {
	background: transparent !important;
	color: var(--jrp-text);
	padding: 10px 14px !important;
	font-weight: 400;
	width: auto;
}

#menu-deroulant li:hover ul li:hover a {
	background: rgba(255, 255, 255, 0.06) !important;
	color: #fff;
}

/* ---------- main navigation ---------- */

.jrp-nav {
	position: sticky;
	top: 0;
	z-index: 900;
	background: var(--jrp-chrome);
	border-bottom: 1px solid var(--jrp-line);
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.35);
}

.jrp-navlist {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin: 0;
	padding: 0;
	list-style: none;
}

.jrp-navlist > li > a {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 14px 18px;
	font-size: 13px;
	font-weight: 700;
	color: rgba(255, 255, 255, 0.7);
	border-bottom: 2px solid transparent;
}

.jrp-navlist > li > a:hover {
	color: #fff;
	background: rgba(255, 255, 255, 0.04);
	border-bottom-color: var(--jrp-accent);
	text-decoration: none;
}

.jrp-navlist i {
	font-size: 14px;
	opacity: 0.85;
}

/* ---------- hero ---------- */

#header_block {
	height: auto;
	border-bottom: 0;
	text-shadow: none;
	animation: none;
	background-color: var(--jrp-surface);
	background-image: var(--jrp-hero-image);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-attachment: scroll;
	position: relative;
	z-index: 0;
	margin: 20px auto 0;
	max-width: 1150px;
	width: calc(100% - 30px);
	border: 1px solid var(--jrp-line);
	border-radius: var(--jrp-radius);
	overflow: hidden;
}

.jrp-hero {
	background: linear-gradient(180deg, rgba(15, 18, 25, 0.35), rgba(15, 18, 25, 0.75));
	padding: 44px 30px 48px;
	text-align: center;
}

#hb_title {
	position: static;
	left: auto;
	top: auto;
	display: block;
	font-family: inherit;
	font-size: 26px;
	font-weight: 700;
	color: #fff;
}

#hb_desc {
	display: block;
	max-width: 640px;
	margin: 12px auto 0;
	font-family: inherit;
	font-size: 13px;
	line-height: 1.7;
	text-align: center;
	color: var(--jrp-text);
	font-weight: 400;
}

#jrp_hero_actions {
	margin-top: 22px;
	display: flex;
	justify-content: center;
	gap: 12px;
	flex-wrap: wrap;
}

/* ---------- buttons ---------- */

.jrp-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 9px 16px;
	font-size: 13px;
	font-weight: 600;
	line-height: 1;
	color: #fff !important;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid var(--jrp-line-strong);
	border-radius: var(--jrp-radius);
	cursor: pointer;
	transition: background 150ms ease;
}

.jrp-btn:hover {
	background: rgba(255, 255, 255, 0.16);
	text-decoration: none;
}

.jrp-btn--cta {
	background: var(--jrp-green);
	border-color: var(--jrp-green);
}

.jrp-btn--cta:hover {
	background: var(--jrp-green-hover);
}

.jrp-btn--yt {
	background: var(--jrp-youtube);
	border-color: var(--jrp-youtube);
}

.jrp-btn--dc {
	background: var(--jrp-discord);
	border-color: var(--jrp-discord);
}

button,
input.button,
a.button {
	background: var(--jrp-surface-3);
	color: var(--jrp-text);
	border: 1px solid var(--jrp-line-strong);
	border-radius: var(--jrp-radius);
	font-family: inherit;
	font-size: 13px;
	font-weight: 600;
	padding: 9px 16px;
	transition: background 150ms ease;
}

button:hover,
input.button:hover,
a.button:hover {
	background: #262c3b;
	color: #fff;
}

input.textbox,
textarea,
select {
	background: #1b1f2a;
	border: 1px solid #2b3140;
	border-radius: var(--jrp-radius);
	color: var(--jrp-text);
	font-family: inherit;
}

/* ---------- breadcrumb bar ---------- */

.navigation {
	background: var(--jrp-chrome);
	border: 1px solid var(--jrp-line);
	border-radius: var(--jrp-radius);
	color: var(--jrp-text);
	font-family: inherit;
	font-size: 12px;
	padding: 0;
	margin: 20px 0 0;
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	flex-wrap: wrap;
	overflow: hidden;
}

.jrp-crumbs {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
	padding: 11px 14px;
	min-height: 20px;
}

.jrp-crumbs a:link,
.jrp-crumbs a:visited {
	color: var(--jrp-text);
}

.jrp-crumbs a:hover {
	color: #fff;
}

.jrp-crumbs .active {
	color: var(--jrp-muted);
	font-size: 12px;
	font-weight: 400;
}

#home_bit {
	color: var(--jrp-text);
	padding: 0;
	font-size: 13px;
	left: 0;
}

.navigation i.fa-angle-double-right {
	color: rgba(255, 255, 255, 0.25);
	font-size: 11px;
	margin: 0 2px;
}

.jrp-crumb-actions {
	display: flex;
	align-items: stretch;
}

.jrp-crumb-actions .jrp-btn {
	border: 0;
	border-radius: 0;
	border-left: 1px solid rgba(0, 0, 0, 0.25);
	padding: 0 18px;
}

/* ---------- page title row ---------- */

.jrp-pagetitle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 15px;
	flex-wrap: wrap;
	background: var(--jrp-surface);
	border: 1px solid var(--jrp-line);
	border-top-color: var(--jrp-line-strong);
	border-radius: var(--jrp-radius);
	padding: 16px 18px;
	margin: 20px 0;
}

.jrp-pagetitle h1 {
	margin: 0;
	font-size: 22px;
	font-weight: 400;
	color: var(--jrp-text);
}

/* ---------- index layout ---------- */

.jrp-layout {
	display: flex;
	align-items: flex-start;
	gap: 20px;
}

.forum {
	float: none !important;
	width: auto;
	flex: 1 1 auto;
	min-width: 0;
}

.side {
	float: none !important;
	width: 260px !important;
	flex: 0 0 260px;
	margin: 0 !important;
}

/* ---------- blocks / tables ---------- */

.tborder {
	width: 100%;
	background: var(--jrp-surface);
	border: 1px solid var(--jrp-line);
	border-top-color: var(--jrp-line-strong);
	border-radius: var(--jrp-radius);
	border-collapse: separate;
	border-spacing: 0;
	overflow: hidden;
	box-shadow: none;
	margin-bottom: 20px;
}

.thead {
	background-color: var(--jrp-surface-2);
	background-image: var(--jrp-cat-image);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
	background-attachment: scroll;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	padding: 15px 16px;
	border-bottom: 1px solid var(--jrp-line);
	position: relative;
}

.thead::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, rgba(15, 18, 25, 0.25), rgba(15, 18, 25, 0.75));
	pointer-events: none;
}

.thead > * {
	position: relative;
	z-index: 2;
}

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

.thead .smalltext {
	font-weight: 400;
	color: rgba(255, 255, 255, 0.6);
	margin-top: 3px;
}

.tcat {
	background: var(--jrp-surface-2);
	border-bottom: 1px solid var(--jrp-line);
	color: var(--jrp-muted);
	font-weight: 600;
	padding: 9px 12px;
}

.trow1,
.trow2 {
	background: var(--jrp-surface);
	border-top: 0;
	border-bottom: 1px solid var(--jrp-line);
	padding: 12px;
}

.trow_sep {
	background: var(--jrp-surface-2);
	color: var(--jrp-muted);
	font-weight: 700;
	padding: 9px 12px;
}

.tfoot {
	background: var(--jrp-surface-2);
	border-top: 1px solid var(--jrp-line);
	color: var(--jrp-muted);
	padding: 12px;
}

.tfoot a:link,
.tfoot a:visited,
.tfoot a:hover,
.tfoot a:active {
	color: var(--jrp-text);
}

.tborder tbody tr:last-child td {
	border-bottom: 0;
}

.expcolimage {
	float: right;
	opacity: 0.5;
	font-size: 12px;
	cursor: pointer;
}

.expcolimage:hover {
	opacity: 1;
}

/* ---------- forum rows ---------- */

.jrp-node > td {
	padding: 14px 12px;
	vertical-align: middle;
}

.jrp-node:hover > td {
	background: rgba(255, 255, 255, 0.02);
}

.jrp-node-icon {
	width: 62px !important;
	padding-left: 16px !important;
	padding-right: 0 !important;
}

.forum_status {
	height: 44px;
	width: 44px;
	font-size: 20px;
	border-radius: 50%;
	background: var(--jrp-surface-3);
	border: 1px solid var(--jrp-line);
	color: var(--jrp-accent);
	margin: 0 auto;
}

.forum_status i {
	line-height: 42px;
}

.forum_on,
.forum_off,
.forum_offlock,
.forum_offlink {
	color: var(--jrp-accent);
}

.forum_off,
.forum_offlock,
.forum_offlink {
	color: var(--jrp-muted);
}

.jrp-node-title {
	margin: 0;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
}

.jrp-node-title a:link,
.jrp-node-title a:visited {
	color: var(--jrp-text-soft);
}

.jrp-node-title a:hover {
	color: #fff;
}

.jrp-node-desc {
	color: var(--jrp-muted);
	margin-top: 4px;
	line-height: 1.5;
}

.jrp-node-extra {
	color: var(--jrp-muted);
	margin-top: 8px;
	display: flex;
	flex-wrap: wrap;
	gap: 6px 14px;
	align-items: center;
}

.jrp-node-extra a:link,
.jrp-node-extra a:visited {
	color: var(--jrp-text-soft);
	font-weight: 600;
}

.jrp-node-extra a:hover {
	color: #fff;
}

.subforumicon {
	display: inline-block;
	margin: 0 4px 0 0;
	color: var(--jrp-muted);
}

.subforum_minion,
.subforum_minioff,
.subforum_miniofflock,
.subforum_miniofflink {
	color: var(--jrp-muted);
}

.jrp-node-stat {
	width: 90px !important;
	text-align: center;
	white-space: nowrap;
}

.jrp-node-stat .jrp-stat-value {
	display: block;
	font-size: 16px;
	color: var(--jrp-text);
	line-height: 1.2;
}

.jrp-node-stat .jrp-stat-label {
	display: block;
	font-size: 11px;
	color: var(--jrp-muted);
	margin-top: 2px;
}

.jrp-node-last {
	width: 260px !important;
	text-align: left !important;
	white-space: normal !important;
}

.jrp-last-title {
	display: block;
	font-weight: 600;
	font-size: 13px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	max-width: 240px;
}

.jrp-last-meta {
	color: var(--jrp-muted);
	font-size: 12px;
	margin-top: 3px;
}

.jrp-last-meta a:link,
.jrp-last-meta a:visited {
	color: var(--jrp-muted);
}

.jrp-last-meta a:hover {
	color: var(--jrp-text);
}

/* ---------- sidebar widgets ---------- */

.jrp-widget {
	background: var(--jrp-surface);
	border: 1px solid var(--jrp-line);
	border-top-color: var(--jrp-line-strong);
	border-radius: var(--jrp-radius);
	margin-bottom: 20px;
	overflow: hidden;
}

.jrp-widget-header {
	display: flex;
	align-items: center;
	gap: 8px;
	background: var(--jrp-bg);
	border-bottom: 1px solid var(--jrp-line);
	padding: 10px 12px;
	font-size: 13px;
	font-weight: 700;
	color: var(--jrp-text);
}

.jrp-widget-header i {
	color: var(--jrp-muted);
}

.jrp-widget-body {
	padding: 12px;
	font-size: 12px;
	line-height: 1.7;
	color: var(--jrp-text);
}

.jrp-widget-body a:link,
.jrp-widget-body a:visited {
	color: var(--jrp-text-soft);
}

.jrp-widget-row {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 10px;
	padding: 6px 0;
	font-size: 12px;
}

.jrp-widget-row span:first-child {
	color: var(--jrp-muted);
}

.jrp-widget-row span:last-child {
	font-weight: 600;
}

.jrp-widget-link {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 12px;
	border-bottom: 1px solid var(--jrp-line);
	font-size: 13px;
	font-weight: 600;
	color: var(--jrp-text-soft) !important;
}

.jrp-widget-link:last-child {
	border-bottom: 0;
}

.jrp-widget-link:hover {
	background: rgba(255, 255, 255, 0.04);
	color: #fff !important;
	text-decoration: none;
}

.jrp-widget-link i {
	width: 30px;
	height: 30px;
	flex: 0 0 30px;
	align-self: flex-start;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: var(--jrp-surface-3);
	color: var(--jrp-accent);
	font-size: 13px;
}

.jrp-widget-link-text {
	min-width: 0;
}

.jrp-widget-link small {
	display: block;
	font-weight: 400;
	font-size: 11px;
	line-height: 1.5;
	color: var(--jrp-muted);
}

/* who's online, rendered into the sidebar */

.wo_title {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	background: var(--jrp-bg);
	border-bottom: 1px solid var(--jrp-line);
	padding: 10px 12px;
	font-family: inherit;
	font-size: 13px;
	font-weight: 700;
	color: var(--jrp-text);
}

.wo_title i {
	color: var(--jrp-muted);
}

.wo_desc {
	display: block;
	margin: 0;
	padding: 12px;
	font-size: 12px;
	line-height: 1.7;
	color: var(--jrp-text);
}

.wo_desc a:link,
.wo_desc a:visited {
	color: var(--jrp-text-soft);
}

/* ---------- footer ---------- */

.footer-distributed {
	position: static;
	bottom: auto;
	background: var(--jrp-topbar);
	border-top: 1px solid var(--jrp-line-strong);
	box-shadow: none;
	font-family: inherit;
	font-size: 13px;
	padding: 0;
	margin-top: 30px;
}

.jrp-footer-cols {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
	padding: 34px 0 30px;
}

.jrp-footer-col {
	flex: 1 1 200px;
	min-width: 180px;
}

.jrp-footer-col h4 {
	margin: 0 0 14px;
	font-size: 13px;
	font-weight: 700;
	color: var(--jrp-text);
}

.jrp-footer-col p {
	margin: 0;
	font-size: 12px;
	line-height: 1.8;
	color: var(--jrp-muted);
}

.jrp-footer-col ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.jrp-footer-col ul li {
	margin-bottom: 8px;
}

.jrp-footer-col ul a:link,
.jrp-footer-col ul a:visited {
	font-size: 12px;
	color: var(--jrp-muted);
}

.jrp-footer-col ul a:hover {
	color: var(--jrp-text);
}

.jrp-footer-bar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 14px;
	border-top: 1px solid var(--jrp-line);
	padding: 16px 0 20px;
}

.footer-distributed .footer-left,
.footer-distributed .footer-right {
	display: block;
	width: auto;
	float: none;
}

.footer-distributed .footer-links {
	margin: 0;
	font-size: 12px;
	color: var(--jrp-muted);
}

.footer-distributed .footer-links a {
	color: var(--jrp-text-soft);
	font-family: inherit !important;
}

.jrp-footer-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
}

.jrp-footer-meta a:link,
.jrp-footer-meta a:visited {
	font-size: 12px;
	color: var(--jrp-muted);
}

.jrp-footer-meta a:hover {
	color: var(--jrp-text);
}

.footer-distributed .footer-icons {
	margin: 0;
	display: flex;
	gap: 8px;
}

.footer-distributed .footer-icons a {
	width: auto;
	height: auto;
	line-height: 1;
	margin: 0;
	border-radius: var(--jrp-radius);
}

/* scroll helpers */

.scrollToTop,
.scrollToDown {
	background: var(--jrp-surface-3);
	border: 1px solid var(--jrp-line-strong);
	color: var(--jrp-text);
	border-radius: var(--jrp-radius);
	right: 20px;
}

.scrollToTop { bottom: 74px; }
.scrollToDown { bottom: 26px; }

.scrollToTop:hover,
.scrollToDown:hover {
	background: var(--jrp-accent);
	color: #fff;
}

/* alerts */

.pm_alert,
.red_alert {
	border-radius: var(--jrp-radius);
	border: 1px solid var(--jrp-line-strong);
}

#mobile_member {
	background: var(--jrp-chrome);
	border-bottom: 1px solid var(--jrp-line);
	width: 100%;
	margin: 0;
	border-radius: 0;
}

/* ---------- posts ---------- */

#posts_container {
	background: var(--jrp-bg);
}

.post {
	background: var(--jrp-surface);
	border: 1px solid var(--jrp-line);
	border-top-color: var(--jrp-line-strong);
	border-radius: var(--jrp-radius);
	margin-bottom: 16px;
}

.post .post_author,
.post.classic .post_author {
	background: var(--jrp-surface-2);
	border-color: var(--jrp-line);
}

.post .post_author div.author_avatar img {
	background: var(--jrp-surface-3) !important;
	border: 1px solid var(--jrp-line);
}

.post .post_author div.author_statistics,
.post .post_meta,
.post .post_head span.post_date,
.post .post_head span.edited_post,
.post .post_head span.edited_post a {
	color: var(--jrp-muted);
}

.post .post_meta a:link,
.post .post_meta a:visited,
.post .post_meta a:hover,
.post .post_meta a:active {
	color: var(--jrp-text-soft);
}

.post_content .signature {
	border-top: 1px solid var(--jrp-line);
	color: var(--jrp-muted);
}

.post_controls {
	background: var(--jrp-surface-2);
	border-top: 1px solid var(--jrp-line);
}

.postbit_buttons > a:link,
.postbit_buttons > a:visited,
.postbit_buttons > a:hover,
.postbit_buttons > a:active {
	color: var(--jrp-text-soft);
}

blockquote {
	background: var(--jrp-surface-2);
	border-left: 3px solid var(--jrp-accent);
	border-radius: 0 var(--jrp-radius) var(--jrp-radius) 0;
}

blockquote cite span {
	color: var(--jrp-muted);
}

.codeblock {
	background: var(--jrp-surface-2);
	border: 1px solid var(--jrp-line);
	border-radius: var(--jrp-radius);
	color: var(--jrp-text);
}

.codeblock .title {
	border-bottom: 1px solid var(--jrp-line);
	color: var(--jrp-muted);
}

/* ---------- editor, popups, dialogs ---------- */

.editor,
.editor_control_bar,
.post .editor_control_bar {
	background: var(--jrp-surface-2);
	border: 1px solid var(--jrp-line);
}

.popup_menu {
	background: var(--jrp-surface-2);
	border: 1px solid var(--jrp-line-strong);
	border-radius: var(--jrp-radius);
	overflow: hidden;
}

.popup_menu .popup_item {
	background: transparent;
	color: var(--jrp-text);
	padding: 8px 12px;
}

.popup_menu .popup_item:hover {
	background: rgba(255, 255, 255, 0.06);
	color: #fff;
}

.pagination a,
.pagination .pagination_current {
	border-radius: var(--jrp-radius);
}

.pagination a {
	background: var(--jrp-surface-3);
	color: var(--jrp-text);
}

.pagination_breadcrumb {
	background: var(--jrp-surface-2);
	border: 1px solid var(--jrp-line);
	border-radius: var(--jrp-radius);
}

.drop_go_page {
	background: var(--jrp-surface-2);
	border: 1px solid var(--jrp-line);
}

.modal,
div.jqi,
div.jqi .jqistate {
	background: var(--jrp-surface-2) !important;
	border-color: var(--jrp-line-strong) !important;
	color: var(--jrp-text);
	border-radius: var(--jrp-radius) !important;
}

div.jqi .jqititle {
	border-bottom: 1px solid var(--jrp-line);
	color: var(--jrp-text);
}

div.jqi .jqimessage {
	color: var(--jrp-text);
}

div.jqi .jqibuttons {
	background: var(--jrp-bg);
	border-top: 1px solid var(--jrp-line);
	border-radius: 0 0 var(--jrp-radius) var(--jrp-radius);
}

div.jqi .jqibuttons button {
	border-left: 1px solid var(--jrp-line);
	color: var(--jrp-muted);
}

div.jqi .jqibuttons button.jqidefaultbutton,
div.jqi .jqibuttons button:hover,
div.jqi .jqibuttons button:focus {
	color: var(--jrp-accent);
}

div.jqi .jqiclose {
	color: var(--jrp-muted);
}

.jGrowl .jGrowl-notification,
.jGrowl .jGrowl-closer {
	background-color: var(--jrp-surface-2);
	border: 1px solid var(--jrp-line-strong);
	border-radius: var(--jrp-radius);
}

/* alert rows that were still light */
.trow_shaded,
.post.unapproved_post,
.trow_deleted,
.post.deleted_post,
.trow_selected,
tr.trow_selected td,
.selectall,
.highlight {
	background: var(--jrp-surface-3);
	color: var(--jrp-text);
	border-color: var(--jrp-line);
}

.trow_selected a:link,
.trow_selected a:visited,
.trow_selected a:hover,
.trow_selected a:active {
	color: var(--jrp-text);
}

.pm_alert {
	background: var(--jrp-surface-2);
	color: var(--jrp-text);
}

.red_alert {
	background: #2a1518;
	color: #f0a3a7;
	border-color: rgba(255, 120, 130, 0.25);
}

div.error {
	background: var(--jrp-surface-2);
	border-top: 2px solid var(--jrp-accent);
	border-bottom: 2px solid var(--jrp-accent);
}

div.error p {
	color: var(--jrp-text) !important;
}

/* ---------- responsive ---------- */

/* The base theme hid the stat/last-post columns and the sidebar below
   1280px. Put them back — they only need to go at tablet width. */
@media (min-width: 961px) {
	#threads, #views, #replies, #lastpost { display: table-cell !important; }
	.side { display: block !important; }
	.star_rating_container, #rating { display: inline-block; }
	.scrollToTop { display: block; bottom: 74px !important; }
	.scrollToDown { display: block; bottom: 26px !important; }
}

@media (max-width: 1100px) {
	.jrp-node-last { width: 210px !important; }
	.jrp-last-title { max-width: 190px; }
}

@media (max-width: 960px) {
	.jrp-layout { flex-direction: column; align-items: stretch; }
	.side { display: block !important; width: 100% !important; flex: 1 1 auto; }
	.jrp-node-last,
	.jrp-node-stat { display: none !important; }
}

@media (max-width: 768px) {
	.side { display: block !important; }
	tr.jrp-node td.jrp-node-icon { display: table-cell !important; }
	.jrp-node-icon { width: 54px !important; padding-left: 12px !important; }
	.forum_status { height: 38px; width: 38px; font-size: 17px; }
	.forum_status i { line-height: 36px; }
	.haut {
		height: auto !important;
		min-height: 0;
		padding: 18px 0;
		text-align: left;
	}
	.haut::before { height: 100%; }
	.jrp-topbar-inner { flex-direction: column; align-items: flex-start; gap: 14px; }
	#logo { font-size: 24px; }
	.useroptions { display: block !important; }
	#menu-deroulant { flex-wrap: wrap; }
	.jrp-nav { position: static; }
	.jrp-navlist { overflow-x: auto; flex-wrap: nowrap; }
	.jrp-navlist > li > a { padding: 12px 14px; white-space: nowrap; }
	#header_block { display: block !important; }
	.jrp-hero { padding: 30px 18px 34px; }
	#hb_title { font-size: 21px; }
	.navigation { display: flex !important; }
	.jrp-crumb-actions { width: 100%; border-top: 1px solid var(--jrp-line); }
	.jrp-crumb-actions .jrp-btn { flex: 1 1 0; justify-content: center; padding: 12px 0; }
	.scrollToTop,
	.scrollToDown { display: none !important; bottom: auto; }
	.jrp-footer-bar { flex-direction: column; align-items: flex-start; }
}

		