/**
 * @package SunRise SMF Theme - L2JMobius MidNight Skin
 * Original theme (c) SychO (M.S) - https://sycho9.github.io
 * Palette retuned to match the L2JMobius main-site dark theme
 * (ink/gold) so the forum and the homepage feel like one product.
*/

/* ----- Shared palette variables (kept local for clarity) -----
   Note: variable names retain the "gold" prefix from the previous palette,
   but they now hold the L2-classic lavender purples so the forum reads as
   a purple cousin of the gold main site rather than a yellow clone of it. */
:root {
	--l2j-gold:        #AA83C6;
	--l2j-gold-bright: #C5A5DC;
	--l2j-gold-deep:   #7D5A99;
	--l2j-ink:         #0F0B14;
	--l2j-ink-soft:    #1A1322;
	--l2j-panel:       #1C1626;
	--l2j-panel-2:     #221A2D;
	--l2j-border:      rgba(170, 131, 198, 0.32);
	--l2j-border-soft: rgba(170, 131, 198, 0.16);
	--l2j-text:        #ECE6D8;
	--l2j-text-dim:    #B5AEA0;
}

/* General Styles.
---------------------- */
body {
	background: var(--l2j-ink);
	scrollbar-color: var(--l2j-gold-deep) var(--l2j-ink-soft);
	color: var(--l2j-text);
}
body, td, th, tr {
	color: var(--l2j-text);
}
h1, h2, h3, h4, h5, h6 {
	color: var(--l2j-gold);
	font-family: 'Cinzel', 'Source Sans Pro', sans-serif;
	letter-spacing: 0.04em;
	font-size: 1em;
	margin: 0;
	padding: 0;
}
a {
	color: var(--l2j-gold);
}
a:hover {
	color: var(--l2j-gold-bright);
}
.poster h4, .poster h4 a {
	color: var(--l2j-text);
}
#upper_section {
	background: linear-gradient(180deg, #0B0810 0%, var(--l2j-ink) 100%);
	border-bottom: 1px solid var(--l2j-border-soft);
}
#top_section {
	background: linear-gradient(180deg, rgba(15, 11, 20, 0.92) 0%, rgba(15, 11, 20, 0.78) 100%);
	box-shadow: 0 0px 2px rgba(0, 0, 0, 0.5);
	border-bottom: 1px solid var(--l2j-border);
	backdrop-filter: blur(10px);
	position: relative;
	z-index: 1;
}
/* Header Graphics */
.mountain {
	background-image: url("../images/custom/sr_midnight.png");
	background-repeat: no-repeat;
}
.mosunmo .sr_star {
	background: var(--l2j-gold);
}
/* Footer Graphics */
footer {
	background: linear-gradient(180deg, rgba(15, 11, 20, 0.85), rgba(8, 6, 12, 0.95));
	border-top: 1px solid var(--l2j-border);
}

/* Backgrounds */
.windowbg, #preview_body, .windowbg2, .windowbg3 {
	background: var(--l2j-panel);
}
.windowbg:not(td):not(tr):not(li), #preview_body:not(td):not(tr):not(li), .windowbg2:not(td):not(tr):not(li), .windowbg3:not(td):not(tr):not(li), .approvebg:not(td):not(tr):not(li), .approvebg2:not(td):not(tr):not(li) {
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.45);
	border: 1px solid var(--l2j-border-soft);
	border-radius: 8px;
}

/* Block Headers */
h3.catbg, h3.catbg2, h3.titlebg, h4.titlebg, h4.catbg, h3.catbg a:link, h3.catbg a:visited, h4.catbg a:link, h4.catbg a:visited, h3.catbg, .table_list tbody.header td, .table_list tbody.header td a, h3.titlebg a, h3.titlebg, h4.titlebg, h4.titlebg a {
	color: var(--l2j-gold);
	background: transparent;
	font-family: 'Cinzel', 'Source Sans Pro', sans-serif;
	letter-spacing: 0.05em;
	text-shadow: 1px 2px 0 rgba(0, 0, 0, 0.6);
}
h3.catbg a:hover, h4.catbg a:hover, .table_list tbody.header td a:hover, h3.titlebg a:hover, h4.titlebg a:hover {
	color: var(--l2j-gold-bright);
}
.titlebg, .titlebg2, tr.titlebg th, tr.titlebg td, tr.titlebg2 td, fieldset legend, tr.titlebg th a:link, tr.titlebg th a:visited, tr.titlebg2 td a:link, tr.titlebg2 td a:visited {
	color: var(--l2j-gold-bright);
}

.roundframe {
	background: var(--l2j-panel);
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.45);
	border: 1px solid var(--l2j-border-soft);
	border-radius: 8px;
}
.roundframe.bi {
	box-shadow: none;
	padding: 0;
	border: none;
}

/* DropMenu */
.dropmenu li a {
	color: var(--l2j-text);
	font-family: 'Cinzel', 'Source Sans Pro', sans-serif;
	letter-spacing: 0.06em;
}
.dropmenu li ul {
	background: var(--l2j-panel);
	border: 1px solid var(--l2j-border);
}
.user .dropmenu li ul {
	overflow: hidden;
	padding: 0;
}
.dropmenu li li a {}
.dropmenu li li a:hover, .dropmenu li li:hover > a {
	color: var(--l2j-ink);
	background: linear-gradient(135deg, var(--l2j-gold) 0%, var(--l2j-gold-deep) 100%);
}
#content_section .dropmenu li a.firstlevel {
	background: transparent;
	padding: 11px 15px;
}
.dropmenu li:hover a.firstlevel {
	color: var(--l2j-gold-bright);
}
#content_section .dropmenu li:hover a.firstlevel {
	background: linear-gradient(135deg, var(--l2j-gold) 0%, var(--l2j-gold-deep) 100%);
	color: var(--l2j-ink);
}
.dropmenu li a.active {
	color: var(--l2j-gold);
}
#content_section .dropmenu li a.active {
	background: linear-gradient(135deg, var(--l2j-gold) 0%, var(--l2j-gold-deep) 100%);
	color: var(--l2j-ink);
}

/* Buttons */
.buttonlist ul li a, .buttonLike, a.buttonLike, a.buttonLike:link, a.buttonLike:visited, table.table_list a.collapse:link, table.table_list a.collapse:visited {
	color: var(--l2j-text);
	background: var(--l2j-panel-2);
	border: 1px solid var(--l2j-border-soft);
	border-radius: 4px;
}
.buttonlist ul li a:hover, ul.quickbuttons li a:hover, .buttonLike.icon_style:hover, .buttonLike:hover, ul.quickbuttons.phoneList li a:hover, a.buttonLike:hover, a.buttonLike:link:hover, a.buttonLike:visited:hover, table.table_list a.collapse:link:hover, table.table_list a.collapse:visited:hover {
	color: var(--l2j-ink);
	background: linear-gradient(135deg, var(--l2j-gold) 0%, var(--l2j-gold-deep) 100%);
	border-color: var(--l2j-gold);
	box-shadow: 0 4px 14px rgba(170, 131, 198, 0.25);
}
.buttonlist.specialBL li a {
	background: transparent;
	border: none;
}

/* Table Styles */
.calendar_today {
	background-color: #1d1530;
}
.table_list tbody.content td.info a.subject {
	color: var(--l2j-gold);
}
.table_list tbody.content td.info a.subject:hover {
	color: var(--l2j-gold-bright);
}
table th, tr.catbg th {
	background: var(--l2j-ink-soft);
	border-bottom: 2px solid var(--l2j-border);
	color: var(--l2j-gold);
}
tr.catbg th a:link, tr.catbg th a:visited, tr.catbg2 td a:link, tr.catbg2 td a:visited {
	text-decoration: none;
}
table td, table tr td, table tbody tr td, table.table_grid td, table td.windowbg2, table td.windowbg {
	background: var(--l2j-panel);
	color: var(--l2j-text);
}
table tr.catbg td {
	background: transparent;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}
td.info .child_boards a {
	background: linear-gradient(135deg, var(--l2j-gold) 0%, var(--l2j-gold-deep) 100%);
	color: var(--l2j-ink);
	border-radius: 3px;
}
td.info .child_boards a:hover {
	background: var(--l2j-ink-soft);
	color: var(--l2j-gold-bright);
}

/* Highlighted text - such as search results. */
.highlight, .highlight td, table.table_grid .highlight td {
	color: var(--l2j-gold-bright) !important;
}

/* A more discreet highlight color, for selected membergroups etc. */
.highlight2, .highlight2 td, table.table_grid .highlight2 td {
	background: rgba(170, 131, 198, 0.12);
}
/* Colors for background of posts requiring approval */
.approvebg, .approvebg2, .approvebg, table .approvebg td, table.table_grid .approvebg td, .approvebg2, table .approvebg2 td, table.table_grid .approvebg2 td {
	background-color: #2a1d12;
}

/* Color for background of *topics* requiring approval */
.approvetbg, table .approvetbg td, table.table_grid .approvetbg td, .approvetbg2, table .approvetbg2 td, table.table_grid .approvetbg2 td {
	background-color: #3f2d18;
}

/* Sticky topics get a different background */
.stickybg, table .stickybg td, table.table_grid .stickybg td, .stickybg2, table .stickybg2 td, table.table_grid .stickybg2 td {
	background-color: #1e1830;
}

/* Locked posts get a different shade, too! */
.lockedbg, table .lockedbg td, table.table_grid .lockedbg td, .lockedbg2, table .lockedbg2 td, table.table_grid .lockedbg2 td {
	background-color: #14101a;
	font-style: italic;
}

/* Few Other Elements */
.news_marquee {
	background: var(--l2j-panel);
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.45);
	border: 1px solid var(--l2j-border-soft);
	border-radius: 8px;
}
.news_marquee > i {
	border-right: 1px solid var(--l2j-border-soft);
}
.inner {
	border-top: 2px solid var(--l2j-border-soft);
}
.description, .description_board, .plainbox {
	background: var(--l2j-panel);
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.45);
	border: 1px solid var(--l2j-border-soft);
	border-radius: 8px;
}
.boardindex_block .quan,
.boardindex_block #userstoday {
	background: var(--l2j-panel);
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.45);
	border: 1px solid var(--l2j-border-soft);
	border-radius: 8px;
}
.ident {
	background: linear-gradient(135deg, var(--l2j-gold) 0%, var(--l2j-gold-deep) 100%);
	color: var(--l2j-ink);
	border-radius: 3px;
}
.threadthis {
	background: rgba(170, 131, 198, 0.18);
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.45);
	border: 1px solid var(--l2j-border);
}
hr, .hrcolor {
	color: var(--l2j-border-soft);
	background-color: var(--l2j-border-soft);
}
.quan hr, .windowbg hr, .window2bg hr {
	background: var(--l2j-border-soft);
}
.poster div.avatar > a {
	background: var(--l2j-ink-soft);
	border: 1px solid var(--l2j-border-soft);
}
.statsbar div.bar {
	background: linear-gradient(90deg, var(--l2j-gold-deep), var(--l2j-gold));
}
.signature, .custom_fields_above_signature {
	border-top: 2px solid var(--l2j-border-soft);
}

.signature {
	color: var(--l2j-text-dim);
}
.information {
	background: rgba(170, 131, 198, 0.16);
	color: var(--l2j-text);
	border: 1px solid var(--l2j-border);
}
.navPages.active {
	background: linear-gradient(135deg, var(--l2j-gold) 0%, var(--l2j-gold-deep) 100%);
	color: var(--l2j-ink);
}
.navPages {
	background: var(--l2j-panel-2);
	border: 1px solid var(--l2j-border-soft);
	color: var(--l2j-text);
}

td .navPages {
	background: var(--l2j-ink-soft);
}
.navPages:hover {
	background: linear-gradient(135deg, var(--l2j-gold) 0%, var(--l2j-gold-deep) 100%);
	color: var(--l2j-ink);
}
div#index_common_stats .layr .blck i {
	background: var(--l2j-panel);
	color: var(--l2j-gold);
}

div#index_common_stats .layr:hover .blck i {
	background: linear-gradient(135deg, var(--l2j-gold) 0%, var(--l2j-gold-deep) 100%);
	color: var(--l2j-ink);
}
div#profile_error, .errorbox {
	border-color: #FF202B;
	color: #ffd5d5;
	background: rgba(212, 55, 55, 0.18);
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.45);
}
div#profile_success {
	color: #c6ffe4;
	background: rgba(32, 255, 171, 0.12);
	border-color: #00EC93;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.45);
}
.list_posts {
	border-top: 2px solid var(--l2j-border-soft);
}

div.forumtitle .title_onclick {
	color: var(--l2j-gold);
	font-family: 'Cinzel', 'Source Sans Pro', sans-serif;
	letter-spacing: 0.164em;
}
/* Auto Suggest */
.auto_suggest_div { background: var(--l2j-panel); border: 1px solid var(--l2j-border); }
.auto_suggest_item, .auto_suggest_item_hover { background-color: var(--l2j-panel); color: var(--l2j-text); }
.auto_suggest_item_hover { background-color: var(--l2j-gold); color: var(--l2j-ink); }

body fieldset {
	border: 2px solid var(--l2j-border-soft);
	border-radius: 6px;
}
div.forumtitle .title_onclick:hover .side_icon {
	background: linear-gradient(135deg, var(--l2j-gold) 0%, var(--l2j-gold-deep) 100%);
}
div.forumtitle .title_onclick:hover .side_icon i {
	color: var(--l2j-ink);
}
div.forumtitle .title_onclick .side_icon i {
	color: var(--l2j-gold);
}
div.forumtitle .side_icon {
	background: var(--l2j-panel-2);
	border: 1px solid var(--l2j-border-soft);
}
div.forumtitle {
	text-shadow: none;
}
.sunmoon {
	background: var(--l2j-gold);
}
.checkmark {
	background-color: var(--l2j-gold);
}
.container:hover input ~ .checkmark {
	background-color: var(--l2j-gold-bright);
}
.container input:checked ~ .checkmark {
	background-color: var(--l2j-gold-deep);
}
span.moderators {
	border-left: 2px solid var(--l2j-gold-deep);
}
.button_submit, .button_reset {
	background: var(--l2j-ink-soft);
	color: var(--l2j-text);
	border: 1px solid var(--l2j-border-soft);
}
.button_submit:hover, .button_reset:hover {
	background: linear-gradient(135deg, var(--l2j-gold) 0%, var(--l2j-gold-deep) 100%);
	color: var(--l2j-ink);
	border-color: var(--l2j-gold);
}
input, button, select, textarea {
	color: var(--l2j-text);
	background: var(--l2j-ink-soft);
	border: 1px solid var(--l2j-border-soft);
}
input:hover, textarea:hover, button:hover, select:hover {
	background: #14101c;
	border-color: var(--l2j-border);
}
input:focus, textarea:focus, button:focus, select:focus {
	background: #1d1726;
	border-color: var(--l2j-gold);
}
div#manage_boards li {
	border-bottom: 2px solid var(--l2j-border-soft);
}
div#manage_boards li#recycle_board {
	background: rgba(170, 131, 198, 0.08);
}
.holiday {
	color: var(--l2j-gold-bright);
}
div#smfAnnouncements dt {
	border-bottom: 2px solid var(--l2j-border-soft);
}
.counter {
	color: var(--l2j-text-dim);
}
.left_admmenu li strong a {
	background: linear-gradient(135deg, var(--l2j-gold) 0%, var(--l2j-gold-deep) 100%);
	color: var(--l2j-ink);
}
.fullscreen .fsInner {
	background: var(--l2j-ink);
}
.inGroup input:focus ~ label, .inGroup input:valid ~ label {
	color: var(--l2j-gold);
}
.inGroup .bar:before, .inGroup .bar:after {
	background: var(--l2j-gold);
}
code.bbc_code {
	background: var(--l2j-ink);
	color: var(--l2j-gold-bright);
	border: 1px solid var(--l2j-border-soft);
}
blockquote.bbc_standard_quote, blockquote.bbc_alternate_quote {
	border-color: var(--l2j-border);
	color: var(--l2j-text);
	background: rgba(170, 131, 198, 0.05);
}
.bbc_table td {
	background: var(--l2j-ink-soft);
}
.dynamic_menu header nav {
	background: var(--l2j-ink);
}
.dynamic_menu header nav .dropmenu li a.active,
header nav .dropmenu > li:hover a.firstlevel,
header nav .dropmenu > li a.firstlevel:active {
	border-left-color: var(--l2j-gold) !important;
	background: unset;
}
.incarn {
	background: var(--l2j-panel-2);
}
@media (max-width: 768px) {
	header nav {
		background: var(--l2j-ink);
	}
	header nav .dropmenu li a.active,
	header nav .dropmenu > li:hover a.firstlevel,
	header nav .dropmenu > li a.firstlevel:active {
		border-left-color: var(--l2j-gold) !important;
		background: unset;
	}
}
header .menuOpener.buttonLike {
	color: var(--l2j-gold);
}
.left_admmenu {
	background: var(--l2j-ink-soft);
	border: 1px solid var(--l2j-border-soft);
}
.activity_stats li div.bar div {
	background: linear-gradient(90deg, var(--l2j-gold-deep), var(--l2j-gold));
}
@media only screen and (max-width: 425px) {
	.phoneList li a, ul.phoneList li a, ul.quickbuttons.phoneList li a {
		background: var(--l2j-ink-soft);
	}
}
#detailedinfo div.content dl, #tracking div.content dl {
	border-color: var(--l2j-border-soft);
}
.poster li .buttonLike {
	background: var(--l2j-ink-soft);
}
.news_marquee i.fa-circle {
	color: var(--l2j-gold);
}
table.table_list tbody.content td.icon img {
	-webkit-filter: invert(1) sepia(1) saturate(2) hue-rotate(5deg);
	filter: invert(1) sepia(1) saturate(2) hue-rotate(5deg);
}
h3.catbg.colpst {
	background: var(--l2j-panel);
	border-radius: 8px 8px 0 0;
}
footer a.buttonLike.toTopSR {
	background: linear-gradient(135deg, var(--l2j-gold) 0%, var(--l2j-gold-deep) 100%);
	color: var(--l2j-ink);
	border: none;
	box-shadow: 0 4px 14px rgba(170, 131, 198, 0.25);
}
div#smileyBox_message, div#bbcBox_message, textarea.editor {
	background: var(--l2j-ink-soft);
	border: 1px solid var(--l2j-border-soft);
}

div#bbcBox_message {
	background: var(--l2j-panel-2);
}
@media (max-width: 768px) {
	#admin_menu .dropmenu li li ul {
		background: var(--l2j-ink-soft);
	}
	#admin_menu .dropmenu li li ul:after {
		border-bottom: 8px solid var(--l2j-ink-soft);
	}
	#admin_menu li a.firstlevel:hover {
		background: var(--l2j-gold-deep) !important;
		color: var(--l2j-ink) !important;
	}
	#admin_menu .dropmenu > li > ul {
		border-top: 4px solid var(--l2j-gold);
		border-bottom: 4px solid var(--l2j-gold);
	}
}

/* vbgamer45's Like Posts Support.
---------------------------------- */
.like_posts_member_info_box {
	background: var(--l2j-panel) !important;
}
.like_posts_member_info {
	border-top: none !important;
	border-bottom: 2px solid transparent !important;
}
.subject_details {
	background-color: var(--l2j-panel) !important;
	color: var(--l2j-text) !important;
	display: none;
	position: absolute;
	padding: 10px;
	border: 1px solid var(--l2j-border-soft) !important;
	border-radius: 4px !important;
	width: auto !important;
}
.like_post_message_data,
.like_post_topic_data,
.like_post_board_data,
.like_post_most_liked_user_data,
.like_post_most_likes_given_user_data,
.like_post_stats_error {
	background: var(--l2j-panel) !important;
	color: var(--l2j-text) !important;
}
.like_link {
	background: linear-gradient(135deg, var(--l2j-gold) 0%, var(--l2j-gold-deep) 100%) !important;
	color: var(--l2j-ink) !important;
}

/* Syntax highlighter, tuned to ink/gold */
.post_wrapper .syntaxhighlighter {
	background-color: var(--l2j-ink) !important;
}
.post_wrapper .syntaxhighlighter .line.alt1 {
	background-color: var(--l2j-ink) !important;
}
.post_wrapper .syntaxhighlighter .line.alt2 {
	background-color: var(--l2j-ink) !important;
}
.post_wrapper .syntaxhighlighter .line.highlighted.alt1, .syntaxhighlighter .line.highlighted.alt2 {
	background-color: rgba(170, 131, 198, 0.10) !important;
}
.post_wrapper .syntaxhighlighter .line.highlighted.number {
	color: var(--l2j-gold-bright) !important;
}
.post_wrapper .syntaxhighlighter table caption {
	color: var(--l2j-gold) !important;
}
.post_wrapper .syntaxhighlighter .gutter {
	color: var(--l2j-text-dim) !important;
}
.post_wrapper .syntaxhighlighter .gutter .line {
	border-right: 3px solid var(--l2j-border) !important;
}
.post_wrapper .syntaxhighlighter .gutter .line.highlighted {
	background-color: var(--l2j-gold-deep) !important;
	color: var(--l2j-ink) !important;
}
.post_wrapper .syntaxhighlighter.printing .line .content {
	border: none !important;
}
.post_wrapper .syntaxhighlighter.collapsed {
	overflow: visible !important;
}
.post_wrapper .syntaxhighlighter.collapsed .toolbar {
	color: var(--l2j-gold) !important;
	background: var(--l2j-ink-soft) !important;
	border: 1px solid var(--l2j-border) !important;
}
.post_wrapper .syntaxhighlighter.collapsed .toolbar a {
	color: var(--l2j-gold) !important;
}
.post_wrapper .syntaxhighlighter.collapsed .toolbar a:hover {
	color: var(--l2j-gold-bright) !important;
}
.post_wrapper .syntaxhighlighter .toolbar {
	color: var(--l2j-ink) !important;
	background: var(--l2j-gold) !important;
	border: none !important;
}
.post_wrapper .syntaxhighlighter .toolbar a {
	color: var(--l2j-ink) !important;
}
.post_wrapper .syntaxhighlighter .toolbar a:hover {
	color: var(--l2j-ink-soft) !important;
}
.post_wrapper .syntaxhighlighter .plain, .syntaxhighlighter .plain a {
	color: var(--l2j-text) !important;
}
.post_wrapper .syntaxhighlighter .comments, .syntaxhighlighter .comments a {
	color: #8a8378 !important;
	font-style: italic;
}
.post_wrapper .syntaxhighlighter .string, .syntaxhighlighter .string a {
	color: #c6ffe4 !important;
}
.post_wrapper .syntaxhighlighter .keyword {
	color: var(--l2j-gold-bright) !important;
}
.post_wrapper .syntaxhighlighter .preprocessor {
	color: #b5aea0 !important;
}
.post_wrapper .syntaxhighlighter .variable {
	color: #ffaa3e !important;
}
.post_wrapper .syntaxhighlighter .value {
	color: #8fcf9b !important;
}
.post_wrapper .syntaxhighlighter .functions {
	color: var(--l2j-gold) !important;
}
.post_wrapper .syntaxhighlighter .constants {
	color: #e0e8ff !important;
}
.post_wrapper .syntaxhighlighter .script {
	font-weight: bold !important;
	color: var(--l2j-gold-bright) !important;
	background-color: none !important;
}
.post_wrapper .syntaxhighlighter .color1, .syntaxhighlighter .color1 a {
	color: #e0e8ff !important;
}
.post_wrapper .syntaxhighlighter .color2, .syntaxhighlighter .color2 a {
	color: var(--l2j-text) !important;
}
.post_wrapper .syntaxhighlighter .color3, .syntaxhighlighter .color3 a {
	color: #ffaa3e !important;
}
