/****************************************************************/
/* Morpheus Template - EffectWeb 2.0
/* Full visual pack: home cards, ranking, login, animations, responsive
/****************************************************************/

@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700&family=Roboto:wght@300;400;500;700&display=swap');

* { margin: 0; padding: 0; outline: none; box-sizing: border-box; }

body {
	background: #050508;
	color: #c8c8d0;
	font-family: 'Roboto', Tahoma, Helvetica, sans-serif;
	font-size: 13px;
	line-height: 1.5;
	min-height: 100vh;
}

a { color: #c9a227; text-decoration: none; transition: color 0.2s ease, opacity 0.2s ease; }
a:hover { color: #e8c547; }
img { max-width: 100%; height: auto; }
p { padding: 5px 0; }

/* ========== LAYOUT ========== */
#down { width: 100%; min-height: 100vh; }
#wrap {
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	position: relative;
	padding: 0 15px;
}

/* ========== HEADER ========== */
#header {
	text-align: center;
	padding: 22px 0 12px;
}
#header::before {
	content: "MORPHEUS";
	display: block;
	font-family: 'Cinzel', serif;
	font-size: 40px;
	font-weight: 700;
	color: #fff;
	text-shadow: 0 0 24px rgba(201,162,39,0.55), 0 2px 4px #000;
	letter-spacing: 6px;
	animation: glowPulse 3s ease-in-out infinite;
}
#header::after {
	content: "THE BEST MU ONLINE WEB  V5.3";
	display: block;
	font-size: 11px;
	color: #9090a0;
	letter-spacing: 3px;
	margin-top: 4px;
	text-transform: uppercase;
}

@keyframes glowPulse {
	0%, 100% { text-shadow: 0 0 20px rgba(201,162,39,0.4), 0 2px 4px #000; }
	50% { text-shadow: 0 0 32px rgba(201,162,39,0.75), 0 2px 4px #000; }
}

/* ========== NAV ========== */
#top_bar { display: none; }

#navigation {
	position: sticky;
	top: 0;
	z-index: 1000;
	width: 100%;
	background: linear-gradient(180deg, rgba(12,12,20,0.98) 0%, rgba(8,8,14,0.96) 100%);
	border-bottom: 1px solid rgba(201,162,39,0.25);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}

.ddsmoothmenu {
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	padding: 0 10px;
}
.ddsmoothmenu ul {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0;
	padding: 0;
}
.ddsmoothmenu ul li { position: relative; float: none !important; }
.ddsmoothmenu ul li a {
	display: block;
	padding: 14px 16px;
	color: #d0d0d8 !important;
	font-size: 12px;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0.6px;
	border-bottom: 2px solid transparent;
	transition: all 0.25s ease;
}
.ddsmoothmenu ul li a:hover,
.ddsmoothmenu ul li a.selected {
	color: #e8c547 !important;
	border-bottom-color: #c9a227;
	background: rgba(201,162,39,0.08);
}
.ddsmoothmenu ul li ul {
	position: absolute;
	top: 100%;
	left: 0;
	background: #12121c;
	border: 1px solid rgba(201,162,39,0.3);
	border-radius: 8px;
	min-width: 180px;
	box-shadow: 0 12px 32px rgba(0,0,0,0.65);
	display: none;
	flex-direction: column;
	z-index: 1001;
	padding: 6px 0;
	animation: fadeSlide 0.2s ease;
}
.ddsmoothmenu ul li:hover > ul { display: flex; }
.ddsmoothmenu ul li ul li a {
	padding: 10px 16px;
	font-size: 12px;
	border-bottom: none;
	text-transform: none;
}

@keyframes fadeSlide {
	from { opacity: 0; transform: translateY(-6px); }
	to { opacity: 1; transform: translateY(0); }
}

/* ========== HERO ========== */
.hero-section {
	position: relative;
	width: 100%;
	height: 360px;
	background:
		radial-gradient(ellipse at 70% 40%, rgba(90,50,140,0.28) 0%, transparent 55%),
		linear-gradient(135deg, #0c0c16 0%, #16102a 45%, #0a0a12 100%);
	border-radius: 14px;
	margin: 18px 0;
	overflow: hidden;
	border: 1px solid rgba(201,162,39,0.18);
	display: flex;
	align-items: center;
	justify-content: center;
	animation: fadeIn 0.6s ease;
}
.hero-section::before {
	content: "";
	position: absolute;
	inset: 0;
	background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23c9a227' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
	opacity: 0.5;
	pointer-events: none;
}
.hero-content { position: relative; z-index: 2; text-align: center; padding: 20px; }
.hero-logo {
	font-family: 'Cinzel', serif;
	font-size: 68px;
	font-weight: 700;
	color: #e8c547;
	text-shadow: 0 0 40px rgba(201,162,39,0.55), 0 4px 12px #000;
	letter-spacing: 10px;
	margin-bottom: 6px;
	animation: scaleIn 0.7s ease;
}
.hero-subtitle {
	color: #a0a0b0;
	font-size: 13px;
	letter-spacing: 5px;
	margin-bottom: 28px;
	text-transform: uppercase;
}
.hero-buttons {
	display: flex;
	gap: 14px;
	justify-content: center;
	flex-wrap: wrap;
	align-items: center;
}
.btn-hero {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 13px 26px;
	border-radius: 8px;
	font-weight: 600;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: 1px;
	cursor: pointer;
	transition: all 0.25s ease;
	border: none;
}
.btn-register {
	background: linear-gradient(180deg, #d4b02e 0%, #a07d15 100%);
	color: #1a1200 !important;
	box-shadow: 0 4px 18px rgba(201,162,39,0.4);
}
.btn-register:hover {
	background: linear-gradient(180deg, #e8c547 0%, #c9a227 100%);
	transform: translateY(-3px);
	box-shadow: 0 8px 24px rgba(201,162,39,0.55);
}
.btn-online {
	background: rgba(30,180,80,0.12);
	border: 1px solid #1eb450;
	color: #3dff7a !important;
	border-radius: 50%;
	width: 72px;
	height: 72px;
	justify-content: center;
	flex-direction: column;
	font-size: 10px;
	padding: 0;
	animation: onlinePulse 2s ease-in-out infinite;
}
.btn-online span { font-size: 18px; font-weight: 700; }
@keyframes onlinePulse {
	0%, 100% { box-shadow: 0 0 0 0 rgba(30,180,80,0.35); }
	50% { box-shadow: 0 0 0 10px rgba(30,180,80,0); }
}
.btn-download {
	background: linear-gradient(180deg, #2a4a8a 0%, #1a3060 100%);
	color: #fff !important;
	box-shadow: 0 4px 18px rgba(40,80,160,0.35);
}
.btn-download:hover {
	background: linear-gradient(180deg, #3a5aaa 0%, #2a4a8a 100%);
	transform: translateY(-3px);
}
.season-timer {
	position: absolute;
	top: 18px;
	right: 22px;
	background: rgba(0,0,0,0.55);
	border: 1px solid rgba(201,162,39,0.35);
	border-radius: 10px;
	padding: 10px 16px;
	text-align: center;
	z-index: 3;
	backdrop-filter: blur(6px);
}
.season-timer .label {
	font-size: 9px;
	color: #a0a0b0;
	text-transform: uppercase;
	letter-spacing: 1.2px;
}
.season-timer .time {
	font-size: 18px;
	font-weight: 700;
	color: #e8c547;
	font-family: 'Cinzel', serif;
}

@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes scaleIn { from { opacity: 0; transform: scale(0.92); } to { opacity: 1; transform: scale(1); } }

/* ========== CONTENT GRID ========== */
#content {
	display: grid;
	grid-template-columns: 1fr 310px;
	gap: 18px;
	margin-top: 8px;
	align-items: start;
}
#conteudo {
	grid-column: 1;
	min-width: 0;
	background: transparent;
	min-height: 400px;
}
#sidebar {
	grid-column: 2;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

/* ========== CARDS / BOXES ========== */
.sidebox, .card, .col2, blockquote {
	background: linear-gradient(180deg, rgba(22,22,34,0.96) 0%, rgba(12,12,20,0.98) 100%);
	border: 1px solid rgba(201,162,39,0.16);
	border-radius: 12px;
	padding: 16px;
	box-shadow: 0 4px 20px rgba(0,0,0,0.4);
	transition: border-color 0.25s ease, box-shadow 0.25s ease;
}
.col2:hover, .sidebox:hover {
	border-color: rgba(201,162,39,0.28);
}

h3, .sidebox h3, #sidebar h3 {
	font-family: 'Cinzel', serif;
	font-size: 13px;
	font-weight: 700;
	color: #e8c547;
	text-transform: uppercase;
	letter-spacing: 1.4px;
	padding: 0 0 10px 0;
	margin: 0 0 10px 0;
	border-bottom: 1px solid rgba(201,162,39,0.22);
	background: none;
}
h4 {
	font-family: 'Cinzel', serif;
	font-size: 15px;
	color: #e8c547;
	margin-bottom: 0;
}

.sidebox ul { list-style: none; }
.sidebox ul li {
	padding: 7px 0;
	border-bottom: 1px solid rgba(255,255,255,0.04);
	font-size: 12px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.sidebox ul li:last-child { border-bottom: none; }
.colr, .sidebox .colr, b.colr { color: #e8c547 !important; font-weight: 600; }

/* ========== HOME CARDS ========== */
.home-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
	margin-bottom: 16px;
}
.home-card {
	background: linear-gradient(145deg, rgba(26,26,40,0.96) 0%, rgba(14,14,24,0.98) 100%);
	border: 1px solid rgba(201,162,39,0.18);
	border-radius: 12px;
	overflow: hidden;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
	animation: cardIn 0.5s ease backwards;
}
.home-card:nth-child(1) { animation-delay: 0.05s; }
.home-card:nth-child(2) { animation-delay: 0.12s; }
.home-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 28px rgba(0,0,0,0.5), 0 0 20px rgba(201,162,39,0.08);
	border-color: rgba(201,162,39,0.4);
}
@keyframes cardIn {
	from { opacity: 0; transform: translateY(12px); }
	to { opacity: 1; transform: translateY(0); }
}

.card-img {
	height: 120px;
	position: relative;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}
.card-img-play { background: linear-gradient(135deg, #1a2040 0%, #0d1528 50%, #1a1030 100%); }
.card-img-donate { background: linear-gradient(135deg, #2a1a10 0%, #1a1008 50%, #2a1810 100%); }
.card-img-siege { background: linear-gradient(135deg, #1a1528 0%, #0e0c18 50%, #1a1020 100%); }
.card-img-war { background: linear-gradient(135deg, #102028 0%, #0a1218 50%, #101820 100%); }

.card-img::before {
	content: "";
	position: absolute;
	inset: 0;
	background: radial-gradient(circle at 50% 30%, rgba(201,162,39,0.12) 0%, transparent 60%);
}
.card-img-overlay {
	position: absolute;
	bottom: 10px;
	left: 12px;
	z-index: 2;
}
.card-badge {
	display: inline-block;
	padding: 3px 10px;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
	background: rgba(201,162,39,0.9);
	color: #1a1200;
	border-radius: 4px;
}
.badge-vip { background: rgba(100,60,200,0.9); color: #fff; }

.card-body { padding: 14px 16px 16px; }
.card-title {
	font-family: 'Cinzel', serif;
	font-size: 15px;
	color: #e8c547;
	margin-bottom: 6px;
}
.card-desc {
	font-size: 12px;
	color: #8a8a9a;
	line-height: 1.45;
	margin-bottom: 12px;
	min-height: 36px;
}

.btn-card {
	display: inline-block;
	padding: 8px 16px;
	border-radius: 6px;
	font-size: 11px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.8px;
	transition: all 0.2s ease;
	border: none;
	cursor: pointer;
}
.btn-gold {
	background: linear-gradient(180deg, #d4b02e 0%, #a07d15 100%);
	color: #1a1200 !important;
}
.btn-gold:hover {
	background: linear-gradient(180deg, #e8c547 0%, #c9a227 100%);
	transform: translateY(-1px);
}
.btn-blue {
	background: linear-gradient(180deg, #2a4a8a 0%, #1a3060 100%);
	color: #fff !important;
}
.btn-blue:hover {
	background: linear-gradient(180deg, #3a5aaa 0%, #2a4a8a 100%);
	transform: translateY(-1px);
}

/* Section headers */
.section-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 12px;
	padding-bottom: 8px;
	border-bottom: 1px solid rgba(201,162,39,0.2);
}
.section-header h4 { margin: 0; }
.section-link {
	font-size: 11px;
	color: #a0a0b0;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}
.section-link:hover { color: #e8c547; }

/* Rank tabs on home */
.rank-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 12px;
}
.rank-tabs a {
	padding: 5px 12px;
	font-size: 11px;
	background: rgba(201,162,39,0.1);
	border: 1px solid rgba(201,162,39,0.25);
	border-radius: 20px;
	color: #c9a227;
	transition: all 0.2s;
}
.rank-tabs a:hover {
	background: rgba(201,162,39,0.25);
	color: #e8c547;
}

/* ========== RANKING PAGE ========== */
.ranking-page { animation: fadeIn 0.4s ease; }
.ranking-header { margin-bottom: 16px; }
.ranking-sub { font-size: 12px; color: #808090; margin-top: 4px; }
.ranking-filters { margin-bottom: 16px; }
.ranking-form .filter-row {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: flex-end;
}
.filter-group { flex: 1; min-width: 140px; }
.filter-group label {
	display: block;
	font-size: 11px;
	color: #9090a0;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin-bottom: 6px;
}
.filter-btn { flex: 0 0 auto; }

.ranking-result table,
#Ranking_Result table,
#MixRankings table {
	width: 100%;
	border-collapse: collapse;
	border-radius: 8px;
	overflow: hidden;
}
.ranking-result th,
#Ranking_Result th,
#MixRankings th,
table th {
	background: rgba(201,162,39,0.14);
	color: #e8c547;
	font-weight: 600;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	padding: 12px 10px;
	text-align: left;
	border-bottom: 1px solid rgba(201,162,39,0.3);
}
.ranking-result td,
#Ranking_Result td,
#MixRankings td,
table td {
	padding: 10px;
	border-bottom: 1px solid rgba(255,255,255,0.04);
	font-size: 12px;
}
.ranking-result tr:hover td,
#Ranking_Result tr:hover td,
#MixRankings tr:hover td,
table tr:hover td {
	background: rgba(201,162,39,0.06);
}

/* ========== LOGIN MODAL ========== */
.login-modal-box {
	background: linear-gradient(180deg, rgba(18,18,28,0.98) 0%, rgba(10,10,16,0.99) 100%);
	border: 1px solid rgba(201,162,39,0.3);
	border-radius: 14px;
	padding: 28px 24px;
	max-width: 360px;
	margin: 10px auto;
	box-shadow: 0 16px 40px rgba(0,0,0,0.6);
	animation: scaleIn 0.35s ease;
}
.login-modal-box h2 {
	font-family: 'Cinzel', serif;
	color: #e8c547;
	text-align: center;
	margin-bottom: 22px;
	font-size: 22px;
	letter-spacing: 2px;
}
.login-form .form-group { margin-bottom: 14px; }
.login-form .form-group label {
	display: block;
	font-size: 11px;
	color: #9090a0;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	margin-bottom: 6px;
}
.form-row-check {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 16px;
	font-size: 12px;
}
.remember-me { color: #a0a0b0; cursor: pointer; }
.remember-me input { margin-right: 6px; vertical-align: middle; }
.link-recovery { font-size: 11px; color: #c9a227; }
.btn-login-submit {
	width: 100%;
	padding: 12px;
	background: linear-gradient(180deg, #d4b02e 0%, #a07d15 100%);
	color: #1a1200;
	border: none;
	border-radius: 8px;
	font-weight: 700;
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: 1px;
	cursor: pointer;
	transition: all 0.2s;
}
.btn-login-submit:hover {
	background: linear-gradient(180deg, #e8c547 0%, #c9a227 100%);
	transform: translateY(-1px);
	box-shadow: 0 4px 16px rgba(201,162,39,0.4);
}
.login-msg { text-align: center; margin-top: 12px; font-size: 12px; color: #e08080; }
.login-footer-links {
	text-align: center;
	margin-top: 18px;
	padding-top: 14px;
	border-top: 1px solid rgba(255,255,255,0.06);
	font-size: 12px;
	color: #808090;
}
.login-footer-links a { margin-left: 6px; font-weight: 600; }

/* Forms general */
input[type="text"], input[type="password"], input[type="email"], select, textarea {
	background: rgba(8,8,14,0.9);
	border: 1px solid rgba(201,162,39,0.28);
	border-radius: 8px;
	padding: 11px 14px;
	color: #e0e0e8;
	font-size: 13px;
	width: 100%;
	transition: border-color 0.2s, box-shadow 0.2s;
}
input:focus, select:focus, textarea:focus {
	border-color: #c9a227;
	box-shadow: 0 0 0 3px rgba(201,162,39,0.12);
}
button, .button, input[type="submit"] {
	background: linear-gradient(180deg, #d4b02e 0%, #a07d15 100%);
	color: #1a1200;
	border: none;
	border-radius: 8px;
	padding: 10px 20px;
	font-weight: 600;
	font-size: 12px;
	cursor: pointer;
	text-transform: uppercase;
	letter-spacing: 0.5px;
	transition: all 0.2s;
}
button:hover, .button:hover, input[type="submit"]:hover {
	background: linear-gradient(180deg, #e8c547 0%, #c9a227 100%);
	transform: translateY(-1px);
}

/* ========== FOOTER ========== */
#footer {
	margin-top: 40px;
	padding: 0;
	background: linear-gradient(180deg, rgba(12,12,20,0.95) 0%, #050508 100%);
	border-top: 1px solid rgba(201,162,39,0.2);
	border-radius: 12px 12px 0 0;
	overflow: hidden;
}
.footer-grid {
	display: grid;
	grid-template-columns: 1.4fr 1fr 1fr 1fr;
	gap: 24px;
	padding: 32px 24px 24px;
}
.footer-col h5 {
	font-family: 'Cinzel', serif;
	font-size: 12px;
	color: #e8c547;
	letter-spacing: 1.5px;
	margin-bottom: 12px;
	text-transform: uppercase;
}
.footer-col a {
	display: block;
	color: #808090;
	font-size: 12px;
	padding: 4px 0;
	transition: color 0.2s, padding-left 0.2s;
}
.footer-col a:hover {
	color: #e8c547;
	padding-left: 4px;
}
.footer-logo {
	font-family: 'Cinzel', serif;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	letter-spacing: 3px;
	margin-bottom: 8px;
}
.footer-brand p { color: #707080; font-size: 12px; padding: 2px 0; }
.footer-copy { margin-top: 8px !important; }
.footer-bottom {
	padding: 14px 24px;
	border-top: 1px solid rgba(255,255,255,0.05);
	text-align: center;
	font-size: 11px;
	color: #606070;
}

.clear { clear: both; }

/* ========== RESPONSIVE ========== */
@media (max-width: 980px) {
	#content { grid-template-columns: 1fr; }
	#conteudo { grid-column: 1; order: 1; }
	#sidebar { grid-column: 1; order: 2; }
	.hero-logo { font-size: 42px; letter-spacing: 4px; }
	.hero-section { height: 300px; }
	.home-grid { grid-template-columns: 1fr; }
	.footer-grid { grid-template-columns: 1fr 1fr; gap: 20px; }
	.season-timer { top: 10px; right: 10px; padding: 8px 12px; }
	.season-timer .time { font-size: 14px; }
}
@media (max-width: 600px) {
	#header::before { font-size: 28px; letter-spacing: 3px; }
	.ddsmoothmenu ul li a { padding: 10px 10px; font-size: 10px; }
	.hero-logo { font-size: 32px; letter-spacing: 2px; }
	.hero-section { height: 280px; border-radius: 10px; }
	.hero-buttons { gap: 10px; }
	.btn-register, .btn-download { padding: 10px 16px; font-size: 11px; }
	.btn-online { width: 60px; height: 60px; }
	.footer-grid { grid-template-columns: 1fr; text-align: center; }
	.ranking-form .filter-row { flex-direction: column; }
	.filter-group { width: 100%; }
}
@media (max-width: 400px) {
	#wrap { padding: 0 8px; }
	.hero-logo { font-size: 26px; }
}

/* Scrollbar */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #0a0a10; }
::-webkit-scrollbar-thumb { background: #2a2a3a; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #c9a227; }

/* Compat */
#Panel, #Servers, #Web_Poll, #StaffList { font-size: 12px; }
.online-status {
	display: inline-block;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #1eb450;
	margin-right: 6px;
	box-shadow: 0 0 6px #1eb450;
}

/* Castle Siege / War - bloques individuales a ancho completo */
.card-siege-full,
.card-war-full {
	width: 100%;
	overflow: visible;
}
.card-siege-full .siege-content,
.card-siege-full blockquote,
.card-war-full blockquote {
	overflow: visible;
	max-height: none;
	word-wrap: break-word;
	overflow-wrap: break-word;
}
.card-siege-full .section-header,
.card-war-full .section-header {
	align-items: center;
}
.card-siege-full .section-header .card-badge,
.card-war-full .section-header .card-badge {
	margin-left: auto;
}
/* Tablas o contenido interno del siege sin recorte */
.card-siege-full table,
.siege-content table {
	width: 100% !important;
	max-width: 100%;
	table-layout: auto;
}
.card-siege-full img,
.siege-content img {
	max-width: 100%;
	height: auto;
}

/* ========== THEME LIGHT (data-theme="light") ========== */
html[data-theme="light"] body {
	background: #e8eaf0;
	color: #2a2a35;
}
html[data-theme="light"] #navigation {
	background: linear-gradient(180deg, rgba(255,255,255,0.96) 0%, rgba(240,242,248,0.95) 100%);
	border-bottom-color: rgba(100,80,20,0.2);
}
html[data-theme="light"] .ddsmoothmenu ul li a { color: #333 !important; }
html[data-theme="light"] .ddsmoothmenu ul li a:hover { color: #a07d15 !important; }
html[data-theme="light"] .sidebox,
html[data-theme="light"] .col2,
html[data-theme="light"] .home-card,
html[data-theme="light"] blockquote {
	background: linear-gradient(180deg, #fff 0%, #f4f5f9 100%);
	border-color: rgba(0,0,0,0.08);
	box-shadow: 0 2px 12px rgba(0,0,0,0.06);
}
html[data-theme="light"] h3,
html[data-theme="light"] h4,
html[data-theme="light"] .card-title { color: #8a6b10; }
html[data-theme="light"] .hero-section {
	background: linear-gradient(135deg, #d8dce8 0%, #c5c0d8 50%, #e0e4f0 100%);
	border-color: rgba(0,0,0,0.1);
}
html[data-theme="light"] .hero-logo { color: #8a6b10; text-shadow: 0 2px 8px rgba(0,0,0,0.15); }
html[data-theme="light"] #footer {
	background: #f0f2f8;
	border-top-color: rgba(0,0,0,0.1);
}
html[data-theme="light"] .footer-col a { color: #555; }
html[data-theme="light"] input[type="text"],
html[data-theme="light"] input[type="password"],
html[data-theme="light"] select,
html[data-theme="light"] textarea {
	background: #fff;
	border-color: rgba(0,0,0,0.15);
	color: #222;
}
html[data-theme="light"] #header::before { color: #1a1a22; text-shadow: none; }

#theme-toggle-btn {
	position: fixed;
	bottom: 18px;
	right: 18px;
	z-index: 9999;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	border: 1px solid rgba(201,162,39,0.4);
	background: rgba(15,15,25,0.9);
	color: #e8c547;
	cursor: pointer;
	font-size: 18px;
	box-shadow: 0 4px 16px rgba(0,0,0,0.4);
	transition: transform 0.2s;
}
#theme-toggle-btn:hover { transform: scale(1.08); }
html[data-theme="light"] #theme-toggle-btn {
	background: #fff;
	color: #8a6b10;
}

/* ========== DESKTOP FIX (PC content + menu scroll) ========== */
@media screen and (min-width: 961px) {
	#navigation {
		overflow: visible !important;
		overflow-x: visible !important;
		overflow-y: visible !important;
		height: auto !important;
		max-height: none !important;
	}
	.ddsmoothmenu {
		overflow: visible !important;
		height: auto !important;
		flex-wrap: wrap;
	}
	.ddsmoothmenu ul {
		flex-wrap: wrap !important;
		overflow: visible !important;
		height: auto !important;
		width: 100% !important;
		float: none !important;
	}
	.ddsmoothmenu ul li {
		float: none !important;
		display: inline-block !important;
		vertical-align: top;
	}
	/* Submenus must not force scroll on bar */
	.ddsmoothmenu ul li ul {
		position: absolute !important;
		top: 100% !important;
		left: 0 !important;
		z-index: 2000 !important;
	}

	#content {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) 310px !important;
		gap: 18px !important;
		width: 100% !important;
		overflow: visible !important;
		float: none !important;
		clear: both !important;
	}
	#conteudo {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		width: 100% !important;
		min-width: 0 !important;
		min-height: 420px !important;
		overflow: visible !important;
		float: none !important;
		position: relative !important;
		z-index: 1;
	}
	#sidebar {
		display: flex !important;
		visibility: visible !important;
		width: 310px !important;
		max-width: 100%;
		float: none !important;
		position: relative !important;
		z-index: 1;
	}
	#wrap {
		overflow: visible !important;
		width: 100% !important;
		max-width: 1280px !important;
	}
	/* Clear legacy float layout from Default ddsmoothmenu.css */
	#down, #content:after {
		content: "";
		display: table;
		clear: both;
	}
}

/* Always: content area must not be clipped */
#conteudo,
#conteudo > * {
	max-width: 100%;
}
#conteudo .col2,
#conteudo .home-card,
#conteudo .home-grid {
	display: block;
}
#conteudo .home-grid {
	display: grid !important;
}


/* ========== Legibilidad panel / contenido ========== */
#conteudo,
#conteudo p,
#conteudo td,
#conteudo th,
#conteudo li,
#conteudo span,
#conteudo label,
#conteudo blockquote,
#conteudo table {
	color: #d8d8e0 !important;
}
#conteudo a { color: #e8c547 !important; }
#conteudo input[type="text"],
#conteudo input[type="password"],
#conteudo input[type="email"],
#conteudo select,
#conteudo textarea {
	background: #12121c !important;
	color: #f0f0f5 !important;
	border: 1px solid rgba(201,162,39,0.35) !important;
}
#conteudo .error-box { color: #ffb4ac !important; background: rgba(231,76,60,0.15) !important; }
#conteudo .success-box { color: #a8f0c6 !important; background: rgba(46,204,113,0.12) !important; }
#conteudo .warning-box { color: #ffd89a !important; background: rgba(243,156,18,0.12) !important; }
#conteudo .info-box { color: #a8d4ff !important; background: rgba(60,120,200,0.12) !important; }
#conteudo h1, #conteudo h2, #conteudo h3, #conteudo h4 {
	color: #e8c547 !important;
}

/* ========== Panel usuario: legibilidad + personajes ========== */
#conteudo .heading.colr,
#conteudo h4.heading {
	color: #e8c547 !important;
	font-size: 16px;
	margin-bottom: 12px;
}
#conteudo blockquote {
	color: #d8d8e0 !important;
	background: rgba(0,0,0,0.25);
	border: 1px solid rgba(201,162,39,0.2);
	border-radius: 10px;
	padding: 14px 16px;
}
#conteudo table {
	width: 100%;
	border-collapse: collapse;
	color: #e4e4ec !important;
	background: transparent;
}
#conteudo table td,
#conteudo table th {
	color: #e4e4ec !important;
	border: 1px solid rgba(201,162,39,0.18) !important;
	padding: 8px 10px !important;
	vertical-align: top;
}
#conteudo table th {
	background: rgba(201,162,39,0.12) !important;
	color: #e8c547 !important;
}
#conteudo a { color: #e8c547 !important; }
#conteudo input[type=text],
#conteudo input[type=password],
#conteudo select,
#conteudo textarea {
	background: #12121c !important;
	color: #f0f0f5 !important;
	border: 1px solid rgba(201,162,39,0.35) !important;
	padding: 8px 10px !important;
	border-radius: 6px !important;
}
.ew-char-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin: 12px 0;
}
.ew-char-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 140px;
	padding: 12px 10px;
	background: linear-gradient(180deg, #1a1a28, #12121c);
	border: 1px solid rgba(201,162,39,0.3);
	border-radius: 12px;
	text-decoration: none !important;
	transition: transform 0.15s, border-color 0.15s;
}
.ew-char-card:hover {
	transform: translateY(-3px);
	border-color: #c9a227;
}
.ew-char-img {
	width: 120px;
	height: 120px;
	object-fit: cover;
	border-radius: 8px;
	border: 1px solid rgba(201,162,39,0.4);
	background: #0a0a10;
}
.ew-char-name {
	margin-top: 8px;
	font-weight: 600;
	color: #e8c547 !important;
	font-size: 13px;
	text-align: center;
}
.ew-char-lvl {
	font-size: 11px;
	color: #a0a0b0 !important;
	margin-top: 2px;
}
#paneluser_bar .block,
#paneluser_bar .blockhead,
#paneluser_bar .blockbody {
	color: #d8d8e0;
}
#paneluser_bar a { color: #e8c547 !important; }
